Pagal savo originalų dizainą, FTP (Failų perdavimo protokolas) nėra saugus, tai reiškia, kad jis neužšifruoja duomenų, perduodamų tarp dviejų mašinų, kartu su vartotojo kredencialais. Tai kelia didžiulę grėsmę duomenims ir serverio saugumui.
Šioje pamokoje paaiškinsime, kaip rankiniu būdu įgalinti duomenų šifravimo paslaugas FTP serveryje naudojant „CentOS/RHEL 7“ ir „Fedora“; atliksime įvairius apsaugos veiksmus VSFTPD (Labai saugus FTP demonas) paslaugomis SSL/TLS sertifikatus.
Prieš pradėdami, atkreipkite dėmesį, kad visos šios pamokos komandos bus vykdomos kaip šaknis, kitu atveju naudokite sudo komanda įgyti root teises, jei nekontroliuojate serverio naudodami šakninę paskyrą.
1. Pirmiausia turime sukurti pakatalogį: /etc/ssl/
kur laikysime SSL/TLS sertifikatų ir raktų failai:
# mkdir/etc/ssl/private.
2. Tada paleiskite toliau pateiktą komandą, kad sukurtumėte sertifikatą ir raktą
vsftpd viename faile pateikiamas kiekvienos naudojamos vėliavos paaiškinimas.# openssl req -x509 -nodes -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem -days 365 -newkey rsa: 2048.
Aukščiau pateikta komanda paprašys atsakyti į toliau pateiktus klausimus, nepamirškite naudoti jūsų scenarijui taikomų verčių.
Šalies pavadinimas (2 raidžių kodas) [XX]:IN
Valstijos ar provincijos pavadinimas (visas vardas) []:Žemutinė parelė
Vietos pavadinimas (pvz., Miestas) [Numatytasis miestas]:Mumbajus
Organizacijos pavadinimas (pvz., Įmonė) [Numatytoji įmonė Ltd]:TecMint.com
Organizacijos padalinio pavadinimas (pvz., Skyrius) []:„Linux“ ir atvirojo kodo
Bendras vardas (pvz., Jūsų vardas arba serverio prieglobos serverio pavadinimas) []:tecmint
Elektroninio pašto adresas []:[apsaugotas el. paštas]
3. Prieš atlikdami bet kokias VSFTPD konfigūracijas, atidarykime prievadus 990 ir 40000-50000 kad TLS jungtys ir pasyviųjų prievadų prievadų diapazonas būtų apibrėžti atitinkamai VSFTPD konfigūracijos faile:
# ugniasienė-cmd --zone = public --permanent --add-port = 990/tcp. # ugniasienė-cmd --zone = public --permanent --add-port = 40000-50000/tcp. # užkarda-cmd-įkelti iš naujo.
4. Dabar atidarykite VSFTPD konfigūracijos failą ir jame nurodykite išsamią SSL informaciją:
# vi /etc/vsftpd/vsftpd.conf.
Ieškokite varianto ssl_enable ir nustatykite jo vertę į TAIP
be to, kadangi TSL yra saugesnis nei SSL, mes apribosime VSFTPD naudoti TLS, naudodami ssl_tlsv1_2 variantas:
ssl_enable = TAIP. ssl_tlsv1_2 = TAIP. ssl_sslv2 = NE. ssl_sslv3 = NE.
5. Tada pridėkite toliau pateiktas eilutes, kad apibrėžtumėte SSL sertifikato ir rakto failo vietą:
rsa_cert_file =/etc/ssl/private/vsftpd.pem. rsa_private_key_file =/etc/ssl/private/vsftpd.pem.
6. Be to, turime neleisti anoniminiams vartotojams naudoti SSL, tada priversti visus neanoniminius prisijungimus naudoti saugų SSL ryšį duomenims perduoti ir atsiųsti slaptažodį prisijungimo metu:
allow_anon_ssl = NE. force_local_data_ssl = TAIP. force_local_logins_ssl = TAIP.
7. Be to, mes galime pridėti toliau nurodytas parinktis, kad padidintume FTP serverio saugumą. Kai variantas use_ssl_reuse yra nustatytas į TAIP
, tada visi SSL duomenų ryšiai reikalingi pakartotiniam SSL seanso naudojimui parodyti; įrodyti, kad jie žino tą pačią pagrindinę paslaptį kaip ir valdymo kanalas.
Todėl turime jį išjungti.
need_ssl_reuse = NE.
Vėlgi, turime pasirinkti, kuriuos SSL šifrus VSFTPD leis užšifruoti SSL ryšius su ssl_ciphers variantas. Tai gali labai apriboti užpuolikų, bandančių priversti tam tikrą šifrą, kuriame jie tikriausiai atrado pažeidžiamumą, pastangas:
ssl_ciphers = AUKŠTAS.
8. Dabar nustatykite pasyviųjų prievadų prievadų diapazoną (minimalų ir maksimalų prievadą).
pasv_min_port = 40000. pasv_max_port = 50000.
9. Pasirinktinai leiskite SSL derinimą, o tai reiškia, kad „OpenSSL“ ryšio diagnostika įrašoma į VSFTPD žurnalo failą su debug_ssl variantas:
debug_ssl = TAIP.
Išsaugokite visus pakeitimus ir uždarykite failą. Tada paleiskite VSFTPD paslaugą iš naujo:
# systemctl iš naujo paleiskite vsftpd.
10. Atlikę visas aukščiau nurodytas konfigūracijas, patikrinkite, ar VSFTPD naudoja SSL/TLS ryšius, bandydami naudoti FTP iš komandinės eilutės taip:
# ftp 192.168.56.10. Prisijungta prie 192.168.56.10 (192.168.56.10). 220 Sveiki atvykę į TecMint.com FTP paslaugą. Pavadinimas (192.168.56.10:root): ravi. 530 Neanoniminėse sesijose turi būti naudojamas šifravimas. Prisijungimas nepavyko. 421 Paslauga nepasiekiama, nuotolinio serverio ryšys uždarytas. ftp>
Iš aukščiau pateiktos ekrano kopijos matome, kad įvyko klaida, informuojanti mus, kad VSFTPD gali leisti vartotojui prisijungti tik iš klientų, palaikančių šifravimo paslaugas.
Komandinė eilutė nesiūlo šifravimo paslaugų, todėl atsiranda klaida. Taigi, norėdami saugiai prisijungti prie serverio, mums reikia FTP kliento, palaikančio SSL/TLS ryšius, pvz „FileZilla“.
11.„FileZilla“ yra modernus, populiarus ir, svarbiausia, kelių platformų FTP klientas, kuris pagal nutylėjimą palaiko SSL/TLS ryšius.
Norėdami įdiegti „FileZilla“ „Linux“, paleiskite žemiau pateiktą komandą:
„CentOS“/„RHEL“/„Fedora“ # yum įdiegti epel-release filezilla „Debian“/„Ubuntu“ $ sudo apt-get install filezilla
12. Kai diegimas bus baigtas (arba jei jau įdiegėte), atidarykite jį ir eikite į Failas => Svetainių tvarkyklė arba (paspauskite Ctrl+S
) gauti Svetainės vadovas sąsaja žemiau.
Spustelėkite Nauja svetainė mygtuką, kad pridėtumėte naują svetainės/prieglobos ryšio informaciją.
13. Tada nustatykite pagrindinio kompiuterio/svetainės pavadinimą, pridėkite IP adresą, apibrėžkite naudojamą protokolą, šifravimą ir prisijungimo tipą, kaip parodyta žemiau esančioje ekrano kopijoje (naudokite jūsų scenarijui taikomas vertes):
Priimančioji: 192.168.56.10 Protokolas: FTP - failų perdavimo protokolas Šifravimas: Reikalauti aiškaus FTP #recommended prisijungimo tipas: Paprašykite slaptažodžio #recommended vartotojas: Vartotojo vardas
14. Tada spustelėkite Prisijungti įveskite slaptažodį dar kartą, tada patikrinkite, ar sertifikatas naudojamas SSL/TLS ryšiui, ir spustelėkite Gerai
dar kartą prisijungti prie FTP serverio:
Šiame etape turėjome sėkmingai prisijungti prie FTP serverio per TLS ryšį. Norėdami gauti daugiau informacijos iš toliau pateiktos sąsajos, patikrinkite ryšio būsenos skyrių.
15. Paskutinis, bet ne mažiau svarbus dalykas - pabandykite perkeliant failus iš vietinio kompiuterio į FTP serverį failų aplanke, pažvelkite į apatinį „FileZilla“ sąsaja, skirta peržiūrėti ataskaitas apie failų perdavimą.
Tai viskas! Visada atminkite, kad FTP pagal numatytuosius nustatymus nėra saugus, nebent sukonfigūruosime jį naudoti SSL/TLS ryšius, kaip parodėme šioje pamokoje. Pasidalykite savo mintimis apie šią mokymo programą/temą naudodami žemiau pateiktą atsiliepimų formą.