Установка и настройка FTP-сервера VSFTPD в Porteus
Готовая сборка vsftpd-3.0.3-x86_64-3.xzm (для Porteus 3.2.2 и 4.0) и vsftpd-3.0.3-x86_64-5.xzm (для Porteus 4.0+)FTP сервер vsftpd (Very Secure FTP daemon) является одним из надежнейших и простых в настройке ftp серверов. Это оптимальный выбор для большинства пользователей, которым нужен ftp сервер.
Открываем терминал и вводим команды (окно с терминалом не закрываем, так как он нам понадобится в дальнейшем)Заметка. Включает в себя необходимые, нижеприведенные изменения vsftpd.conf, однако требуется внести Ваши значения параметров в следующие директивы:после чего, произведите необходимые настройки для VSFTPD (создание пользователя, пароля пользователя и т.д.), не касающиеся vsftpd.conf (см. ниже)Code: Select all
# Включаем пассивный режим работы для vsftpd-сервера # Указываем диапазон портов для пассивного режима pasv_enable=Yes pasv_max_port=<max> pasv_min_port=<min> # Установите значение YES, если вы хотите использовать имя хоста (в отличие от IP-адреса) в опции pasv_address pasv_addr_resolve=YES pasv_address=<domain name>
Code: Select all
su
toor
pmod -u
pmod -m vsftpd
# модуль будет загружен в /tmp
находим:
Code: Select all
# Allow anonymous FTP? (Beware - allowed by default if you comment this out).
anonymous_enable=YES
Code: Select all
# Allow anonymous FTP? (Beware - allowed by default if you comment this out).
anonymous_enable=NO
Code: Select all
# Uncomment this to allow local users to log in.
#local_enable=YES
Code: Select all
# Uncomment this to allow local users to log in.
local_enable=YES
Code: Select all
# Uncomment this to enable any form of FTP write command.
#write_enable=YES
Code: Select all
# Uncomment this to enable any form of FTP write command.
write_enable=YES
Code: Select all
# Default umask for local users is 077. You may wish to change this to 022,
# if your users expect that (022 is used by most other ftpd's)
local_umask=022
Code: Select all
# Default umask for local users is 077. You may wish to change this to 022,
# if your users expect that (022 is used by most other ftpd's)
local_umask=002
Code: Select all
# You may specify an explicit list of local users to chroot() to their home
# directory. If chroot_local_user is YES, then this list becomes a list of
# users to NOT chroot().
# (Warning! chroot'ing can be very dangerous. If using chroot, make sure that
# the user does not have write access to the top level directory within the
# chroot)
#chroot_local_user=YES
Code: Select all
# You may specify an explicit list of local users to chroot() to their home
# directory. If chroot_local_user is YES, then this list becomes a list of
# users to NOT chroot().
# (Warning! chroot'ing can be very dangerous. If using chroot, make sure that
# the user does not have write access to the top level directory within the
# chroot)
#«запирать» локальных пользователей в домашнем каталоге
chroot_local_user=YES
# разрешаем использовать домашние каталоги с правом на запись
allow_writeable_chroot=YES
Code: Select all
# When "listen" directive is enabled, vsftpd runs in standalone mode (rather
# than from inetd) and listens on IPv4 sockets. To use vsftpd in standalone
# mode rather than with inetd, change the line below to 'listen=YES'
# This directive cannot be used in conjunction with the listen_ipv6 directive.
listen=NO
Code: Select all
# When "listen" directive is enabled, vsftpd runs in standalone mode (rather
# than from inetd) and listens on IPv4 sockets. To use vsftpd in standalone
# mode rather than with inetd, change the line below to 'listen=YES'
# This directive cannot be used in conjunction with the listen_ipv6 directive.
listen=YES
поэтому, добавляем в самый конец файла vsftpd.conf следующие строки:В целях безопасности, Slackware не использует PAM аутентификацию с использованием логина и пароля взятого с Activ Directory (AD)
Code: Select all
# Эта опция имеет эффект только для не-PAM сборок vsftpd.
# Если выключена, то vsftpd не будет проверять оболочку локального пользователя в /etc/shells
check_shell=NO
# Директива, разрешающая список пользователей которым нужно открыть доступ к FTP, и путь до этого списка соответственно.
userlist_enable=YES
userlist_file=/etc/vsftpd.allow_list
# Директива, запрещающая список пользователей, которым закрыт доступ к FTP,
# в нашем случае запрещен вход всех пользователей кроме тех что указаны в /etc/vsftpd.allow_list
userlist_deny=NO
# Включаем пассивный режим работы для vsftpd-сервера
# Указываем диапазон портов для пассивного режима
pasv_enable=Yes
pasv_max_port=<max>
pasv_min_port=<min>
# Установите значение YES, если вы хотите использовать имя хоста (в отличие от IP-адреса) в опции pasv_address
pasv_addr_resolve=YES
pasv_address=<domain name>
Создаем xzm модуль VSFTPD и активируем его в /porteus/modules.
Далее, в терминале:
Заметка. Указываем директорию /home/ftp (можете задать свою директорию - эта директория будет служить FTP каталогом, куда будут загружаться и от куда будут скачиваться файлы и т.д.), создаём пользователя ftpuser (можете задать другое имя пользователя которое Вам больше нравится, но только в нижнем регистре) с основной группой users (данную, основную группу оставляем как есть)
Code: Select all
useradd -d /home/ftp -m -g users -s /dev/null ftpuser
Code: Select all
passwd ftpuser
Заметка. Если Вы ранее указали другую директорию, то укажите её вместо /home/ftp
Code: Select all
chmod -R 775 /home/ftp
chown -R ftpuser:users /home/ftp
Code: Select all
echo 'ftpuser' > /etc/vsftpd.allow_list
Code: Select all
echo -e "if [ -x /usr/sbin/vsftpd ]; then\\n echo \"Starting vsftpd: /usr/sbin/vsftpd\" && sleep 5 && /usr/sbin/vsftpd &\\nfi" >> /etc/rc.d/rc.local
dir2xzm /tmp/usm/vsftpd /tmp/usm/vsftpd.xzm
cp /tmp/usm/vsftpd.xzm /mnt/sdb1/porteus/modules
activate /mnt/sdb1/porteus/modules/vsftpd.xzm
запускаем vsftpd командойЗаметка. sdb1 это раздел с установленным Porteus. У Вас может быть другой раздел с Porteus.
Code: Select all
/usr/sbin/vsftpd &
Заметка. Для завершения процесса vsftpd и последующего запуска vsftpd (метод перезапуск vsftpd), приведу пример:Code: Select all
ps aux | grep [v]sftpd # находим номер процесса /usr/sbin/vsftpd, например это 5194 kill 5194 /usr/sbin/vsftpd &