Чем же так хорош vsftpd? Во первых, он прост в настройки в отличии от ProFTPd. Во вторых в нем меньше потенциальных угроз безопасности, по сравнению с другими фтп серверами, а в третьих – недаром его используют таки гранды как RedHat, SUSE, OpenBSD.
Итак, ставим сабж
Код: Выделить всё
cd /usr/ports/ftp/vsftpd
make install clean
[X] rc_ng
[X] vsftpd_ssl
[X] pidfile
И дожидаемся окончания сборки (надеюсь она будет успешной, в противном случае предстоит debug )
Далее нужно создать сертификат:
Код: Выделить всё
mkdir /usr/local/etc/vsftpd
openssl req -x509 -nodes -days 730 -newkey rsa:1024 -keyout /usr/local/etc/vsftpd/vsftpd.pem -out /usr/local/etc/vsftpd/vsftpd.pem
ee /usr/local/etc/vsftpd.conf
Вот мой конфиг:
Код: Выделить всё
write_enable=YES
dirmessage_enable=YES
#nopriv_user=ftpsecure
ftpd_banner="Welcome to LOCAL FTP service."
#ls_recurse_enable=YES
#deny_email_enable=YES
#banned_email_file=/etc/vsftpd.banned_emails
#hide_ids=YES
local_enable=YES
local_umask=022
# помещаем локальных юзеров в их домашние каталоги, иначе пользователю будет доступен корень системы.
chroot_local_user=YES
chroot_list_enable=NO
#secure_chroot_dir=/usr/local/www/data
#chroot_list_enable=YES
#local_max_rate=7200
#anonymous_enable=YES
#anon_world_readable_only=YES
#anon_upload_enable=YES
#anon_umask=022
#anon_mkdir_write_enable=YES
#anon_other_write_enable=YES
#chown_uploads=YES
#chown_username=whoever
#anon_max_rate=7200
# настройки журналирования
syslog_enable=YES
log_ftp_protocol=YES
xferlog_enable=YES
#vsftpd_log_file=/var/log/vsftpd.log
xferlog_std_format=YES
xferlog_file=/var/log/xferlog
#dual_log_enable=YES
#setproctitle_enable=YES
connect_from_port_20=YES
#idle_session_timeout=600
#data_connection_timeout=120
#async_abor_enable=YES
#ascii_upload_enable=YES
#ascii_download_enable=YES
#pasv_enable=NO
pam_service_name=vsftpd
#тип запуска
listen=YES #standalonе
background=YES #в фоне
session_support=YES # врубаем сесии
# настройки SSL
ssl_enable=YES
ssl_sslv2=YES
ssl_sslv3=YES
ssl_tlsv1=YES
allow_anon_ssl=YES
force_local_data_ssl=NO
force_local_logins_ssl=NO
rsa_cert_file=/usr/local/etc/vsftpd/vsftpd.pem
Код: Выделить всё
vsftpd_enable="YES"
Код: Выделить всё
/usr/local/etc/rc.d/vsftpd start