Wat is FTP?
FTP (File Transfer Protocol) is een client-server netwerkprotocol waarmee gebruikers bestanden kunnen uitwisselen van en naar externe computers.
FTP gebruikt platte tekst om gegevens over te dragen en toegang te krijgen tot gegevens. Er zijn verschillende open-source FTP servers beschikbaar voor het Linux besturingssysteem platform. De meest gebruikte FTP servers zijn VSFTPD, ProFTPD en PureFTPD. Het FTP-protocol gebruikt poortnummer 21 voor verbinding en poort 20 voor gegevensoverdracht. In de passieve modus worden extra poorten gebruikt.
in deze tutorial zullen we leren hoe VSFTPD in te stellen en te configureren. Het is zeer veilig en stabiel en beschikbaar in de CentOS 8 pakket repository.
installeer VSFTP FTP-Server
om het vsftpd pakket op CentOS 8 te installeren, open een terminal of maak verbinding met uw server door SSH als root gebruiker en typ het volgende commando in:
# dnf install –y vsftpd
zodra het pakket geïnstalleerd is, start en activeer je de vsftpd service met het volgende commando:
# systemctl enable vsftpd# systemctl start vsftpd
neem een kopie van het originele configuratiebestand /etc/vsftpd/vsftpd.conf door het volgende commando te typen:
# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bk
Bewerk nu het configuratiebestand met het volgende commando:
# vim /etc/vsftpd/vsftpd.conf
hierin de volgende richtlijnen zoeken en instellen:
anonymous_enable=NO # disable anonymous users(Unknown users)local_enable=YES # allow local userswrite_enable=YES # allow ftp write commandslocal_umask=022 # set default umaskdirmessage_enable=YES # enable messages on change directoryxferlog_enable=YES # enable logging of uploads and downloadsconnect_from_port_20=YES # ensure PORT transfer connections from port 20 xferlog_std_format=YES # keep standard log formatlisten=NO # prevent vsftpd run in stand-alone modelisten_ipv6=YES # allow vsftpd to listen on IPv6 socketpam_service_name=vsftpd # set PAM Service name to vsftpd
Configureer de gebruikerslijst in FTP-Server
standaard mogen alle gebruikers in het bestand user_list in /etc/vsftpd/user_list FTP-services gebruiken.
gebruik de volgende richtlijnen om gebruikers in een gechrooteerde omgeving te beperken:Advertentie
chroot_local_user=YES # Create chrooted environment for usersallow_writeable_chroot=YES # Allow write permission to a user on chroot jail directory
gebruik de volgende richtlijnen om gebruikers te beperken tot hun persoonlijke map:
userlist_enable=YES # enable vsftpd to load usernamesuserlist_deny=NO # allow access to users in the user list
als u een algemene toegang tot ons systeem wilt bieden, voeg deze instructie toe aan uw configuratiebestand:
chroot_list_enable=YESchroot_list_file=/etc/vsftpd/chroot_list #users in this file list have an overall access
sla het configuratiebestand op en sluit het.
Maak nu een chrot_list aan onder/etc/ vsftpd / directory, met het volgende commando:
# touch /etc/vsftpd/chroot_list
voeg alleen die gebruikers in die lijst toe aan wie u algemene toegang op het systeem wilt bieden.
een gebruiker aanmaken om toegang te krijgen tot FTP-diensten
gebruik het volgende commando om een gebruiker aan te maken voor het gebruik van FTP-diensten:
# useradd user1# passwd user1
voeg die gebruiker toe in user_list bestand om een gebruiker te beperken tot zijn persoonlijke map, gebruik je het volgende commando:
# vim /etc/vsftpd/user_list
typ ” i ” voor invoegen en typ die gebruikersnaam, zoals weergegeven in de figuur:
druk op ESC en typ: wq! om het bestand op te slaan.
als u een specifieke gebruiker een algemene toegang tot het systeem wilt geven, voeg die gebruiker toe in /etc/vsftpd/chrot_list.
Herstart de vsftpd-Service:
# systemctl restart vsftpd
Controleer de status van FTP-Service met de volgende opdracht:
# systemctl status vsftpd
Firewall Configureren voor FTP
Om de FTP-service door in de firewall, gebruik je het volgende commando:
# firewall-cmd - - add-service = ftp - - permanent# firewall-cmd - - reload
Testen van de FTP-Server van Windows Machine
om verbinding Te maken met FTP-Server moet een client software. De meest gebruikte software voor FTP is FileZilla, WINSCP, enz. Ik gebruik FileZilla voor verbinding.
Open uw FTP-clientsoftware, voer de volgende gegevens in om verbinding te maken:
Host — > IP-adres of hostnaam.
gebruikersnaam: FTP-gebruikersnaam (in mijn geval is het user1)
wachtwoord
poort: 21
na een succesvolle verbinding kunt u bestanden uploaden / downloaden volgens uw behoefte.
conclusie
In deze tutorial hebben we geleerd hoe je een FTP-server op Centos 8 kunt opzetten, hoe je gebruikers kunt beperken tot hun persoonlijke map en hoe je ze lees – /schrijftoegang kunt verlenen. We hebben ook gezien hoe de specifieke gebruiker algemene toegang tot het systeem kan krijgen.