Menyediakan pelayan FTP yang selamat menggunakan SSL/TLS di Ubuntu

Menyediakan pelayan FTP yang selamat menggunakan SSL/TLS di Ubuntu

Dalam tutorial ini, kami akan menerangkan bagaimana untuk menjamin a Ftp pelayan (Vsftpd bermaksud "Daemon FTP yang sangat selamat") Menggunakan SSL/TLS dalam Ubuntu 16.04/16.10.

Sekiranya anda ingin menyediakan pelayan FTP yang selamat untuk pengedaran berasaskan CentOS, anda boleh membaca - selamatkan pelayan FTP menggunakan SSL/TLS di CentOS

Setelah mengikuti pelbagai langkah dalam panduan ini, kami akan mempelajari asas -asas untuk membolehkan perkhidmatan penyulitan dalam pelayan FTP untuk pemindahan data yang selamat adalah penting.

Keperluan

  1. Anda mesti memasang dan mengkonfigurasi pelayan FTP di Ubuntu

Sebelum kita bergerak lebih jauh, pastikan semua arahan dalam artikel ini akan dijalankan sebagai akaun istimewa akar atau sudo.

Langkah 1: Menjana sijil SSL/TLS untuk FTP di Ubuntu

1. Kami akan bermula dengan mewujudkan subdirektori di bawah: /etc/ssl/ untuk menyimpan SSL/TLS Sijil dan fail utama jika ia tidak wujud:

$ sudo mkdir/etc/ssl/swasta 

2. Sekarang mari kita menghasilkan sijil dan kunci dalam satu fail, dengan menjalankan arahan di bawah.

$ sudo openssl req -x509 -nodes -keyout/etc/ssl/swasta/vsftpd.PEM -out/etc/ssl/swasta/vsftpd.PEM -Day 365 -Newkey RSA: 2048 

Perintah di atas akan meminta anda menjawab soalan di bawah, jangan lupa memasukkan nilai yang berkenaan dengan senario anda.

Nama Negara (2 Kod Surat) [xx]:Dalam Nama Negeri atau Wilayah (Nama Penuh) []:Parel yang lebih rendah Nama lokasi (misalnya, bandar) [kota lalai]:Mumbai Nama Organisasi (misalnya, Syarikat) [Default Company Ltd]:Tecmint.com Nama unit organisasi (misalnya, seksyen) []:Linux dan sumber terbuka Nama Biasa (misalnya, nama anda atau nama hos pelayan anda) []:Tecmint Alamat emel []:[dilindungi e -mel] 

Langkah 2: Mengkonfigurasi VSFTPD untuk menggunakan SSL/TLS di Ubuntu

3. Sebelum kita melakukan apa -apa Vsftpd Konfigurasi, bagi mereka yang mempunyai firewall UFW diaktifkan, anda perlu membuka pelabuhan 990 dan 40000-50000 Untuk membenarkan sambungan TLS dan julat port port pasif untuk ditetapkan dalam fail konfigurasi VSFTPD masing -masing:

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

4. Sekarang, buka fail konfigurasi VSFTPD dan tentukan butiran SSL di dalamnya:

$ sudo vi/etc/vsftpd/vsftpd.conf atau $ sudo nano/etc/vsftpd/vsftpd.Conf 

Kemudian, tambahkan atau cari pilihan ssl_enable dan menetapkan nilainya Ya Untuk mengaktifkan penggunaan SSL, sekali lagi, kerana TLS lebih selamat daripada SSL, kami akan menyekat VSFTPD untuk menggunakan TLS sebaliknya, dengan membolehkan SSL_TLSV1 pilihan:

ssl_enable = ya ssl_tlsv1 = ya ssl_sslv2 = no ssl_sslv3 = no 

5. Seterusnya, komen garis di bawah menggunakan # watak seperti berikut:

#rsa_cert_file =/etc/ssl/swasta/ssl-cert-snakeoil.PEM #rsa_private_key_file =/etc/ssl/swasta/ssl-cert-snakeoil.kunci 

Selepas itu, tambahkan garisan di bawah untuk menentukan lokasi sijil SSL dan fail utama:

rsa_cert_file =/etc/ssl/swasta/vsftpd.PEM RSA_PRIVATE_KEY_FILE =/etc/ssl/swasta/vsftpd.PEM 

6. Sekarang, kita juga perlu menghalang pengguna tanpa nama daripada menggunakan SSL, kemudian memaksa semua log masuk yang tidak dikenali untuk menggunakan sambungan SSL yang selamat untuk pemindahan data dan menghantar kata laluan semasa log masuk:

membenarkan_anon_ssl = tiada force_local_data_ssl = ya force_local_logins_ssl = ya 

7. Selain itu, kita boleh menggunakan pilihan di bawah untuk menambah lebih banyak ciri keselamatan di pelayan FTP. Dengan pilihan memerlukan_ssl_reuse = ya, Semua sambungan data SSL diperlukan untuk mempamerkan penggunaan semula sesi SSL; membuktikan bahawa mereka tahu rahsia induk yang sama dengan saluran kawalan. Oleh itu, kita harus melumpuhkannya.

