Несколько недель я не использую FTP-сервер, и теперь я пытался подключиться, но он возвращает эту ошибку. Я сделал "yum update", но не знаю, что еще изменилось с тех пор.
Когда я использую команду "proftpd -nd10", она возвращает:
...
2018-12-07 03:22:37,259 server.example.com proftpd[5938] 127.0.0.1: Failed binding to ::, port 21: Address already in use
2018-12-07 03:22:37,259 server.example.com proftpd[5938] 127.0.0.1: Check the ServerType directive to ensure you are configured correctly
2018-12-07 03:22:37,259 server.example.com proftpd[5938] 127.0.0.1: Check to see if inetd/xinetd, or another proftpd instance, is already using ::, port 21
2018-12-07 03:22:37,259 server.example.com proftpd[5938] 127.0.0.1: Unable to start proftpd; check logs for more details
Когда я использую команду netstat -putan | grep: 21, она возвращает:
tcp6 0 0 :::21 :::* LISTEN 5937/proftpd: (acce
Если я остановлю службу proftpd, порт 21 станет доступным. Если начать снова, порт снова стал использоваться.
Вот мой конфиг:
ServerType standalone
ServerName "server.example.com"
ServerIdent on "FTP Server ready."
ServerAdmin hostmaster@example.com
DefaultServer on
# VRootEngine on
DefaultRoot ~ !adm
# VRootAlias /etc/security/pam_env.conf etc/security/pam_env.conf
Port 21
PassivePorts 30000 35000
AuthPAMConfig proftpd
AuthOrder mod_auth_pam.c* mod_auth_unix.c
UseReverseDNS off
User nobody
Group nobody
MaxInstances 20
UseSendfile off
LogFormat default "%h %l %u %t \"%r\" %s %b"
LogFormat auth "%v [%P] %h %t \"%r\" %s"
ExtendedLog /var/log/proftpd/auth.log AUTH auth
#<IfDefine TLS>
TLSEngine on
TLSRequired on
TLSRSACertificateFile /etc/pki/tls/certs/proftpd/server.example.com.crt
TLSRSACertificateKeyFile /etc/pki/tls/certs/proftpd/server.example.com.key
TLSCertificateChainFile /etc/pki/tls/certs/proftpd/server.example.com-intermediate.crt
TLSCipherSuite ALL:!ADH:!DES
TLSOptions NoCertRequest NoSessionReuseRequired
TLSProtocol SSLv23
TLSVerifyClient off
#TLSRenegotiate ctrl 3600 data 512000 required off timeout 300
TLSLog /var/log/proftpd/tls.log
<IfModule mod_tls_shmcache.c>
TLSSessionCache shm:/file=/var/run/proftpd/sesscache
</IfModule>
#</IfDefine>
<IfDefine DYNAMIC_BAN_LISTS>
LoadModule mod_ban.c
BanEngine on
BanLog /var/log/proftpd/ban.log
BanTable /var/run/proftpd/ban.tab
BanOnEvent MaxLoginAttempts 2/00:10:00 01:00:00
BanControlsACLs all allow user ftpadm
</IfDefine>
<Global>
Umask 022
AllowOverwrite yes
<Limit ALL SITE_CHMOD>
AllowAll
</Limit>
</Global>
Конечно, я сменил пароль пользователя, но ничего не изменилось.
В proftpd.conf я прокомментировал строку:
AuthOrder mod_auth_pam.c* mod_auth_unix.c
перезапустил службу proftpd и теперь работает.