Puncte:0

Nu se poate conecta la vsftpd pe portul 21 când se încearcă să stabilească o conexiune FTP

drapel us

am instalat vsftpd pe mine Linux Ubuntu 21.04 exemplu folosind următoarele:

sudo apt-get install vsftpd

Am activat FTP în mine ufw firewall folosind următoarele:

sudo ufw permit ftp

Ale mele /etc/vsftpd.conf fișierul conține următoarele:

# Exemplu de fișier de configurare /etc/vsftpd.conf
#
# Valorile implicite compilate în setări sunt destul de paranoice. Acest fișier exemplu
# slăbește puțin lucrurile, pentru a face demonul ftp mai utilizabil.
# Vă rugăm să vedeți vsftpd.conf.5 pentru toate compilatele implicite.
#
# CITIȚI ACEST: Acest fișier exemplu NU este o listă exhaustivă de opțiuni vsftpd.
# Vă rugăm să citiți pagina de manual vsftpd.conf.5 pentru a vă face o idee completă despre vsftpd
# capabilități.
#
#
# A alerga singur? vsftpd poate rula fie dintr-un inetd, fie ca independent
# daemon a pornit de la un initscript.
asculta=DA
#
# Această directivă permite ascultarea pe socket-uri IPv6. Implicit, ascultare
# pe adresa IPv6 „orice” (::) va accepta conexiuni de la ambele IPv6
# și clienții IPv4. Nu este necesar să ascultați atât pe IPv4, cât și pe IPv6
# prize.Dacă vrei asta (poate pentru că vrei să asculți anume
# adrese), atunci trebuie să rulați două copii ale vsftpd cu două configurații
# fișiere.
listen_ipv6=NU
#
# Permiteți FTP anonim? (Dezactivat implicit).
anonymous_enable=NU
#
# Anulați comentariul pentru a permite utilizatorilor locali să se conecteze.
local_enable=DA
#
# Anulați comentariul pentru a activa orice formă de comandă de scriere FTP.
write_enable=DA
#
# Umask implicit pentru utilizatorii locali este 077. Poate doriți să schimbați acest lucru la 022,
# dacă utilizatorii dvs. se așteaptă la asta (022 este folosit de majoritatea celorlalți ftpd-uri)
#local_umask=022
#
# Anulați comentariul pentru a permite utilizatorului FTP anonim să încarce fișiere. Doar asta
# are efect dacă activarea de scriere globală de mai sus este activată. De asemenea, vei face
# evident că trebuie să creați un director care poate fi scris de către utilizatorul FTP.
#anon_upload_enable=DA
#
# Anulați comentariul dacă doriți ca utilizatorul FTP anonim să poată crea
# directoare noi.
#anon_mkdir_write_enable=DA
#
# Activați mesajele directoare - mesaje date utilizatorilor de la distanță atunci când aceștia
# intra într-un anumit director.
dirmessage_enable=DA
#
# Dacă este activat, vsftpd va afișa liste de directoare cu ora
# în fusul orar local. Implicit este afișarea GMT. The
# de ori returnate de comanda MDTM FTP sunt, de asemenea, afectate de acest lucru
# opțiune.
use_localtime=DA
#
# Activați înregistrarea încărcărilor/descărcărilor.
xferlog_enable=DA
#
# Asigurați-vă că conexiunile de transfer PORT provin din portul 20 (ftp-data).
connect_from_port_20=DA
#
# Dacă doriți, puteți aranja ca fișierele anonime încărcate să fie deținute
# un alt utilizator. Notă! Utilizarea „rădăcină” pentru fișierele încărcate nu este
# recomandat!
#chown_uploads=DA
#chown_username=oricine
#
# Puteți suprascrie unde merge fișierul jurnal dacă doriți. Valoarea implicită este afișată
# de mai jos.
#xferlog_file=/var/log/vsftpd.log
#
# Dacă doriți, puteți avea fișierul jurnal în format standard ftpd xferlog.
# Rețineți că locația implicită a fișierului jurnal este /var/log/xferlog în acest caz.
#xferlog_std_format=DA
#
# Puteți modifica valoarea implicită pentru expirarea unei sesiuni inactive.
#idle_session_timeout=600
#
# Puteți modifica valoarea implicită pentru expirarea unei conexiuni de date.
#data_connection_timeout=120
#
# Este recomandat să definiți pe sistemul dvs. un utilizator unic pe care
# serverul ftp poate fi folosit ca utilizator total izolat și neprivilegiat.
#nopriv_user=ftpsecure
#
# Activați acest lucru și serverul va recunoaște cererile ABOR asincrone. Nu
# recomandat pentru securitate (codul nu este banal). Neactivându-l,
# cu toate acestea, poate încurca clienții FTP mai vechi.
#async_abor_enable=DA
#
# În mod implicit, serverul va pretinde că permite modul ASCII, dar de fapt îl va ignora
# cererea. Activați opțiunile de mai jos pentru ca serverul să facă de fapt ASCII
# deformarea fișierelor în modul ASCII.
# Atenție că pe unele servere FTP, suportul ASCII permite o refuz de serviciu
# atac (DoS) prin comanda „SIZE /big/file” în modul ASCII. vsftpd
# a prezis acest atac și a fost întotdeauna în siguranță, raportând dimensiunea
# fișier brut.
# Deformarea ASCII este o caracteristică oribilă a protocolului.
#ascii_upload_enable=DA
#ascii_download_enable=DA
#
# Puteți personaliza complet șirul bannerului de conectare:
#ftpd_banner=Bine ați venit la serviciul blah FTP.
#
# Puteți specifica un fișier cu adrese de e-mail anonime interzise. Aparent
# util pentru combaterea anumitor atacuri DoS.
#deny_email_enable=DA
# (urmează implicit)
#banned_email_file=/etc/vsftpd.banned_emails
#
# Puteți restricționa utilizatorii locali la directoarele lor de acasă. Consultați întrebările frecvente pentru
# riscurile posibile în aceasta înainte de a utiliza chroot_local_user sau
# chroot_list_enable de mai jos.
chroot_local_user=DA
#
# Puteți specifica o listă explicită de utilizatori locali pentru a efectua chroot() în casa lor
# director. Dacă chroot_local_user este YES, atunci această listă devine o listă de
# utilizatori să NU chroot().
# (Atenție! Chroot-ul poate fi foarte periculos. Dacă folosiți chroot, asigurați-vă că
# utilizatorul nu are acces de scriere la directorul de nivel superior din
# chroot)
#chroot_local_user=DA
#chroot_list_enable=DA
# (urmează implicit)
#chroot_list_file=/etc/vsftpd.chroot_list
#
# Puteți activa opțiunea „-R” în ls-ul încorporat. Aceasta este dezactivată de
# implicit pentru a evita ca utilizatorii de la distanță să poată provoca I/O excesive pe mare
# site-uri. Cu toate acestea, unii clienți FTP stricat, cum ar fi „ncftp” și „oglindă”, presupun
# prezența opțiunii „-R”, deci există un caz puternic pentru activarea acesteia.
#ls_recurse_enable=DA
#
# Personalizare
#
# Unele dintre setările lui vsftpd nu se potrivesc cu aspectul sistemului de fișiere
# Mod implicit.
#
# Această opțiune ar trebui să fie numele unui director care este gol. De asemenea
# directorul nu ar trebui să poată fi scris de către utilizatorul ftp. Acest director este folosit
# ca închisoare securizată chroot() uneori, vsftpd nu necesită un sistem de fișiere
# acces.
secure_chroot_dir=/var/run/vsftpd/empty
#
# Acest șir este numele serviciului PAM pe care îl va folosi vsftpd.
pam_service_name=vsftpd
#
# Această opțiune specifică locația certificatului RSA de utilizat pentru SSL
# conexiuni criptate.
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NU

