Suojatun FTP-palvelimen määrittäminen SSL/TLS:n avulla Ubuntussa
Tässä opetusohjelmassa kuvataan, kuinka FTP-palvelin (VSFTPD tarkoittaa "Very Secure FTP Daemon") suojataan SSL:n avulla. /TLS Ubuntu 16.04/16.10.
Jos aiot asentaa suojatun FTP-palvelimen CentOS-pohjaisille jakeluille, voit lukea - FTP-palvelimen suojaaminen SSL/TLS:n avulla CentOS:ssä
Tämän oppaan eri vaiheiden jälkeen olemme oppineet perusasiat salauspalvelujen sallimisesta FTP-palvelimessa suojattua tiedonsiirtoa varten.
Vaatimukset
- Sinun on asennettava ja määritettävä FTP-palvelin Ubuntuun
Ennen kuin siirrymme pidemmälle, varmista, että kaikki tämän artikkelin komennot suoritetaan pääkäyttäjän tai sudo-oikeuksin suojatuina tileinä.
Vaihe 1: Luo SSL/TLS-sertifikaatti FTP:lle Ubuntussa
1. Aloitamme luomalla alihakemiston alle: /etc/ssl/ SSL/TLS-varmenteen ja avaintiedostojen tallentamiseen, jos se ei ei ole olemassa:
sudo mkdir /etc/ssl/private
2. Luodaan nyt varmenne ja näppäile yksi tiedosto suorittamalla alla oleva komento.
sudo openssl req -x509 -nodes -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem -days 365 -newkey rsa:2048
Yllä oleva komento kehottaa sinua vastaamaan alla oleviin kysymyksiin. Älä unohda syöttää skenaarioosi soveltuvia arvoja.
Country Name (2 letter code) [XX]:IN
State or Province Name (full name) []:Lower Parel
Locality Name (eg, city) [Default City]:Mumbai
Organization Name (eg, company) [Default Company Ltd]:TecMint.com
Organizational Unit Name (eg, section) []:Linux and Open Source
Common Name (eg, your name or your server's hostname) []:tecmint
Email Address []:[email
Vaihe 2: VSFTPD:n määrittäminen käyttämään SSL/TLS:ää Ubuntussa
3. Ennen kuin suoritamme VSFTPD-määrityksiä, sinun on avattava portit 990 ja 40000 niille, joilla on käytössä UFW-palomuuri. -50000 salliaksesi TLS-yhteyksien ja passiivisten porttien porttialueen asettamisen VSFTPD-määritystiedostossa:
sudo ufw allow 990/tcp
sudo ufw allow 40000:50000/tcp
sudo ufw status
4. Avaa nyt VSFTPD-määritystiedosto ja määritä siihen SSL-tiedot:
sudo vi /etc/vsftpd/vsftpd.conf
OR
sudo nano /etc/vsftpd/vsftpd.conf
Lisää tai etsi sitten vaihtoehto ssl_enable
ja aseta sen arvoksi YES aktivoidaksesi SSL:n käytön. Koska TLS on turvallisempi kuin SSL, rajoitamme VSFTPD:n käytä sen sijaan TLS:ää ottamalla käyttöön ssl_tlsv1
-vaihtoehto:
ssl_enable=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
5. Kommentoi seuraavaksi alla olevat rivit käyttämällä #
-merkkiä seuraavasti:
#rsa_cert_file=/etc/ssl/private/ssl-cert-snakeoil.pem
#rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
Lisää sen jälkeen alla olevat rivit määrittääksesi SSL-varmenteen ja avaintiedoston sijainnin:
rsa_cert_file=/etc/ssl/private/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem
6. Nyt meidän on myös estettävä anonyymejä käyttäjiä käyttämästä SSL:ää, sitten pakotettava kaikki ei-anonyymit kirjautumiset käyttämään suojattua SSL-yhteyttä tiedonsiirrossa ja lähettämään salasana sisäänkirjautumisen yhteydessä:
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
7. Lisäksi voimme käyttää alla olevia vaihtoehtoja lisätäksemme suojausominaisuuksia FTP-palvelimeen. Vaihtoehdolla require_ssl_reuse=YES
kaikki SSL-datayhteydet vaaditaan SSL-istunnon uudelleenkäytön näyttämiseksi. todistaa, että he tietävät saman pääsalaisuuden kuin ohjauskanava. Joten meidän pitäisi poistaa se käytöstä.
require_ssl_reuse=NO
Lisäksi voimme määrittää, mitkä SSL-salaukset VSFTPD sallii salatuille SSL-yhteyksille ssl_ciphers
-vaihtoehdolla. Tämä auttaa estämään hyökkääjien yritykset, jotka yrittävät pakottaa tiettyyn salaukseen, jonka haavoittuvuuksia he mahdollisesti ovat löytäneet:
ssl_ciphers=HIGH
8. Määritetään sitten passiivisten porttien porttialue (minimi- ja enimmäisportti).
pasv_min_port=40000
pasv_max_port=50000
9. Voit ottaa käyttöön SSL-virheenkorjauksen eli openSSL-yhteyden diagnostiikkatiedot tallennetaan VSFTPD-lokitiedostoon käyttämällä debug_ssl
-vaihtoehtoa:
debug_ssl=YES
Tallenna lopuksi tiedosto ja sulje se. Käynnistä sitten VSFTPD-palvelu uudelleen:
systemctl restart vsftpd
Vaihe 3: Tarkista FTP SSL/TLS-yhteyksillä Ubuntussa
10. Kun olet suorittanut kaikki yllä olevat määritykset, testaa, käyttääkö VSFTPD nyt SSL/TLS-yhteyksiä yrittämällä käyttää FTP:tä komentoriviltä alla kuvatulla tavalla.
Alla olevasta lähdöstä tulee virheilmoitus, joka kertoo meille, että VSFTPD voi sallia vain käyttäjien (ei-anonyymien) kirjautumisen suojatuista asiakkaista, jotka tukevat salauspalveluita.
ftp 192.168.56.10
Connected to 192.168.56.10 (192.168.56.10).
220 Welcome to TecMint.com FTP service.
Name (192.168.56.10:root) : ravi
530 Non-anonymous sessions must use encryption.
Login failed.
421 Service not available, remote server has closed connection
ftp>
Komentorivi ei tue salauspalveluita, mikä johtaa yllä olevaan virheeseen. Jotta voimme muodostaa turvallisen yhteyden FTP-palvelimeen, jossa salauspalvelut ovat käytössä, tarvitsemme FTP-asiakkaan, joka tukee oletuksena SSL/TLS-yhteyksiä, kuten FileZilla.
Vaihe 4: Asenna FileZilla on Clients yhdistääksesi FTP turvallisesti
FileZilla on tehokas, laajalti käytetty cross-platform FTP-asiakas, joka tukee FTP:tä SSL/TLS:n yli ja paljon muuta. Asenna FileZilla Linux-asiakaskoneeseen käyttämällä seuraavaa komentoa.
--------- On Debian/Ubuntu ---------
sudo apt-get install filezilla
--------- On CentOS/RHEL/Fedora ---------
yum install epel-release filezilla
--------- On Fedora 22+ ---------
sudo dnf install filezilla
12. Kun asennus on valmis, avaa se ja siirry File=>Sites Manageriin tai (paina Ctrl+S) saadaksesi >Sivuston hallinta käyttöliittymä alla.
13. Määritä nyt isäntä/sivuston nimi, lisää IP-osoite, määritä käytettävä protokolla, salaus ja kirjautumistyyppi alla olevan kuvakaappauksen mukaisesti (käytä skenaariaasi soveltuvia arvoja):
Napsauta Uusi sivusto -painiketta määrittääksesi uuden sivuston/isäntäyhteyden.
Host: 192.168.56.10
Protocol: FTP – File Transfer Protocol
Encryption: Require explicit FTP over #recommended
Logon Type: Ask for password #recommended
User: username
14. Napsauta sitten yllä olevasta käyttöliittymästä Yhdistä syöttääksesi salasanan ja vahvista sitten SSL/TLS-yhteydessä käytettävä varmenne. ja muodosta yhteys FTP-palvelimeen napsauttamalla OK vielä kerran:
15. Sinun pitäisi nyt kirjautua FTP-palvelimeen onnistuneesti TLS-yhteyden kautta. Tarkista yhteyden tila -osiosta lisätietoja alla olevasta käyttöliittymästä.
16. Lopuksi siirretään tiedostot paikalliselta koneelta FTP-palvelimelle tiedostokansiossa, katso FileZilla-käyttöliittymän alaosa nähdäksesi tiedostojen siirtoja koskevat raportit.
Siinä kaikki! Muista aina, että FTP-palvelimen asentamisella ilman salauspalveluita on tiettyjä turvallisuusvaikutuksia. Kuten tässä opetusohjelmassa selitimme, voit määrittää FTP-palvelimen käyttämään SSL/TLS-yhteyksiä turvallisuuden toteuttamiseksi Ubuntu 16.04/16.10:ssä.
Jos kohtaat ongelmia SSL/TLS:n määrittämisessä FTP-palvelimelle, käytä alla olevaa kommenttilomaketta jakaaksesi ongelmasi tai ajatuksesi tästä opetusohjelmasta/aiheesta.