FTP (File Transfer Protocol) serveri seadistamine Linuxi arvutis võimaldab teil faile oma süsteemi ja kaugmasina vahel üle kanda. Näitame teile, kuidas CentOS-is FTP-server seadistada.
Linuxil on juba palju avatud lähtekoodiga FTP-servereid, mida saate selle töö jaoks kasutada. See hõlmab populaarseid servereid nagu PureFTPd, ProFTPD ja vsftpd.
Teil on lubatud kasutada ükskõik millist FTP-serverit oma äranägemise järgi. Selles õpetuses installime ja kasutame aga vsftpd, mis on lühend väga turvalisest FTP-deemonist. See on kiire, stabiilne ja turvaline FTP-server, mis aitab teil faile kaugsüsteemi ja kaugelt teisaldada.
FTP-serveri seadistamine CentOS-is
Alustame pikemalt mõtlemata:
Vsftpd installimine
Esiteks peame CentOS-i installima vsftpd. Selleks sisestage terminali järgmine käsk:
$ sudo dnf install vsftpd
Kui CentOS-i süsteemis on installitud vsftpd, peaksite selle konfigureerima nii, et see käivitub ja käivitub automaatselt. Seda saab teha järgmise käsu abil:
$ sudo systemctl lubab vsftpd - nüüd
Kui see on tehtud, kontrollige vsftpd teenuse olekut, sisestades selle käsu:
$ sudo systemctl olek vsftpd
Ilmub allpool olevaga sarnane väljundiekraan. Peaksite nägema, et vsftpd pole teie CentOS-süsteemis aktiivne.
Seadistage vsftpd
Kui vsftpd on teie süsteemis aktiivne ja töötab, peate konfigureerima serveri seaded. Selleks peate pääsema / etc / vsftpd / vsftpd juurde.conf konfiguratsioonifail. Seda saab teha, avades konfiguratsioonifaili nano-redaktoris, sisestades terminali järgmise käsu:
$ sudo nano / etc / vsftpd / vsftpd.konf
Kuna redaktoris on nüüd fail avatud, peate vsftpd seadistamiseks oma süsteemis tegema mitmeid muudatusi. Läheme neist ükshaaval üle.
1. Konfigureerige FTP juurdepääs
Kõigepealt konfigureerime FTP-serveri nii, et see võimaldaks juurdepääsu ainult kohalikele kasutajatele. Selleks peate leidma failist anonymous_enable ja local_enable direktiivid ja neid redigeerima, nagu on näidatud alloleval pildil:
Nagu näete, peate määrama anonymous_enable = EI ja local_enable = YES.
2. Luba üleslaadimine
Järgmisena peate FTP-serveri konfigureerima failide üleslaadimise ja kustutamise lubamiseks.
Selleks peate leidma kirjutamise_enable direktiivi ja muutma selle väärtuseks JAH, nagu pildil näidatud.
3. Kasutajate sisselogimiste piiramine
Kui see on tehtud, soovite piirata kasutaja sisselogimiste koguarvu i.e., soovite, et teie FTP-serverisse logiksid sisse ainult teatud kasutajad. Selleks leidke see rida kõigepealt .conf-fail - userlist_enable = JAH. Pärast seda lisage faili need kaks rida:
userlist_file = / etc / vsftpd / user_list userlist_deny = EI
Kasutage viitena allolevat pilti:
Võite ka selle võimaluse lubada. Kui te seda teete, peate selgelt määrama, millistele kasutajatele soovite FTP-serverile juurdepääsu anda. Kasutajate lubamiseks peate lisama nende kasutajanimed faili / etc / vsftpd / user_list nii, et igal real oleks ainult üks kasutajanimi.
4. Passiivsete FTP-ühenduste seadistamine
Samuti võiksite seadistada passiivsed FTP-ühendused.
Sellisena näitame siin, kuidas saate määrata sadamate minimaalse ja maksimaalse vahemiku, lisades paar rida .konf fail.
Kõik, mida peate tegema, on kerige faili lõpuni ja lisage need kaks rida, nagu pildil näidatud.
pasv_min_port = 30000 pasv_max_port = 31000
Arutame ka selles õpetuses hiljem, kuidas saate oma tulemüüris vahemikku avada.
5. Konfigureerige turvalised ülekanded SSL / TLS-i abil
Lõpuks tuleb välja küsimus FTP-ühenduse turvalisuse kohta SSL / TLS-i abil. Selleks peab teil olema SSL-sertifikaat ja seadistama FTP-server selle kasutamiseks.
Selle õpetuse huvides genereerime OpenSSL-i tööriista abil ise allkirjastatud SSL-sertifikaadi ja seejärel kasutame seda meie FTP-edastuse krüptimiseks.
Nii et kõigepealt peate uue SSL-sertifikaadi loomiseks kasutama OpenSSL-i. Seda saate teha, sisestades terminali järgmise käsu:
sudo openssl req -x509 -sõlmed -päevad 3650 -newkey rsa: 2048 -keyout / etc / vsftpd / vsftpd.pem -out / etc / vsftpd / vsftpd.pem
Ülaltoodud käsu käivitamine genereerib nii 2048-bitise privaatvõtme kui ka ise allkirjastatud sertifikaadi. Mõlemad kehtivad kümme aastat ja on salvestatud ühte faili.
Pärast uue SSL-sertifikaadi loomist avage vsftpd konfiguratsioonifail eelmise käsu abil:
sudo nano / etc / vsftpd / vsftpd.konf
Kerige alla ja lisage järgmised read, nagu pildil näidatud:
rsa_cert_file = / etc / vsftpd / vsftpd.pem rsa_private_key_file = / etc / vsftpd / vsftpd.pem ssl_enable = JAH
Ja see ongi kõik. Olete oma FTP-serveri jaoks SSL-sertifikaadi edukalt konfigureerinud.
6. Lõpeta
Kui see on tehtud, kontrollige vsftpd konfiguratsioonifaili uuesti, et näha, kas kõik järgmised seaded on sellised, nagu need on:
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 kuulata = NO listen_ipv6 = YES pam_service_name = vsftpd userlist_enable = YES userlist_file = / etc / vsftpd / USER_LIST userlist_deny = NO pasv_min_port = 30000 pasv_max_port = 31000 rsa_cert_file = / etc / vsftpd / vsftpd.pem rsa_private_key_file = / etc / vsftpd / vsftpd.pem ssl_enable = JAH
Kui olete veendunud, et failis on tehtud kõik ülaltoodud muudatused, peate selle salvestama. Pärast salvestamist taaskäivitage vsftpd teenus järgmise käsu abil:
$ sudo systemctl taaskäivitage vsftpd
Konfigureerige tulemüür
Kui teil on koos FTP-serveriga lubatud tulemüür, peate tulemüüri konfigureerima nii, et see võimaldaks FTP-edastusi.
Selleks peate terminali sisestama järgmised käsud:
$ sudo tulemüür-cmd --püsiv --add-port = 20-21 / tcp
Ülaltoodud käsk avab pordi 21 - mis on FTP käsuport ja pordi 20 - mis on FTP andmeport.
Samuti peate sisestama ka selle käsu:
$ sudo tulemüür-cmd --püsiv --add-port = 30000-31000 / tcp
See käsk avab 30000-31000 passiivse pordi vahemiku, mille me varem konfigureerisime.
Kui olete valmis, peate tulemüüri uuesti laadima järgmise käsuga:
$ tulemüür-cmd - uuesti laadida
Uue FTP kasutaja loomine
Nüüd, kui olete oma CentOS-i süsteemi seadistanud vsftpd-serveri, on aeg luua uus FTP-kasutaja ja seda testida.
Kõigepealt loome uue FTP kasutaja (newftpuser) järgmise käsu abil:
$ sudo adduser newftpuser
Järgmisena peate määrama uue kasutaja parooli. Selleks kasutage seda käsku:
$ sudo passwd newftpuser
Veenduge, et parool on tugev ja pikem kui kaheksa tähemärki.
Pärast uue kasutaja loomist peate selle lisama FTP kasutajate loendisse. Seda saab teha, sisestades terminali järgmise käsu:
$ echo "newftpuser" | sudo tee -a / etc / vsftpd / user_list
Lõpuks peate looma FTP kataloogipuu, kus saate määrata kõik õiged õigused. Selleks peate terminali sisestama järgmised käsusarjad:
$ sudo mkdir -p / home / newftpuser / ftp / upload $ sudo chmod 550 / home / newftpuser / ftp $ sudo chmod 750 / home / newftpuser / ftp / upload $ sudo chown -R newftpuser: / home / newftpuser / ftp
Nüüdseks on teie FTP-server täielikult töökorras ja kasutamiseks valmis. Nüüd saate sellega ühenduse luua mis tahes FTP-kliendi abil, näiteks FileZilla. Lihtsalt veenduge, et FTP-klient saab olla konfigureeritud ka TLS-krüptimist kasutama, kuna seda kasutatakse FTP-edastuste krüptimiseks.
Keela Shelli juurdepääs
Uue FTP kasutaja loomisel peaksite meeles pidama, et kui selgesõnaliselt pole täpsustatud, on kasutajal SSH-i juurdepääs serverile.
Kui soovite keelata kasutajale juurdepääsu shellile, peate looma uue kesta, mis prindib sõnumi, mis teavitab kasutajat sellest - „See konto on piiratud ainult FTP-juurdepääsuga.”
Selleks peate terminali sisestama järgmise käsu:
$ echo -e '#!/ bin / sh \ necho "See konto on piiratud ainult FTP-juurdepääsuga."'| sudo tee -a / bin / ftponly $ sudo chmod a + x / bin / ftponly
Ülaltoodud käsk loob shell / bin / ftponly ja täidab selle.
Järgmisena peate uue koore lisama kehtivate kestade loendisse, mis asuvad / etc / kestad faili. Selleks kasutatakse järgmist käsku:
$ echo "/ bin / ftponly" | sudo tee -a / etc / shellid
Ja viimase sammuna peate kõik selle käsu abil muutma kasutaja shelliks / bin / ftponly:
$ sudo usermod newftpuser -s / bin / ftponly
Samuti saate kõigi tulevaste FTP-kasutajate jaoks sama käsku muuta nende kestaks, et neil oleks ainult FTP-juurdepääs.