Я буду использовать vsftpd как ftp-сервер. Все изменения я сделал в /etc/vsftpd.conf.
Вот эти изменения (по данным digitalocean):
anonymous_enable=NO
write_enable=YES
local_enable=YES
chroot_local_user=YES
Подробнее здесь:https://www.digitalocean.com/community/articles/how-to-configure-vsftpd-to-use-ssl-tls-on-an-ubuntu-vps
Я также создал файл сертификата SSL. (не обязательно, но рекомендуется)
Все еще получаю:
500 OOPS: не удалось привязать прослушивающий сокет IPv4
Примечание:
pam_service_name=vsftpd
Нетстат:
netstat -pan|grep :21;
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN 30694/vsftpd
решение1
Скорее всего, у вас есть /etc/xinetd.d/ftp
enabled
AND, указывающий на /usr/sbin/vsftpd
и в /etc/vsftpd.conf
вас есть listen=YES
.
Просто измените его на listen=NO
. Это listen=YES
для автономного режима, если вы хотите, чтобы vsftpd был всегда активен, то вам придется отключить его в xinetd
конфигурации.
решение2
вам может понадобиться строка LISTEN: LISTEN=YES
ОБНОВЛЕНИЕ: Из вашего результата netstat следует, что vsftpd на самом деле запущен и связан с 0.0.0.0:21. То есть порт (21) на всех интерфейсах. Это может быть предупреждением о том, что один из интерфейсов не принимает запрос на привязку. Можете ли вы протестировать ftp-сервер? Вы получаете список каталогов?
ОБНОВЛЕНИЕ 2: Активирован ли SELinux? Можете ли вы попробовать войти как пассивный и как активный и проверить, работает ли один из них?... У этих вещей есть история с ftp. Еще одна вещь, на которую следует обратить внимание, это то, принадлежит ли домашний каталог учетной записи пользователя, используемой для входа, на самом деле пользователю. vsftpd очень чувствителен, когда дело касается разрешений.