FTP-сервер vsFTPd на Gentoo

Краткая инструкция по установке и быстрой настройке FTP-сервера vsFTPd на Gentoo GNU/Linux.

Устанавливаем vsFTPd

# emerge --ask vsftpd

Затем добавляем пользователей, которые будут членами группы ftp

# useradd -g ftp -s /sbin/nologin -d /home/user1 -m user1
# passwd user1
# useradd -g ftp -s /sbin/nologin -d /home/user2 -m user2
# passwd user2

Теперь копируем файл примера конфигурации vsFTPd

# cp /etc/vsftpd/vsftpd.conf.example /etc/vsftpd/vsftpd.conf

открываем его

# nano /etc/vsftpd/vsftpd.conf

если анонимный доступ не требуется, закомментируем строку

anonymous_enable="YES"

раскомментируем следующие строки:

local_enable=YES
write_enable=YES
local_umask=022
xferlog_file=/var/log/vsftpd.log
chroot_local_user=YES

добавим ещё такую строку:

allow_writeable_chroot=YES

Затем подключим SSL-сертификат. Для этого запустим несколько команд, которые сгенерирует сертификат для vsFTPd

# openssl genrsa -out /etc/ssl/private/vsftpd.key
# openssl req -new -key /etc/ssl/private/vsftpd.key -out /etc/ssl/certs/vsftpd.csr

здесь необходимо будет ввести некоторые данные:

Country Name (2 letter code) [AU]:RU
State or Province Name (full name) [Some-State]:MSK
Locality Name (eg, city) []:Moscow
Organization Name (eg, company) [Internet Widgits Pty Ltd]:YourCompany
Organizational Unit Name (eg, section) []:IT Dept
Common Name (e.g. server FQDN or YOUR name) []:Your Public IP
Email Address []:it@yourcompany.com

и наконец

# openssl x509 -req -days 1461 -in /etc/ssl/certs/vsftpd.csr -signkey /etc/ssl/private/vsftpd.key -out /etc/ssl/certs/vsftpd.pem

После этого откроем файл /etc/vsftpd/vsftpd.conf

# nano /etc/vsftpd/vsftpd.conf

и в нём пропишем параметры сертификата:

rsa_cert_file=/etc/ssl/certs/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.key
ssl_enable=YES

Запускаем службу vsftpd и включаем её в автозагрузку

# rc-service vsftpd start
# rc-update add vsftpd default

и теперь к серверу можно подключиться любым FTP-клиентом.

Добавить комментарий

Ваш адрес email не будет опубликован.