SFTP c MySecureShell в Debian Etch
Метки: Debian | ftp
Среда, 10 декабря 2008 г.
Просмотров: 2718
Подписаться на комментарии по RSS
Это руководство описывает как установить и настроить MySecureShell на Debian Etch. MySecureShell это SFTP сервер, основанный на OpenSSH и который может быть сконфигурирован самыми разнообразными способами, к примеру с подддержкой пользователей, изолированных в своих домашних директориях или с ограничением по полосе пропускания. MySecureShell делает SFTP доступным для пользователей, которые не имеют шелл доступа.
1 Предварительное замечание
Я тестировал все на сервере под управлением Debian Etch с IP адресом 192.168.0.100 и существующим пользователем ashley. Я создам второго пользователя felix и покажу как оба пользователя могут использовать SFTP с MySecureShell.
2 Установка MySecureShell
MySecureShell имеет не очень много требований, ставим для начала их:
apt-get install libssl0.9.7 ssh openssh-server
После этого, как показано ниже, скачиваем и устанавливаем MySecureShell:
cd /tmp wget http://ovh.dl.sourceforge.net/sourceforge/mysecureshell/mysecureshell_0.95_i386.deb dpkg -i mysecureshell_0.95_i386.deb
Это все.... MySecureShell установлен и запущен
3 Подготавливаем пользователей
Прежде чем пользователи смогут использовать SFTP в MySecureShell, мы должны изменить их шелл на /bin/MySecureShell. Для существующего пользователя (ashley), мы делаем такой финт:
usermod -s /bin/MySecureShell ashley
В случае создания нового пользователя с шеллом /bin/MySecureShell shell (felix), команда будет выглядеть так:
useradd -m -s /bin/MySecureShell felix
Теперь с помощью SFTP клиента подключаемся к серверу. Я использую WinSCP.
Заполните имя хоста, имя пользователя и пароль; в номере порта укажите порта 22(это порт SSH); в качестве протокола укажите SFTP или SFTP (allow SCP fallback). Затем нажмите кнопку Login:
После этого вы попадете в свою домашнюю директорию на сервере:
4 Настраиваем MySecureShell
MySecureShell работает отлично и в конфигурации по умолчанию, однако если вы можете захотеть изменить некоторые вещи. Конфигурационный файл /etc/ssh/sftp_config
очень хорошо закомментирован, так что я не буду вдаваться в подробности и объяснять его. Вы можете указать полосы пропускания, изолированных пользователей, максимальное количество коннектов, причем вы можете делать все глобально или для определенных групп пользователей или для определенных IP адресов.
vi /etc/ssh/sftp_config
|
## MySecureShell Configuration File ##
#Default rules for everybody
<Default>
GlobalDownload 0 #total speed download for all clients
# o -> bytes k -> kilo bytes m -> mega bytes
GlobalUpload 0 #total speed download for all clients (0 for unlimited)
Download 0 #limit speed download for each connection
Upload 0 #unlimit speed upload for each connection
StayAtHome true #limit client to his home
VirtualChroot true #fake a chroot to the home account
LimitConnection 10 #max connection for the server sftp
LimitConnectionByUser 1 #max connection for the account
LimitConnectionByIP 2 #max connection by ip for the account
Home /home/$USER #overrite home of the user but if you want you can use
# environment variable (ie: Home /home/$USER)
IdleTimeOut 300 #(in second) deconnect client is idle too long time
ResolveIP true #resolve ip to dns
# IgnoreHidden true #treat all hidden files as if they don't exist
# DirFakeUser true #Hide real file/directory owner (just change displayed permissions)
# DirFakeGroup true #Hide real file/directory group (just change displayed permissions)
# DirFakeMode 0400 #Hide real file/directory rights (just change displayed permissions)
#Add execution right for directory if read right is set
# HideFiles "^(lost\+found|public_html)$" #Hide file/directory which match
#this extented POSIX regex
HideNoAccess true #Hide file/directory which user has no access
# MaxOpenFilesForUser 20 #limit user to open x files on same time
# MaxWriteFilesForUser 10 #limit user to x upload on same time
# MaxReadFilesForUser 10 #limit user to x download on same time
DefaultRights 0640 0750 #Set default rights for new file and new directory
# PathDenyFilter "^\." #deny upload of directory/file which match this extented POSIX regex
ShowLinksAsLinks false #show links as their destinations
# ConnectionMaxLife 1d #limits connection lifetime to 1 day
Charset "ISO-8859-15" #set charset of computer
# GMTTime +1 #set GMT Time (change if necessary)
</Default>
[...]
|
После измененений, перезапускаем MySecureShell:
/etc/init.d/mysecureshell restart
Постовой
Решили увеличить отдачу от сайти и продвинуть его по ключевым запросам. Обращайтесь к помощи профи с rcso.ru. Вам рассчитают стоимость продвижения сайта, дадут грамотную консультацию.
А если сайта у вас нет, тогда вам сюда -- розробка сайтів



Оставьте комментарий!