Panduan ini akan mencoba menjelaskan cara menggunakan iptables di linux dalam bahasa yang mudah dimengerti.
Isi[menyembunyikan]
|
Iptables adalah firewall berbasis aturan, yang akan memproses setiap aturan secara berurutan hingga menemukan satu yang cocok.
Todo: sertakan contoh di sini
Utilitas iptables biasanya sudah diinstal sebelumnya pada distribusi linux Anda, tetapi sebenarnya tidak menjalankan aturan apa pun. Anda akan menemukan utilitas di sini pada sebagian besar distribusi:
/ sbin / iptables
Anda dapat memblokir IP dengan menggunakan parameter -s, mengganti 10.10.10.10 dengan alamat yang Anda coba blokir. Anda akan mencatat dalam contoh ini bahwa kami menggunakan parameter -I (atau -menyerahkan juga) daripada tambahan, karena kami ingin memastikan aturan ini muncul terlebih dahulu, sebelum mengizinkan aturan apa pun.
/ sbin / iptables -I INPUT -s 10.10.10.10 -j DROP
Anda dapat secara bergantian mengijinkan semua lalu lintas dari alamat IP dengan menggunakan perintah yang sama seperti di atas, tetapi mengganti DROP dengan ACCEPT. Anda perlu memastikan bahwa aturan ini muncul pertama, sebelum aturan DROP.
/ sbin / iptables -A INPUT -s 10.10.10.10 -j SETUJU
Anda dapat memblokir port seluruhnya dari akses melalui jaringan dengan menggunakan sakelar -dport dan menambahkan port layanan yang ingin Anda blokir. Dalam contoh ini, kami akan memblokir port mysql:
/ sbin / iptables -A INPUT -p tcp --dport 3306 -j DROP
Anda dapat menambahkan perintah -s bersama dengan perintah -dport untuk lebih membatasi aturan ke port tertentu:
/ sbin / iptables -A INPUT -p tcp -s 10.10.10.10 --dport 3306 -j SETUJU
Anda dapat melihat aturan saat ini menggunakan perintah berikut:
/ sbin / iptables -L
Ini akan memberi Anda output yang serupa dengan yang berikut:
Chain INPUT (policy ACCEPT) target prot opt source destination ACCEPT all - 192.168.1.1/24 di mana saja ACCEPT all - 10.10.10.0/24 di mana saja DROP tcp - di mana saja di mana saja tcp dpt: ssh DROP tcp - di mana saja di mana saja tcp dpt: mysql
Keluaran sebenarnya akan sedikit lebih panjang, tentu saja.
Anda dapat menghapus semua aturan saat ini dengan menggunakan parameter flush. Ini sangat berguna jika Anda perlu menempatkan aturan dalam urutan yang benar, atau ketika Anda sedang menguji.
/ sbin / iptables --flush
Sementara sebagian besar distribusi Linux termasuk bentuk iptables, beberapa dari mereka juga termasuk pembungkus yang membuat manajemen sedikit lebih mudah. Paling sering ini "addons" mengambil bentuk skrip init yang mengurus inisialisasi iptables pada startup, meskipun beberapa distribusi juga termasuk aplikasi wrapper full-blown yang berusaha menyederhanakan kasus umum.
Ituiptables skrip init pada Gentoo mampu menangani banyak skenario umum. Sebagai permulaan, ini memungkinkan Anda mengkonfigurasi iptables untuk memuat saat startup (biasanya apa yang Anda inginkan):
rc-update menambahkan iptables default
Dengan menggunakan skrip init, dimungkinkan untuk memuat dan menghapus firewall dengan perintah yang mudah diingat:
/etc/init.d/iptables memulai /etc/init.d/iptables berhenti
Skrip init menangani detail dari mempertahankan konfigurasi firewall Anda saat ini pada start / stop. Dengan demikian, firewall Anda selalu dalam keadaan Anda meninggalkannya. Jika Anda perlu menyimpan aturan baru secara manual, skrip init dapat menangani ini juga:
/etc/init.d/iptables simpan
Selain itu, Anda dapat memulihkan firewall Anda ke keadaan tersimpan sebelumnya (untuk kasus di mana Anda bereksperimen dengan aturan dan sekarang ingin mengembalikan konfigurasi kerja sebelumnya):
/etc/init.d/iptables dimuat ulang
Akhirnya, skrip init dapat menempatkan iptables ke dalam mode "panik", di mana semua lalu lintas masuk dan keluar diblokir. Saya tidak yakin mengapa mode ini berguna, tetapi semua firewall Linux tampaknya memilikinya.
/etc/init.d/iptables panik
Peringatan: Jangan memulai mode panik jika Anda terhubung ke server Anda melalui SSH; kamuakan terputus! Satu-satunya waktu Anda harus menempatkan iptables ke dalam mode panik adalah saat Andasecara fisik di depan komputer.