Lembre-se de comentar
listen=YES
no seu arquivo vsftpd.conf
para que você não execute o vsftpd
no modo autônomo
Corrigimos o problema no meu caso.
Eu tenho que configurar um servidor FTP na minha máquina. Eu instalei o vsftpd usando o comando:
sudo apt-get install vsftpd
Em seguida, editei o arquivo de configuração vsftpd.conf
no local /etc
. O arquivo contém:
#Set the server to run in standalone mode
listen=YES
#Enable anonymous access
local_enable=NO
anonymous_enable=YES
#Disable write access
write_enable=NO
#Set root directory for anon connections
anon_root=/var/ftp
#Limit retrieval rate
anon_max_rate=2048000
#Enable logging user login and file transfers. /var/log/vsftpd.log
xferlog_enable=YES
#Set interface and port
listen_address=192.120.43.250
listen_port=21
O endereço IP 192.120.43.250 é o eth0 do meu servidor. Quando eu corro o comando
sudo vsftpd /etc/vsftpd.conf
Eu recebo o erro:
500 OOPS: could not bind listening IPv4 socket
Para verificar o que estava sendo executado na porta 21, executei o comando:
sudo netstat -tulpn
E vimos que o id do processo vsftpd era 29383 , então eu emiti o comando:
sudo killserver 29383
e verifique novamente. O vsftpd
ainda estava lá, mas com um PID diferente. Executando o comando:
sudo killall vsftpd
e
sudo killall -9 vsftpd
Faz a mesma coisa. Eu já tentei reinstalar. Alguém sabe o que está acontecendo e como consertá-lo?
Você está recebendo este erro provavelmente porque o xinetd ftp está sendo executado.
O procedimento mencionado abaixo resolverá os seguintes erros:
A) 500 OOPS: não foi possível ligar o socket IPv4, por vsftpd
B) Desligar o servidor imediatamente após a conexão, por ncftpget
Siga o procedimento mencionado abaixo para corrigir o erro:
Para ver qual serviço ftp está em uso, use:
$ lsof -i | grep ftp (Become root and run this command)
Para parar o xinetd:
$ sudo service xinetd stop
Depois de interromper o xinetd, reinicie seu serviço vsftpd digitando:
$ /etc/init.d/vsftpd restart (Become root and run this command)
Verifique também o vsftpd.conf com este:
listen=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/private/vsftpd.pem
No meu caso, o erro ocorreu porque o processo estava em execução.
Tente o seguinte:
$ sudo service vsftpd restart
O serviço deve reiniciar com os novos parâmetros de configuração, se houver.
Talvez no modo autônomo, você tenha iniciado o serviço vsftpd. E você só precisa matar o processo vsftpd, não precisa alterar o arquivo de configuração.