Hvernig á að tryggja FTP netþjón með SSL/TLS fyrir öruggan skráaflutning í CentOS 7
Með upprunalegri hönnun sinni er FTP (File Transfer Protocol) ekki öruggt, sem þýðir að það dulkóðar ekki gögn sem eru send á milli tveggja véla, ásamt persónuskilríkjum notanda. Þetta skapar gríðarlega ógn við gögn sem og öryggi netþjóna.
Í þessari kennslu munum við útskýra hvernig á að virkja handvirkt gagnadulkóðunarþjónustu á FTP netþjóni í CentOS/RHEL 7 og Fedora; við munum fara í gegnum ýmis skref til að tryggja VSFTPD (Very Secure FTP Daemon) þjónustu með því að nota SSL/TLS vottorð.
- Þú verður að hafa sett upp og stillt FTP-þjón í CentOS 7
Áður en við byrjum, athugaðu að allar skipanir í þessari kennslu verða keyrðar sem rót, annars skaltu nota sudo skipunina til að fá rótarréttindi ef þú ert ekki að stjórna þjóninum með því að nota rótarreikninginn.
Skref 1. Búa til SSL/TLS vottorð og einkalykil
1. Við þurfum að byrja á því að búa til undirmöppu undir: /etc/ssl/
þar sem við munum geyma SSL/TLS vottorðið og lykilskrár:
# mkdir /etc/ssl/private
2. Keyrðu síðan skipunina fyrir neðan til að búa til vottorðið og lykilinn fyrir vsftpd í einni skrá, hér er útskýringin á hverju fána sem notað er.
- req – er skipun fyrir X.509 Certificate Signing Request (CSR) stjórnun.
- x509 – þýðir X.509 vottorðsgagnastjórnun.
- dagar – skilgreinir fjölda daga sem vottorðið gildir fyrir.
- nýr lykill – tilgreinir vottorðslykillinn.
- rsa:2048 – RSA lykla örgjörvi, mun búa til 2048 bita einkalykil.
- lyklaútgangur – stillir lyklageymsluskrána.
- út – stillir skírteinisgeymsluskrána, athugaðu að bæði vottorð og lykill eru geymd í sömu skránni: /etc/ssl/private/vsftpd.pem.
# openssl req -x509 -nodes -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem -days 365 -newkey rsa:2048
Ofangreind skipun mun biðja þig um að svara spurningunum hér að neðan, mundu að nota gildi sem eiga við atburðarás þína.
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
Skref 2. Stilla VSFTPD til að nota SSL/TLS
3. Áður en við framkvæmum VSFTPD stillingar skulum við opna höfnin 990 og 40000-50000 til að leyfa TLS tengingum og hafnarsviði óvirkra hafna að skilgreina í VSFTPD stillingarskránni í sömu röð:
# firewall-cmd --zone=public --permanent --add-port=990/tcp # firewall-cmd --zone=public --permanent --add-port=40000-50000/tcp # firewall-cmd --reload
4. Opnaðu nú VSFTPD stillingarskrána og tilgreindu SSL upplýsingarnar í henni:
# vi /etc/vsftpd/vsftpd.conf
Leitaðu að valkostinum ssl_enable og stilltu gildi hans á YES
til að virkja notkun SSL, auk þess, þar sem TSL er öruggara en SSL, munum við takmarka VSFTPD til að nota TLS í staðinn, með því að nota ssl_tlsv1_2 valkostinn:
ssl_enable=YES ssl_tlsv1_2=YES ssl_sslv2=NO ssl_sslv3=NO
5. Bættu síðan við línunum hér að neðan til að skilgreina staðsetningu SSL vottorðsins og lykilskrár:
rsa_cert_file=/etc/ssl/private/vsftpd.pem rsa_private_key_file=/etc/ssl/private/vsftpd.pem
6. Næst verðum við að koma í veg fyrir að nafnlausir notendur noti SSL, þá neyða allar ónafnlausar innskráningar til að nota örugga SSL tengingu fyrir gagnaflutning og senda lykilorðið við innskráningu:
allow_anon_ssl=NO force_local_data_ssl=YES force_local_logins_ssl=YES
7. Að auki getum við bætt við valkostunum hér að neðan til að auka öryggi FTP netþjónsins. Þegar valmöguleikinn require_ssl_reuse er stilltur á JÁ
, þá eru allar SSL gagnatengingar nauðsynlegar til að sýna endurnotkun SSL lotu; sem sannar að þeir vita sama aðalleyndarmálið og stjórnrásin.
Þess vegna verðum við að slökkva á því.
require_ssl_reuse=NO
Aftur þurfum við að velja hvaða SSL dulmál VSFTPD mun leyfa fyrir dulkóðaðar SSL tengingar með ssl_ciphers valkostinum. Þetta getur mjög takmarkað viðleitni árásarmanna sem reyna að þvinga fram tiltekið dulmál sem þeir fundu líklega veikleika í:
ssl_ciphers=HIGH
8. Nú skaltu stilla gáttarsvið (mín og hámarkshöfn) óvirkra hafna.
pasv_min_port=40000 pasv_max_port=50000
9. Leyfðu valfrjálst SSL kembiforrit, sem þýðir að greiningar á opnum SSL tengingum eru skráðar í VSFTPD annálaskrána með debug_ssl valkostinum:
debug_ssl=YES
Vistaðu allar breytingarnar og lokaðu skránni. Þá skulum við endurræsa VSFTPD þjónustu:
# systemctl restart vsftpd
Skref 3: Prófaðu FTP miðlara með SSL/TLS tengingum
10. Eftir að hafa gert allar ofangreindar stillingar skaltu prófa hvort VSFTPD noti SSL/TLS tengingar með því að reyna að nota FTP frá skipanalínunni sem hér segir:
# 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>
Af skjámyndinni hér að ofan getum við séð að það er villa sem tilkynnir okkur að VSFTPD getur aðeins leyft notanda að skrá sig inn frá viðskiptavinum sem styðja dulkóðunarþjónustu.
Skipanalínan býður ekki upp á dulkóðunarþjónustu sem veldur því villunni. Svo, til að tengjast þjóninum á öruggan hátt, þurfum við FTP biðlara sem styður SSL/TLS tengingar eins og FileZilla.
Skref 4: Settu upp FileZilla til að tengjast á öruggan hátt við FTP netþjón
11. FileZilla er nútímalegur, vinsæll og mikilvægur FTP viðskiptavinur sem styður SSL/TLS tengingar sjálfgefið.
Til að setja upp FileZilla í Linux skaltu keyra skipunina hér að neðan:
--------- On CentOS/RHEL/Fedora --------- # yum install epel-release filezilla --------- On Debian/Ubuntu --------- $ sudo apt-get install filezilla
12. Þegar uppsetningunni er lokið (eða ef þú ert nú þegar með hana uppsetta), opnaðu hana og farðu í File=>Site Manager eða (ýttu á Ctrl+S
) til að fá Site Manager viðmótið fyrir neðan.
Smelltu á hnappinn Ný síða til að bæta við upplýsingum um nýja síðu/hýsingartengingu.
13. Næst skaltu stilla nafn gestgjafa/síðunnar, bæta við IP tölu, skilgreina samskiptareglur sem á að nota, dulkóðun og innskráningargerð eins og á skjámyndinni hér að neðan (notaðu gildi sem eiga við um atburðarásina þína):
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. Smelltu svo á Connect til að slá inn lykilorðið aftur, og staðfestu síðan vottorðið sem er notað fyrir SSL/TLS tenginguna og smelltu á OK
enn og aftur til að tengjast FTP þjóninum:
Á þessu stigi ættum við að hafa skráð okkur inn á FTP netþjóninn með TLS tengingu, athugaðu tengingarstöðuhlutann fyrir frekari upplýsingar úr viðmótinu hér að neðan.
15. Síðast en ekki síst, reyndu að flytja skrár frá staðbundinni vél yfir á FTP netþjóninn í skráarmöppunni, skoðaðu neðri endann á FileZilla viðmótinu til að skoða skýrslur um skráaflutning.
Það er allt og sumt! Hafðu alltaf í huga að FTP er ekki sjálfgefið öruggt, nema við stillum það til að nota SSL/TLS tengingar eins og við sýndum þér í þessari kennslu. Deildu hugsunum þínum um þessa kennslu/efni í gegnum athugasemdaformið hér að neðan.