Saya ingin iptables hanya memfilter satu antarmuka, eth0, yang menghadap WAN. Bagaimana ini bisa dilakukan? Dan saya ingin menjaga port ftp dan ssh terbuka di eth0.
Saya ingin iptables hanya memfilter satu antarmuka, eth0, yang menghadap WAN. Bagaimana ini bisa dilakukan? Dan saya ingin menjaga port ftp dan ssh terbuka di eth0.
Jawaban:
Jadi untuk semua antarmuka kecuali satu Anda ingin menerima semua lalu lintas, dan pada eth0 Anda ingin membuang semua lalu lintas masuk kecuali ftp dan ssh.
Pertama, kita dapat menetapkan kebijakan untuk menerima semua lalu lintas secara default.
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
Kemudian, kami dapat mengatur ulang aturan firewall Anda.
iptables -F
Sekarang kita dapat mengatakan bahwa kita ingin mengizinkan lalu lintas masuk pada eth0 yang merupakan bagian dari koneksi yang sudah kita izinkan.
iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
Kami juga ingin mengizinkan koneksi ssh masuk pada eth0.
iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT
Tapi apa pun yang masuk pada eth0 harus dibatalkan.
iptables -A INPUT -i eth0 -j DROP
Untuk sedikit lebih dalam lihat entri wiki CentOS ini .
FTP lebih rumit daripada ssh karena dapat menggunakan port acak, jadi lihat pertanyaan sebelumnya .
Sesuatu seperti ini harus melakukan pekerjaan:
iptables -A INPUT -i eth1 -p all -j DROP
iptables -A INPUT -i eth0 -p all -j ACCEPT
ACCEPT
semuanya di antarmuka lainnya.
Pilihan untuk menentukan sebuah antarmuka dalam aturan iptables Anda -i
, misalnya: -i eth0
.
Sangat sederhana ketika Anda membuat iptables
aturan maka Anda harus menentukan antarmuka. Pilihan untuk menentukan kartu LAN di mana iptables
harus bekerja adalah-i
Aturan berikut dapat memberi Anda contoh yang baik
iptables -A INPUT -p tcp -i eth0 --dport 22 -j ACCEPT
iptables -A INPUT -p tcp -i eth0 --dport 21 -j ACCEPT
iptables -A INPUT -p tcp -i eth0 -j REJECT --reject-with tcp-reset
Aturan terakhir adalah menolak paket lain yang tidak cocok dengan 2 aturan pertama. Semua aturan di iptables
dieksekusi dalam urutan yang diberikan, sehingga aturan untuk menolak paket selalu yang terakhir.