Błąd FTP na serwerze Ubuntu

1

Nadal uczę się Ubuntu 16.04. Oto moja sytuacja z niepowodzeniem ftp. Dwa miesiące temu zainstalowałem vsftpd na moim serwerze Unbuntu i kiedy pracowałem nad nim w zeszłą niedzielę, wszystko było w porządku. Ale teraz próbuję połączyć się z ftp, ale otrzymuję wynik „Odrzucono połączenie”, w ten sposób:

ftp: connect to address ::1: Connection refused
Trying 127.0.0.1...
ftp: connect: Connection refused  

Oto, co mówi / var / log / syslog:

Jun 27 19:36:22 ubuntu systemd[1]: Starting vsftpd FTP server...
Jun 27 19:36:22 ubuntu systemd[1]: Started vsftpd FTP server.
Jun 27 19:36:22 ubuntu systemd[1]: vsftpd.service: Main process exited, code=exited, status=2/INVALIDARGUMENT
Jun 27 19:36:22 ubuntu systemd[1]: vsftpd.service: Unit entered failed state.
Jun 27 19:36:22 ubuntu systemd[1]: vsftpd.service: Failed with result 'exit-code'.  

Szukałem rozwiązań online i próbowałem, ale bez dobrego wyniku. Sprawdziłem także iptables, są one puste w ten sposób:

Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination  

... co oznacza, że ​​nic nie jest trzymane w iptables, prawda? ... a to jest mój vsftpd.conf :

listen=YES
listen_ipv6=YES
anonymous_enable=YES
local_enable=YES
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO
guest_enable=YES
guest_username=workers
user_config_dir=/etc/vsftpd/userconfig/
user_sub_token=$USER
local_root=/home/work/$USER
hide_id=YES
allow_writeable_chroot=YES
local_umask=022
pasv_enable=YES
pasv_min_port=64000
pasv_max_port=65535   

Naprawdę nie mam pojęcia, co jest nie tak z vsftpd na moim serwerze.

gabi
źródło
Jakiego polecenia użyłeś do uruchomienia fsftpd i czy jest coś w /var/log/vsftpd.log lub / var / log / syslog? Również spójrz na athttps: //unix.stackexchange.com/questions/181436/vsftpd-wont-start#310010 - może musisz wykorzenić root: root /etc/vsftp.conf
davidgo
sudo service vsftpd restartPrzez większość czasu używam do ponownego uruchomienia vsftpd, również sudo /etc/init.d/vsftpd restartdo ponownego uruchomienia. Tak, sprawdziłem ten link, zanim opublikowałem tutaj moje pytanie, ponieważ to nie pomaga. A uprawnienie do /etc/vsftpd.conf to root root.
gabi

Odpowiedzi:

1

Zainstalowałem vsftpdz twoim plikiem konfiguracyjnym, aby odtworzyć na moim Ubuntu 16.04. Zwykle, gdy nie masz wystarczającej ilości informacji w dziennikach po uruchomieniu usługi, możesz spróbować wykonać plik wykonywalny bezpośrednio. W tym przypadku daje to:

$ vsftpd
500 OOPS: unrecognised variable in config file: hide_id

Które można naprawić, usuwając wiersz zawierający „hide_id”.

Ponowne uruchomienie, napotkasz inny problem:

$ vsftpd
500 OOPS: run two copies of vsftpd for IPv4 and IPv6

Które można naprawić, usuwając „listen_ipv6 = YES” lub „listen = YES”.

Gohu
źródło
Dziękuję, Gohu! Zadziałało! W sumie chodzi o plik konfiguracyjny etc/vsftpd.conf. Na początku komentowałem hide_idi zmieniłem listen=YESna listen=NO, ale to mnie otacza 500 OOPS: could not bind listening IPv6 socket. Potem wróciłem do słuchania = TAK i skomentowałem listen_ipv6=YES. Po ponownym uruchomieniu vstpd, $ ftp localhostchoć nadal pokazywał ftp: connect to address ::1: Connection refused Trying 127.0.0.1..., ale to, co następuje, podnieca mnie: Connected to localhost. 220 (vsFTPd 3.0.3)i Name (localhost:netlab): . Doceniam to!
gabi