FTP adalah protokol yang sangat tidak aman karena semua kata sandi dan semua data ditransfer dalam teks yang jelas. Dengan menggunakan TLS, seluruh komunikasi dapat dienkripsi, sehingga membuat FTP jauh lebih aman. Artikel ini menjelaskan cara mengonfigurasi PureFTPd untuk menerima sesi TLS di server CentOS 6.2.
1 Catatan Awal
Anda harus memiliki pengaturan PureFTPd yang berfungsi di server CentOS 6.2 Anda, mis. seperti yang ditunjukkan dalam tutorial ini:Hosting Virtual Dengan PureFTPd Dan MySQL (Termasuk Kuota Dan Manajemen Bandwidth) Pada CentOS 6.2.
2 Menginstal OpenSSL
OpenSSL dibutuhkan oleh TLS; untuk menginstal OpenSSL, kita cukup menjalankan:
yum install openssl
3 Mengonfigurasi PureFTPd
Buka /etc/pure-ftpd/pure-ftpd.conf...
vi /etc/pure-ftpd/pure-ftpd.conf
Jika Anda ingin mengizinkan FTP dan Sesi TLS, setel TLS ke 1:
[...] # This option can accept three values : # 0 : disable SSL/TLS encryption layer (default). # 1 : accept both traditional and encrypted sessions. # 2 : refuse connections that don't use SSL/TLS security mechanisms, # including anonymous sessions. # Do _not_ uncomment this blindly. Be sure that : # 1) Your server has been compiled with SSL/TLS support (--with-tls), # 2) A valid certificate is in place, # 3) Only compatible clients will log in. TLS 1 [...] |
Jika Anda ingin menerima sesi TLS saja (tanpa FTP), setel TLS ke 2:
[...] # This option can accept three values : # 0 : disable SSL/TLS encryption layer (default). # 1 : accept both traditional and encrypted sessions. # 2 : refuse connections that don't use SSL/TLS security mechanisms, # including anonymous sessions. # Do _not_ uncomment this blindly. Be sure that : # 1) Your server has been compiled with SSL/TLS support (--with-tls), # 2) A valid certificate is in place, # 3) Only compatible clients will log in. TLS 2 [...] |
Untuk tidak mengizinkan TLS sama sekali (hanya FTP), setel TLS ke 0:
[...] # This option can accept three values : # 0 : disable SSL/TLS encryption layer (default). # 1 : accept both traditional and encrypted sessions. # 2 : refuse connections that don't use SSL/TLS security mechanisms, # including anonymous sessions. # Do _not_ uncomment this blindly. Be sure that : # 1) Your server has been compiled with SSL/TLS support (--with-tls), # 2) A valid certificate is in place, # 3) Only compatible clients will log in. TLS 0 [...] |
4 Membuat Sertifikat SSL Untuk TLS
Untuk menggunakan TLS, kita harus membuat sertifikat SSL. Saya membuatnya di /etc/ssl/private/, oleh karena itu saya membuat direktori itu terlebih dahulu:
mkdir -p /etc/ssl/private/
Setelah itu, kita dapat membuat sertifikat SSL sebagai berikut:
openssl req -x509 -nodes -days 7300 -newkey rsa:2048 -keyout /etc/ssl/private/pure-ftpd.pem -out /etc/ssl/private/pure-ftpd.pem
Nama Negara (kode 2 huruf) [XX]:<-- Masukkan Nama Negara Anda (mis., "DE").
Nama Negara Bagian atau Provinsi (nama lengkap) []:<-- Masukkan Nama Negara Bagian atau Provinsi Anda .
Nama Lokalitas (mis., kota) [Kota Bawaan]:<-- Masukkan Kota Anda.
Nama Organisasi (mis., perusahaan) [Perusahaan Bawaan Ltd]:<-- Masukkan Nama Organisasi Anda (mis. , nama perusahaan Anda).
Nama Unit Organisasi (mis., bagian) []:<-- Masukkan Nama Unit Organisasi Anda (mis. "Departemen TI").
Nama Umum (mis., nama Anda atau nama host server Anda) []:<-- Masukkan Nama Domain yang Sepenuhnya Memenuhi Syarat dari sistem (mis. "server1.example.com").
Alamat Email []:<-- Masukkan Alamat Email Anda.
Ubah izin sertifikat SSL:
chmod 600 /etc/ssl/private/pure-ftpd.pem
Akhirnya restart PureFTPd:
/etc/init.d/pure-ftpd restart
Itu dia. Anda sekarang dapat mencoba terhubung menggunakan klien FTP Anda; namun, Anda harus mengonfigurasi klien FTP Anda untuk menggunakan TLS - lihat bab berikutnya tentang cara melakukannya dengan FileZilla.
5 Mengonfigurasi FileZilla Untuk TLS
Untuk menggunakan FTP dengan TLS, Anda memerlukan klien FTP yang mendukung TLS, seperti FileZilla.
Di FileZilla, buka Manajer Server:
Pilih server yang menggunakan PureFTPd dengan TLS; di menu tarik-turun Jenis Server, pilih FTPES alih-alih FTP biasa:
Sekarang Anda dapat terhubung ke server. Jika Anda melakukan ini untuk pertama kalinya, Anda harus menerima sertifikat SSL baru dari server:
Jika semuanya berjalan dengan baik, Anda sekarang harus masuk ke server:
6 Tautan
- PureFTPd:http://www.pureftpd.org/
- FileZilla:http://filezilla-project.org/
- CentOS:http://www.centos.org/