SFTP c MySecureShell в Debian Etch
Метки: Debian | ftp
Среда, 10 декабря 2008 г.
Просмотров: 11542
Подписаться на комментарии по 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. Вам рассчитают стоимость продвижения сайта, дадут грамотную консультацию.
А если сайта у вас нет, тогда вам сюда -- розробка сайтів
Еще записи по теме
- Как обезопасить ваше интернет-подключение с помощью SSH
- Настройка OpenSSH на работу через IPv6
- Добавляем дату и время в историю команд bash
- Смертоносные команды Linux
- Семь незаменимых бесплатных программ для администраторов сети
- Как удалить дубликаты строк в файле?
- Небольшой совет - как отучить Linux запоминать пароль при использовании sudo
Оставьте комментарий!