Setja upp öruggan FTP netþjón með SSL/TLS á Ubuntu


Í þessari kennslu munum við lýsa því hvernig á að tryggja FTP netþjón (VSFFTPD stendur fyrir Very Secure FTP Daemon) með SSL/TLS í Ubuntu 16.04/16.10.

Ef þú ert að leita að því að setja upp öruggan FTP netþjón fyrir CentOS byggðar dreifingar geturðu lesið - Öruggaðu FTP netþjón með SSL/TLS á CentOS

Eftir að hafa fylgt hinum ýmsu skrefum í þessari handbók munum við hafa lært grundvallaratriðin í því að virkja dulkóðunarþjónustu á FTP-þjóni fyrir örugga gagnaflutninga er mikilvægt.

  1. Þú verður að setja upp og stilla FTP netþjón í Ubuntu

Áður en lengra er haldið skaltu ganga úr skugga um að allar skipanir í þessari grein verði keyrðar sem rót eða sudo forréttindareikningur.

Skref 1: Búa til SSL/TLS vottorð fyrir FTP á Ubuntu

1. Við byrjum á því að búa til undirmöppu undir: /etc/ssl/ til að geyma SSL/TLS vottorðið og lykilskrár ef það er ekki til:

$ sudo mkdir /etc/ssl/private

2. Nú skulum við búa til vottorðið og slá inn eina skrá með því að keyra skipunina hér að neðan.

$ sudo openssl req -x509 -nodes -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem -days 365 -newkey rsa:2048

Ofangreind skipun mun hvetja þig til að svara spurningunum hér að neðan, ekki gleyma að slá inn gildi sem eiga við um 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 á Ubuntu

3. Áður en við framkvæmum einhverjar VSFTPD stillingar, fyrir þá sem hafa UFW eldvegg virkan, verður þú að opna tengin 990 og 40000-50000 til að leyfa TLS tengingar og hafnarsvið óvirkra hafna að stilla í VSFTPD stillingarskránni í sömu röð:

$ sudo ufw allow 990/tcp
$ sudo ufw allow 40000:50000/tcp
$ sudo ufw status

4. Opnaðu nú VSFTPD stillingarskrána og skilgreindu SSL upplýsingarnar í henni:

$ sudo vi /etc/vsftpd/vsftpd.conf
OR
$ sudo nano /etc/vsftpd/vsftpd.conf

Bættu síðan við eða finndu valkostinn ssl_enable og stilltu gildi hans á YES til að virkja notkun SSL, aftur, vegna þess að TLS er öruggara en SSL, munum við takmarka VSFTPD til að nota TLS í staðinn, með því að virkja ssl_tlsv1 valkostur:

ssl_enable=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO

5. Næst skaltu skrifa athugasemdir við línurnar hér að neðan með því að nota # stafinn sem hér segir:

#rsa_cert_file=/etc/ssl/private/ssl-cert-snakeoil.pem
#rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key

Síðan skaltu bæta við línunum hér að neðan til að skilgreina staðsetningu SSL vottorðsins og lykilskráar:

rsa_cert_file=/etc/ssl/private/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem

6. Nú verðum við líka að koma í veg fyrir að nafnlausir notendur noti SSL, þvinga síðan 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. Ennfremur getum við notað valkostina hér að neðan til að bæta við fleiri öryggiseiginleikum á FTP þjóninum. Með valkostinum require_ssl_reuse=JÁ, eru allar SSL gagnatengingar nauðsynlegar til að sýna endurnotkun SSL lotunnar; sem sannar að þeir vita sama aðalleyndarmálið og stjórnrásin. Svo við ættum að slökkva á því.

require_ssl_reuse=NO

Að auki getum við stillt hvaða SSL dulmál VSFTPD leyfir fyrir dulkóðaðar SSL tengingar með ssl_ciphers valkostinum. Þetta mun hjálpa til við að hindra allar tilraunir árásarmanna sem reyna að þvinga tiltekið dulmál sem þeir mögulega uppgötvuðu veikleika í:

ssl_ciphers=HIGH

8. Þá skulum við skilgreina hafnarsvið (lág. og hámarkshöfn) óvirkra hafna.

pasv_min_port=40000
pasv_max_port=50000

9. Til að virkja SSL kembiforrit, sem þýðir að greiningar á opnum SSL tengingum eru skráðar í VSFTPD skrána, getum við notað debug_ssl valkostinn:

debug_ssl=YES

Vistaðu að lokum skrána og lokaðu henni. Endurræstu síðan VSFTPD þjónustu:

$ systemctl restart vsftpd

Skref 3: Staðfestu FTP með SSL/TLS tengingum á Ubuntu

10. Eftir að hafa framkvæmt allar ofangreindar stillingar skaltu prófa hvort VSFTPD noti nú SSL/TLS tengingar með því að reyna að nota FTP frá skipanalínunni eins og hér að neðan.

Frá úttakinu hér að neðan eru villuboð sem segja okkur að VSFTPD geti aðeins leyft notendum (ekki nafnlausum) að skrá sig inn frá öruggum viðskiptavinum sem styðja dulkóðunarþjónustu.

$ 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>

Skipanalínan styður ekki dulkóðunarþjónustu sem leiðir til villunnar hér að ofan. Þess vegna þurfum við FTP biðlara sem styður SSL/TLS tengingar sjálfgefið til að tengjast FTP netþjóni með dulkóðunarþjónustu virka, eins og FileZilla.

Skref 4: Settu upp FileZilla á viðskiptavinum til að tengja FTP á öruggan hátt

FileZilla er öflugur, mikið notaður FTP viðskiptavinur sem styður FTP yfir SSL/TLS og fleira. Til að setja upp FileZilla á Linux biðlara vél skaltu nota eftirfarandi skipun.

--------- 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. Þegar uppsetningunni er lokið, 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.

13. Skilgreindu nú heiti gestgjafans/síðunnar, bættu við IP tölunni, skilgreindu samskiptaregluna 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):

Smelltu á New Site hnappinn til að stilla nýja síðu/hýsingartengingu.

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 síðan á Connect frá viðmótinu hér að ofan til að slá inn lykilorðið og staðfestu síðan vottorðið sem er notað fyrir SSL/TLS tenginguna og smelltu á OK einu sinni enn til að tengjast FTP þjóninum:

15. Nú ættir þú að hafa skráð þig inn á FTP þjóninn með TLS tengingu, athugaðu tengingarstöðuhlutann fyrir frekari upplýsingar úr viðmótinu hér að neðan.

16. Að lokum skulum við flytja skrár frá staðbundinni vél yfir á FTP netþjóninn í skráarmöppunni, kíkja á neðri enda FileZilla viðmótsins til að skoða skýrslur um skráaflutning.

Það er allt og sumt! Mundu alltaf að það að setja upp FTP netþjón án þess að virkja dulkóðunarþjónustu hefur ákveðnar öryggisáhrif. Eins og við útskýrðum í þessari kennslu geturðu stillt FTP netþjón til að nota SSL/TLS tengingar til að innleiða öryggi í Ubuntu 16.04/16.10.

Ef þú stendur frammi fyrir einhverjum vandamálum við að setja upp SSL/TLS á FTP netþjóni, notaðu þá athugasemdareyðublaðið hér að neðan til að deila vandamálum þínum eða hugsunum varðandi þessa kennslu/efni.