Versi 1.2
Penulis:Sampai Brehm
Ikuti howtoforge di Twitter
Dipublikasikan 16-10-2014
Dalam panduan berikut ini saya akan menjelaskan langkah-langkah untuk mengamankan server Anda dari serangan SSL pudel baru-baru ini. Saya akan menggunakan server sempurna ISPConfig 3 pada Debian 7 untuk contoh saya, tetapi langkah yang sama akan bekerja pada Distribusi Linux lainnya juga. Server hosting ISPConfig default menjalankan layanan berikut:Webserver (Nginx atau apache), Mailserver (Postfix dan Dovecot / Kurir), FTP-Server (pure-ftpd) yang menawarkan koneksi SSL / TLS dan merupakan target potensial untuk serangan pudel.
Saya berasumsi bahwa Anda masuk ke server Anda sebagai pengguna root. Jika Anda bekerja di Ubuntu dan tidak login sebagai root, tambahkan "sudo" ke semua perintah atau jalankan "sudo -" untuk menjadi pengguna root.
Server Web Apache
Untuk mengamankan server web apache, baris
SSLProtocol semua -SSLv2 -SSLv3
harus ditambahkan di setiap vhost SSL di server. Jika pengaturan SSLProtocol tidak secara eksplisit diatur dalam vhost, maka pengaturan global akan diterapkan. Dalam kasus server ISPConfig 3, pengaturan SSLProtocol dapat diatur secara global karena vhosts tidak mengesampingkan pengaturan itu. Pada Server Debian atau Ubuntu, buka file /etc/Apache2/mods-available/ssl.conf di editor
nano /etc/Apache2/mods-available/ssl.conf
gulir ke bawah sampai Anda melihat garis:
# aktifkan hanya protokol aman:SSLv3 dan TLSv1, tetapi tidak SSLv2
SSLProtocol all -SSLv2
dan ubah menjadi:
# aktifkan hanya protokol aman:tetapi tidak SSLv2 dan SSLv3
SSLProtocol all -SSLv2 -SSLv3
Kemudian restart apache
layanan apache2 restart
Server Web Nginx
Untuk server web nginx, baris
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
harus ditambahkan di setiap bagian server SSL {}. Jika setelan SSLProtocol tidak secara eksplisit disetel di bagian server {}, maka setelan global dari bagian http {} akan diterapkan. Dalam kasus server ISPConfig 3, pengaturan SSLProtocol dapat disetel secara global di bagian http { } karena bagian server { } tidak mengesampingkan pengaturan itu. Pada Server Debian atau Ubuntu, buka file /etc/nginx/nginx.conf di editor
nano /etc/nginx/nginx.conf
dan tambahkan baris:
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
setelah baris:
http
lalu mulai ulang nginx:
layanan nginx restart
Server email postfix
Untuk memaksa postfix agar tidak menyediakan protokol SSLv2 dan SSLv3, jalankan perintah berikut:
postconf -e 'smtpd_tls_mandatory_protocols=!SSLv2,!SSLv3'
postconf -e 'smtpd_tls_protocols=!SSLv2,!SSLv3'
postconf -e 'smtp_tls_protocols=!
Ini akan menambahkan baris:
smtpd_tls_mandatory_protocols =!SSLv2,!SSLv3
smtpd_tls_protocols =!SSLv2,!SSLv3
smtp_tls_protocols =!SSLv2,!SSLv3
dalam file /etc/postfix/main.cf. Kemudian jalankan perintah ini untuk menerapkan konfigurasi baru:
layanan setelah perbaikan dimulai kembali
Server IMAP / POP3 Dovecot
Dovecot mendukung pengaturan protokol SSL di versi 2.1 dan yang lebih baru. Jadi langkah pertama adalah mencari tahu versi dovecot mana yang Anda gunakan. Perintahnya adalah:
dovecot --version
di server saya, saya mendapatkan hasil berikut:
[dilindungi email]:~# dovecot --version
2.1.7
[dilindungi email]:~#
yang menunjukkan bahwa server saya mendukung pengaturan ssl_protocol.
Edit file konfigurasi dovecot
nano /etc/dovecot/dovecot.conf
dan tambahkan baris
ssl_protocols =!SSLv2 !SSLv3
tepat setelah baris ssl_key, jadi file Anda akan terlihat seperti ini:
ssl_key =ssl_protocols =!SSLv2 !SSLv3
dan terakhir restart dovecot untuk menerapkan perubahan:
layanan dovecot restart
Kurir POP3 / server IMAP
Server imap dan pop3 kurir menawarkan koneksi melalui protokol SSLv3 secara default, jadi kami juga harus mengkonfigurasi ulang. File konfigurasi kurir ada di folder /etc/courier/. Pertama kita mulai dengan file konfigurasi daemon IMAP:
nano /etc/courier/imapd-ssl
Tambahkan atau ganti baris berikut:
IMAPDSTARTTLS=YA
IMAP_TLS_REQUIRED=1
TLS_PROTOCOL=TLS1
TLS_STARTTLS_PROTOCOL=TLS1
Kemudian edit file konfigurasi Daemon POP3:
nano /etc/courier/pop3d-ssl
Tambahkan atau ganti baris berikut:
POP3STARTTLS=YA
POP3_TLS_REQUIRED=1
TLS_PROTOCOL=TLS1
TLS_STARTTLS_PROTOCOL=TLS1
Terakhir restart daemon kurir:
layanan kurir-imap-ssl mulai ulang
layanan kurir-pop-ssl mulai ulang
FTP dengan pure-ftpd
Mengamankan pure-ftpd di Debian dan Ubuntu sedikit lebih rumit karena skrip /usr/sbin/pure-ftpd-wrapper dari Debian tidak mendukung -J switch yang digunakan oleh pure-ftpd untuk mengatur protokol ssl. Jadi langkah pertama adalah menambahkan dukungan untuk opsi -J di skrip pembungkus. Ini tidak akan berfungsi di Debian 6 karena Versi ftpd murni di Debian 6 terlalu lama dan tidak memiliki setelan untuk protokol SSL. Jadi satu-satunya opsi untuk pengguna Debian 6 adalah meningkatkan ke Debian 7. Buka filenya
nano /usr/sbin/pure-ftpd-wrapper
dan gulir ke bawah ke baris
'TLS' => ['-Y %d', \&parse_number_1],
dan tambahkan baris baru ini setelahnya:
'TLSCipherSuite' => ['-J %s', \&parse_string],
Terakhir kita buat file konfigurasi yang berisi protokol SSL yang ingin kita izinkan:
echo 'HIGH:MEDIUM:+TLSv1:!SSLv2:!SSLv3'> /etc/pure-ftpd/conf/TLSCipherSuite
untuk menerapkan perubahan, mulai ulang pure-ftpd. Di server saya, saya menggunakan pure-ftpd dengan mysql, jadi nama daemonnya adalah pure-ftpd-mysql bukan hanya pure-ftpd.
service pure-ftpd-mysql restart
hasilnya harus seperti ini:
[dilindungi email]:~# service pure-ftpd-mysql restart
Restart server ftp:Menjalankan:/usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql .conf -l pam -Y 1 -8 UTF-8 -H -J HIGH:MEDIUM:+TLSv1:!SSLv2:!SSLv3 -D -b -O clf:/var/log/pure-ftpd/transfer.log - E -u 1000 -A -B
[email protected]:~#
jadi opsi -J telah berhasil ditambahkan ke urutan awal daemon.
Tautan
- Serangan pudel SSL
- ISPConfig