Kaip įdiegti, konfigūruoti ir apsaugoti FTP serverį RHEL 8
FTP (reiškia File Transfer Protocol) yra standartinis ir senas tinklo protokolas, naudojamas failams perduoti tarp kliento ir serverio kompiuterių tinkle. Jis sukurtas pagal kliento-serverio modelio architektūrą, kuri suteikia prieigą prie failų ir katalogų per FTP klientą, kad būtų galima įkelti failus į serverį ir atsisiųsti failus iš jo.
Ankstesniame straipsnyje paaiškinome, kaip įdiegti, konfigūruoti ir apsaugoti FTP serverį CentOS/RHEL 7, kad būtų galima perkelti kompiuterio failus iš kliento į serverį kompiuterių tinkle.
Šiame straipsnyje aprašysime, kaip įdiegti, konfigūruoti ir apsaugoti FTP serverį RHEL 8, kad būtų galima bendrai naudoti failus tarp kompiuterių.
Įdiekite FTP serverį RHEL 8
1. Norėdami įdiegti saugų FTP paketą, naudokite šią dnf komandą.
dnf install vsftpd
2. Kai diegimas bus baigtas, kol kas turite paleisti vsftpd paslaugą, įjungti ją automatiškai paleidžiant sistemą ir tada patikrinti būseną naudodami šias systemctl komandas.
systemctl start vsftpd
systemctl enable vsftpd
systemctl status vsftpd
3. Tada turite atidaryti FTP prievadą 21 sistemos užkardoje, kad galėtumėte pasiekti FTP paslaugas iš išorinių sistemų.
firewall-cmd --zone=public --permanent --add-port=21/tcp
firewall-cmd --zone=public --permanent --add-port=45073/tcp
firewall-cmd --reload
Konfigūruokite FTP serverį RHEL 8
4. Norėdami sukonfigūruoti FTP serverį, turite sukurti pagrindinio FTP konfigūracijos failo /etc/vsftpd/vsftpd.conf
atsarginę kopiją naudodami šią kopijavimo komandą.
cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.orig
5. Tada atidarykite konfigūracijos failą naudodami mėgstamą komandų eilutės rengyklę.
vi /etc/vsftpd/vsftpd.conf
Nustatykite šiuos parametrus su šiomis atitinkamomis reikšmėmis (konfigūracijos parametrų reikšmes žr. man vsftpd.conf):
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
6. Tada turite sukonfigūruoti FTP, kad naudotojams būtų leista/uždrausti prieigą prie FTP paslaugų, remiantis naudotojų sąrašo failu /etc/vsftpd.userlist.
Pagal numatytuosius nustatymus naudotojams, išvardytiems faile /etc/vsftpd.userlist
, neleidžiama prieiga, kai parinktis userlist_deny
nustatyta į TAIP
, jei userlist_enable =TAIP
, tai įgalina prieigą.
Tačiau parametro userlist_deny=NO
nustatymas pakeičia nustatymą, o tai reiškia, kad prisijungti bus leidžiama tik tiems vartotojams, kurie aiškiai nurodyti userlist_file=/etc/vsftpd.userlist
.
Todėl į savo vsftpd.conf
konfigūracijos failą pridėkite šias eilutes (arba, jei jos jau yra, panaikinkite jas komentarus ir nustatykite jų reikšmes, kaip parodyta):
userlist_enable=YES # allow access to list of usernames from the userlist_file
userlist_file=/etc/vsftpd.userlist # stores usernames.
userlist_deny=NO
7. Dabar į savo vsftpd.conf
konfigūracijos failą pridėkite šias eilutes, kad apribotumėte FTP naudotojų prieigą prie jų namų katalogų.
chroot_local_user=YES #means local users will be placed in a chroot jail, their home directory after login by default settings.
user_sub_token=$USER
local_root=/home/$USER/ftp
Išsaugokite failo pakeitimus ir uždarykite jį.
8. Nustatykite šią SELinux loginę taisyklę, kad įgalintumėte FTP skaityti/rašyti vartotojo namų katalogo failus.
semanage boolean -m ftpd_full_access --on
9. Galiausiai iš naujo paleiskite vsftpd paslaugą, kad paveiktumėte visus anksčiau atliktus pakeitimus:
systemctl restart vsftpd
FTP serverio testavimas naudojant RHEL 8
10. Norėdami patikrinti, ar aukščiau pateikta FTP sąranka veikia gerai, pirmiausia sukurkite FTP naudotoją naudodami komandą useradd ir sukurkite to naudotojo slaptažodį.
useradd -m -c "Tecmint HowTos" -s /bin/bash tecmint
passwd tecmint
11. Tada pridėkite naudotoją tecmint prie failo /etc/vsftpd.userlist naudodami komandą echo, kaip nurodyta toliau.
echo "tecmint" | tee -a /etc/vsftpd.userlist
cat /etc/vsftpd.userlist
12. Tada sukurkite alternatyvų vietinį vartotojo šakninį katalogą (tecmint, jūsų tikriausiai skiriasi) ir šiame kataloge nustatykite atitinkamus leidimus.
mkdir -p /home/tecmint/ftp
chown nobody:nobody /home/tecmint/ftp
chmod a-w /home/tecmint/ftp
13. Tada vietinėje šakninėje vietoje sukurkite katalogą, kuriame naudotojas saugos savo failus.
mkdir /home/tecmint/ftp/files
chown tecmint:tecmint /home/tecmint/ftp/files
chmod 0700 /home/tecmint/ftp/files/
14. Dabar prisijunkite prie FTP serverio naudodami bet kurį FTP klientą, kaip nurodyta toliau.
ftp [email
Pavyzdžio išvestis
Connected to 192.168.56.100
220 Welcome to TecMint.com FTP service.
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> ls
Viskas! Šiame straipsnyje aprašėme, kaip įdiegti, konfigūruoti ir apsaugoti FTP serverį naudojant RHEL 8. Kitame straipsnyje parodysime, kaip apsaugoti FTP serverį naudojant SSL/TLS ryšius. Iki tol likite su mumis.