memerlukan_ssl_reuse = no 

Di samping ssl_ciphers pilihan. Ini akan membantu menggagalkan sebarang usaha oleh penyerang yang cuba memaksa cipher tertentu yang mungkin mereka dapati kelemahan dalam:

ssl_ciphers = tinggi 

8. Kemudian, mari kita tentukan julat pelabuhan (min dan port max) pelabuhan pasif.

pasv_min_port = 40000 pasv_max_port = 50000 

9. Untuk membolehkan penyahpepijatan SSL, yang bermaksud diagnostik sambungan openSSL direkodkan ke fail log vsftpd, kita boleh menggunakan DEBUG_SSL pilihan:

DEBUG_SSL = YA 

Akhirnya simpan fail dan tutupnya. Kemudian mulakan semula perkhidmatan vsftpd:

$ Systemctl mulakan semula vsftpd 

Langkah 3: Sahkan FTP dengan sambungan SSL/TLS di Ubuntu

10. Setelah melakukan semua konfigurasi di atas, uji jika VSFTPD kini menggunakan sambungan SSL/TLS dengan cuba menggunakan FTP dari baris arahan seperti di bawah.

Dari output di bawah, terdapat mesej ralat yang memberitahu kami vsftpd hanya boleh membenarkan pengguna (bukan anonim) untuk log masuk dari klien selamat yang menyokong perkhidmatan penyulitan.

$ FTP 192.168.56.10 Disambungkan ke 192.168.56.10 (192.168.56.10). 220 Selamat Datang ke Tecmint.Com FTP Service. Nama (192.168.56.10: Root): Ravi 530 sesi bukan anonim mesti menggunakan penyulitan. Daftar masuk gagal. Perkhidmatan 421 tidak tersedia, Pelayan Jauh telah menutup sambungan FTP> 

Baris arahan tidak menyokong perkhidmatan penyulitan sehingga mengakibatkan ralat di atas. Oleh itu, dengan selamat menyambung ke pelayan FTP dengan perkhidmatan penyulitan yang didayakan, kami memerlukan klien FTP yang menyokong sambungan SSL/TLS secara lalai, seperti FileZilla.

Langkah 4: Pasang FileZilla pada pelanggan untuk menyambung FTP dengan selamat

FileZilla adalah klien FTP silang platform yang kuat dan digunakan secara meluas yang menyokong FTP melalui SSL/TLS dan banyak lagi. Untuk memasang FileZilla pada mesin klien Linux, gunakan arahan berikut.

--------- Di Debian/Ubuntu --------- $ sudo apt-get memasang filezilla --------- Pada Centos/RHEL/FEDORA --------- # yum pasang filezilla epel-release --------- Pada Fedora 22+ --------- $ sudo dnf memasang filezilla 

12. Setelah pemasangan selesai, buka dan pergi ke Fail => pengurus laman web atau (tekan Ctrl+s) untuk mendapatkan Pengurus tapak antara muka di bawah.

Pengurus Tapak FileZilla

13. Sekarang, tentukan nama hos/tapak, tambahkan alamat IP, tentukan protokol untuk digunakan, jenis penyulitan dan log masuk seperti dalam pukulan skrin di bawah (gunakan nilai yang digunakan untuk senario anda):

Klik pada Laman web baru butang untuk mengkonfigurasi sambungan tapak/tuan rumah baru.

Tuan rumah: 192.168.56.10 Protokol: FTP - Protokol Pemindahan Fail Penyulitan: Memerlukan FTP yang jelas berakhir Jenis log masuk #dikemukakan: Minta kata laluan #Pengguna yang dikemukakan: nama pengguna 
Konfigurasikan laman FTP baru di FileZilla

14. Kemudian klik pada Sambung dari antara muka di atas untuk memasukkan kata laluan, dan kemudian sahkan sijil yang digunakan untuk SSL/TLS sambungan, dan klik okey Sekali lagi untuk menyambung ke pelayan FTP:

Sahkan sijil SSL FTP

15. Sekarang, anda sepatutnya berjaya melog masuk ke pelayan FTP melalui sambungan TLS, periksa bahagian Status Sambungan untuk maklumat lanjut dari antara muka di bawah.

Disambungkan ke pelayan FTP Ubuntu

16. Akhir sekali, mari memindahkan fail dari mesin tempatan ke Sever FTP dalam folder Fail, lihat pada bahagian bawah antara muka FileZilla untuk melihat laporan mengenai pemindahan fail.

Pemindahan fail FTP selamat menggunakan FileZilla

Itu sahaja! Sentiasa ingat bahawa memasang pelayan FTP tanpa membolehkan perkhidmatan penyulitan mempunyai implikasi keselamatan tertentu. Seperti yang dijelaskan dalam tutorial ini, anda boleh mengkonfigurasi pelayan FTP untuk menggunakan sambungan SSL/TLS untuk melaksanakan keselamatan di Ubuntu 16.04/16.10.

Sekiranya anda menghadapi sebarang masalah dalam menubuhkan SSL/TLS pada pelayan FTP, gunakan borang komen di bawah untuk berkongsi masalah atau pemikiran anda mengenai tutorial/topik ini.