Sayangnya tidak ada skrip yang pernah saya lihat yang dapat berjalan dalam mode pembelajaran atau mode pasif masuk semua penggunaan jaringan Anda, mengambil hasilnya dan menghasilkan firewall yang sebenarnya menggunakan iptables
dari log-nya.
Taruhan terbaik Anda adalah memulai dengan sederhana dan terus-menerus menambahkan berbagai potongan saat Anda mulai memahami sepenuhnya layanan apa yang disediakan sistem Anda. Anda harus menggunakan alat-alat seperti netstat
untuk melihat port apa yang digunakan untuk berbagai layanan yang Anda host, serta alamat IP apa yang mengaksesnya.
$ sudo netstat -tlpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN 26292/sendmail
tcp 0 0 0.0.0.0:890 0.0.0.0:* LISTEN 26149/ypbind
tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 26321/smbd
tcp 0 0 127.0.0.1:2207 0.0.0.0:* LISTEN 26226/python
tcp 0 0 127.0.0.1:2208 0.0.0.0:* LISTEN 26221/./hpiod
tcp 0 0 127.0.0.1:199 0.0.0.0:* LISTEN 26237/snmpd
tcp 0 0 0.0.0.0:809 0.0.0.0:* LISTEN 26067/rpc.statd
tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 26321/smbd
tcp 0 0 0.0.0.0:587 0.0.0.0:* LISTEN 26292/sendmail
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 26038/portmap
tcp 0 0 0.0.0.0:35604 0.0.0.0:* LISTEN -
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 26249/sshd
tcp 0 0 0.0.0.0:631 0.0.0.0:* LISTEN 26257/cupsd
tcp 0 0 :::22 :::* LISTEN 26249/sshd
tcp 0 0 :::631 :::* LISTEN 26257/cupsd
CATATAN: Di atas, Anda dapat melihat layanan apa yang saya jalankan di server yang menerima koneksi TCP, yaitu mereka "mendengarkan" untuk koneksi pada berbagai port.
Tidak sulit untuk memulai dengan hal-hal seperti SSH (port 22) dan HTTP (port 80), jika ini khas untuk sistem Anda, jadi saya akan melakukan jenis layanan ini secara massal sekaligus. Untuk layanan lain seperti LDAP atau NIS Anda mungkin ingin melakukan ini dengan cara yang lebih terkontrol, memastikan hal-hal tidak rusak saat Anda memperkenalkannya.
Alat-alat seperti FireHOL , Firewall Builder (fwbuilder), dan eztables mungkin membantu ketika Anda menyerang proyek ini, karena mereka memberikan lapisan abstraksi yang bagus karena harus membuat iptable
aturan khusus dengan tangan, yang bisa rumit.
FireHOL
FireHOL adalah bahasa (dan program untuk menjalankannya) yang membangun firewall yang aman dan stateful dari segala kerumitan dari konfigurasi yang mudah dipahami dan dapat dibaca oleh manusia.
contoh
transparent_squid 8080 "squid root" inface eth0
interface eth0 mylan
policy accept
interface ppp+ internet
server smtp accept
server http accept
server ftp accept
server ssh accept src example.firehol.org
client all accept
router mylan2internet inface eth0 outface ppp+
masquerade
route all accept
fwbuilder
Fwbuilder adalah alat firewall grafis unik yang memungkinkan pengguna untuk membuat objek dan kemudian menyeret dan menjatuhkan objek-objek itu ke firewall, untuk membangun sistem keamanan yang kuat untuk satu PC atau jaringan PC. Fwbuilder mendukung beragam firewall (Cisco ASA / PIX, Linux iptables, ipfilter FreeBSD, pf OpenBSD, dan banyak lagi), sehingga aturannya dapat diterapkan pada beberapa platform. Mari kita lihat menggunakan Fwbuilder di Linux, yang mungkin hanya menjadi urusan seumur hidup dengan sistem keamanan yang kuat.
contoh
eztables
Eztables memungkinkan Anda untuk dengan cepat mengkonfigurasi firewall tanpa pernah menyentuh iptables. Sintaks aturan firewall dirancang agar mudah dibaca dan diterapkan.
Ini adalah bagaimana Anda mengizinkan seluruh internet untuk mengakses server web Anda pada TCP-port 80:
allow_in any $eth0 any 80/tcp
Eztables dirancang untuk menjadi sederhana, namun kuat. Tidak masalah jika Anda ingin melindungi laptop Anda, mengatur router rumah, atau membangun firewall perusahaan.
Menggunakan Fail2Ban
Dengan iptables
firewall yang belum sempurna di tempat Anda mungkin ingin memujinya menggunakan alat seperti Fail2Ban .
kutipan
Fail2ban memindai file log (mis. / Var / log / apache / error_log) dan melarang IP yang menunjukkan tanda-tanda berbahaya - terlalu banyak kegagalan kata sandi, mencari eksploitasi, dll. Umumnya Fail2Ban kemudian digunakan untuk memperbarui aturan firewall untuk menolak alamat IP untuk jumlah waktu tertentu, meskipun tindakan sewenang-wenang lainnya (misalnya mengirim email) juga dapat dikonfigurasi. Out of the box Fail2Ban dilengkapi dengan filter untuk berbagai layanan (apache, kurir, ssh, dll).
Menggunakan alat-alat seperti ini akan membantu membatasi paparan yang harus ditanggung oleh sistem Anda saat Anda terus mengerasnya. Bahkan setelah Anda cukup yakin bahwa sistem Anda telah dikeraskan, Anda mungkin masih ingin terus menggunakan Fail2Ban sebagai bagian dari langkah-langkah keamanan Anda.
Referensi