#
# Anulați comentariul pentru a indica faptul că vsftpd utilizează un sistem de fișiere utf8.
#utf8_filesystem=DA

user_sub_token=$USER
local_root=/home/$USER/ftp_user

userlist_enable=DA
userlist_file=/etc/vsftpd.user_list
userlist_deny=NU

Mi-am adăugat contul de utilizator dorit ftpuser la /etc/vsftpd.user_list. Următoarele sunt conținute în rezultatul netstat -tanp:

tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN 939/docker-proxy
tcp 0 0 0.0.0.0:21 0.0.0.0:* ASCULTĂ 585614/vsftpd
tcp 0 0 127.0.0.53:53 0.0.0.0:* ASCULTĂ 582461/systemd-reso
tcp 0 0 0.0.0.0:22 0.0.0.0:* ASCULTĂ 581200/sshd: /usr/s

Cele de mai sus pare să indice că vsftpd ascultă pe portul 21 așa cum ar trebui. Cu toate acestea, nu mă pot conecta la el folosind WinSCP pe portul 21 cu protocolul FTP. Cu toate acestea, ceea ce este ciudat este că mă pot conecta pe portul 22 cu protocolul SFTP.

De asemenea, ar trebui să menționez că am avut anterior vsftpd instalat și configurat pentru SFTP. am facut sudo apt-get purge vsftpd și de atunci am încercat să reinstalez.

Editați | × Chiar și atunci când fug ftp localhost Primesc mesajul de eroare: ftp: connect: Conexiune a expirat

Aceștia sunt pașii pe care i-am făcut acum.

Instalați VSFTPD

actualizare sudo apt
sudo apt install vsftpd
starea serviciului sudo vsftpd

Configurați firewall

sudo ufw permit 20/tcp
sudo ufw permit 21/tcp
sudo ufw permit 40000:50000/tcp
sudo ufw permit 990/tcp
sudo ufw permit openssh
sudo ufw enable
sudo ufw status

Creați ftpuser și directoare

sudo adduser ftpuser
sudo mkdir /home/ftpuser/ftp
sudo chown nobody:nogroup /home/ftpuser/ftp
sudo chmod a-w /home/ftpuser/ftp
sudo mkdir /home/ftpuser/ftp/files
sudo chown ftpuser:ftpuser /home/ftpuser/ftp/fișiere

Configurați configurația VSFTPD

sudo nano /etc/vsftpd.conf

Cu următoarele intrări

asculta=NU
listen_ipv6=DA
anonymos_enable=NU
local_enable=DA
write_enable=DA
local_mask=022
dirmessage_enable=DA
use_localtime=DA
xferlog_enable=DA
connect_from_port_20=DA
chroot_local_user=DA
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
force_dot_files=DA
pasv_min_port=400000
pasv_max_port=500000

user_sub_token=$USER
local_root=/home/$USER/ftp

Reporniți VSFTPD pentru ca modificările să intre în vigoare

sudo systemctl restart vsftpd.service

Încercați să vă conectați cu Filezilla și WinSCP. Nici unul nu a funcționat. Cu toate acestea, la fel ca și anterior, am putut să mă conectez prin SFTP pe portul 22.

ce fac greșit?

Puncte:0
drapel us

am reinstalat Ubuntu 21.04 și a urmat pașii din acest tutorial: https://www.digitalocean.com/community/tutorials/how-to-set-up-vsftpd-for-a-user-s-directory-on-ubuntu-18-04, și funcționează conform așteptărilor.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.