Suojaa ProFTPD-yhteydet käyttämällä TLS/SSL-protokollaa RHEL/CentOS 7: llä
Luonteensa vuoksi FTP -protokolla on suunniteltu epävarmaksi protokollaksi, ja kaikki tiedot ja salasanat siirretään tekstimuodossa, mikä tekee kolmannen osapuolen työstä erittäin helppo sieppaamaan kaikki FTP-asiakas-palvelintapahtumat, erityisesti käyttäjänimet ja todennusprosessissa käytetyt salasanat.
- ProFTPD-palvelimen asentaminen RHEL/CentOS 7 -käyttöjärjestelmään
- Ota anonyymi tili käyttöön Proftpd-palvelimelle RHEL/CentOS 7: ssä
Tämä opetusohjelma opastaa sinua suojaamaan ja salaamaan FTP -viestinnän ProFTPd -palvelimella CentOS / RHEL 7 -palvelussa , käyttämällä TLS (Transport Layer Security) -ominaisuutta, jolla on eksplisiittinen FTPS-laajennus (ajattele FTPS: ssä mitä HTTPS on HTTP-protokollalle).
Vaihe 1: Luo Proftpd TLS -moduulin määritystiedosto
1. Kuten edellisessä Nimetöntä tiliä koskevassa Proftpd-opetusohjelmassa todettiin, tässä oppaassa käytetään samaa lähestymistapaa myös tulevaisuuden Proftpd-määritystiedostojen hallinnassa moduuleina enable_mod ja disabled_mod avulla. hakemistot, jotka palvelevat kaikkia palvelimen laajennettuja ominaisuuksia.
Joten, luo uusi tiedosto suosikkitekstieditorilla nimeltä tls.conf invalid_mod Proftpd-polussa ja lisää seuraavat ohjeet.
# nano /etc/proftpd/disabled_mod/tls.conf
Lisää seuraava TLS-tiedostomäärityksen ote.
<IfModule mod_tls.c> TLSEngine on TLSLog /var/log/proftpd/tls.log TLSProtocol SSLv23 TLSRSACertificateFile /etc/ssl/certs/proftpd.crt TLSRSACertificateKeyFile /etc/ssl/private/proftpd.key #TLSCACertificateFile /etc/ssl/certs/CA.pem TLSOptions NoCertRequest EnableDiags NoSessionReuseRequired TLSVerifyClient off TLSRequired on TLSRenegotiate required on </IfModule>
2. Jos käytät selaimia tai FTP-asiakkaita, jotka eivät tue TLS-yhteyksiä, kommentoi rivi TLSRequired on , jotta TLS- ja muut kuin TLS-yhteydet sallitaan samanaikaisesti ja vältetään virheilmoitus kuten kuvakaappaus alla.
Vaihe 2: Luo SSL-varmennetiedostot TLS: ää varten
3. Kun olet luonut TLS-moduulin määritystiedoston. joka sallii FTP: n TLS: n kautta Proftpd: ssä, sinun on luotava SSL-varmenne ja avain, jotta voit käyttää suojattua tiedonsiirtoa ProFTPD Server -palvelimen kautta OpenSSL -paketin avulla.
# yum install openssl
Voit käyttää yhtä pitkää komentoa SSL-sertifikaatti- ja avainparien luomiseen, mutta yksinkertaistamaan asioita voit luoda yksinkertaisen bash-komentosarjan, joka luo SSL-parit haluamallasi nimellä ja antaa oikeat käyttöoikeudet Key-tiedostolle.
Luo bash-tiedosto nimeltä proftpd_gen_ssl kansioon /usr/local/bin/ tai muulle suoritettavalle järjestelmän polulle (muuttujan $PATH määrittämä).
# nano /usr/local/bin/proftpd_gen_ssl
Lisää siihen seuraava sisältö.
#!/bin/bash echo -e "\nPlease enter a name for your SSL Certificate and Key pairs:" read name openssl req -x509 -newkey rsa:1024 \ -keyout /etc/ssl/private/$name.key -out /etc/ssl/certs/$name.crt \ -nodes -days 365\ chmod 0600 /etc/ssl/private/$name.key
4. Kun olet luonut yllä olevan tiedoston, määritä se suorittamisoikeuksilla, varmista, että /etc/ssl/private -hakemisto on olemassa, ja luo komentosarja SSL-sertifikaatti- ja avainparien luomiseksi.
# chmod +x /usr/local/bin/proftpd_gen_ssl # mkdir -p /etc/ssl/private # proftpd_gen_ssl
Anna SSL-varmenteelle vaaditut kehotetut tiedot, jotka ovat itsestään selviä, mutta kiinnitä huomiota yleiseen nimeen vastaamaan isäntäsi täysin hyväksyttyä verkkotunnusta - FQDN .
Vaihe 3: Ota TLS käyttöön ProFTPD Serverissä
5. Koska aiemmin luotu TLS-määritystiedosto osoittaa jo oikeaan SSL-sertifikaatti- ja avaintiedostoon, jäljellä on vain aktivoida TLS-moduuli luomalla symbolinen linkki kohteesta tls.conf tiedosto enable-mod -hakemistoon ja käynnistä ProFTPD-demoni muutosten tekemiseen.
# ln -s /etc/proftpd/disabled_mod/tls.conf /etc/proftpd/enabled_mod/ # systemctl restart proftpd
6. Voit poistaa TLS-moduulin käytöstä poistamalla tls.conf -symbolilinkin enable_mod -hakemistosta ja käynnistämällä ProFTPD-palvelimen uudelleen muutosten tekemistä varten.
# rm /etc/proftpd/enabled_mod/tls.conf # systemctl restart proftpd
Vaihe 4: Avaa palomuuri salliaksesi FTP: n TLS-yhteyden kautta
7. Jotta asiakkaat voisivat käyttää ProFTPD: tä ja suojata siirtotiedostoja passiivisessa tilassa , sinun on avattava koko porttialue 1024 ja 65534 välillä RHEL/CentOS-palomuuri käyttämällä seuraavia komentoja.
# firewall-cmd --add-port=1024-65534/tcp # firewall-cmd --add-port=1024-65534/tcp --permanent # firewall-cmd --list-ports # firewall-cmd --list-services # firewall-cmd --reload
Se siitä. Nyt järjestelmäsi on valmis hyväksymään FTP-tiedonsiirron TLS: n kautta asiakaspuolelta.
Vaihe 5: Käytä ProFTPD: tä TLS: n kautta asiakkailta
8. Verkkoselaimilla ei yleensä ole sisäänrakennettua tukea FTP: lle TLS-protokollan kautta, joten kaikki tapahtumat toimitetaan salaamattoman FTP: n kautta. Yksi erinomaisimmista FTP-asiakkaista on FileZilla , joka on täysin avoimen lähdekoodin ja toimii lähes kaikilla tärkeimmillä käyttöjärjestelmillä.
Jos haluat käyttää FTP: tä TLS: n kautta FileZillasta, avaa Sivustonhallinta , valitse FTP Protokollassa ja Vaadi nimenomaista FTP: tä TLS: n kautta Salaus -pudotusvalikko, valitse Kirjautumistyyppi Normaali , kirjoita FTP-tunnuksesi ja paina Yhdistä kommunikoida palvelimen kanssa.
9. Jos muodostat yhteyden ProFTPD-palvelimeen ensimmäistä kertaa, uuden varmenteen sisältävän ponnahdusikkunan pitäisi näkyä, tarkista ruutu , jossa lukee Luota aina varmenteeseen tulevia istuntoja varten ja osuma OK -kohdassa hyväksyäksesi varmenteen ja todennuksen ProFTPD-palvelimelle.
Jos aiot käyttää muita asiakkaita kuin FileZillaa FTP-resurssien turvalliseen käyttöön, varmista, että ne tukevat FTP: tä TLS-protokollan kautta. Hyviä esimerkkejä FTP-asiakkaille, jotka voivat puhua FTPS: ää, ovat gFTP tai LFTP (komentorivi) NIX: lle.