Bagian dari firewall di server:
iptables -A INPUT -p tcp --dport 22 -m state NEW --state -m recent --set
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 100 --hitcount 10 -j DROP
Ketika saya mencari secara online, saya selalu melihat BARU digunakan dalam aturan itu, tetapi saya kesulitan memahami mengapa ESTABLISHED dan RELATED tidak digunakan.
Seperti ini :
iptables -A INPUT -p tcp --dport 22 -m state NEW,ESTABLISHED,RELATED --state -m recent --set
iptables -A INPUT -p tcp --dport 22 -m state --state NEW,ESTABLISHED,RELATED -m recent --update --seconds 100 --hitcount 10 -j DROP
Dapatkah seseorang menjelaskan kepada saya kapan tepatnya paket BARU berubah menjadi DIDIRIKAN dan TERKAIT?
SYN
/ACK
/RST
/ etc saat mereka melewati router, dan saya berharap iptables melakukan ini.Asumming baik untuk server dan client bersifat restriktif
INPUT
dan terbukaOUTPUT
, yaitu:Dan dari iptables-extensions (8) di atas contoh FTP dalam mode aktif:
1. BARU
Client on port
50000
(sembarang port unprivileged acak) terhubung ke server FTP pada port21
, server akan memerlukan setidaknya ini untuk menerima koneksi masuk ini:2. DIDIRIKAN
Sekarang di sisi klien, ia membuka koneksi keluar ke server pada port
21
menggunakan port lokal50000
dan ia membutuhkan iptables berikut untuk memungkinkan tanggapan datang dariserver (21)
keclient (50000)
:3. TERKAIT
Sekarang setelah koneksi FTP telah dibuat dan koneksi data akan dilakukan, klien akan membuka soket server (ya, dengan klien FTP aktif menjadi server untuk koneksi data) pada port
60000
(menurut pemahaman saya klien akan menandai port ini60000
sebagaiRELATED
untuk koneksi lain dari50000->21
) dan akan mengirimkan nomor port ini ke server menggunakan FTPPORT
perintah. Kemudian server FTP akan membuka koneksi baru dari port-nya20
ke port60000
pada klien, dan yah, klien sekarang memerlukan yang berikut untuk memungkinkan koneksi baru ini berhasil:Akhirnya, agar ini berfungsi, Anda perlu mengaktifkan
ip_conntrack_ftp
modul kernel untuk memungkinkan sistem menandai koneksi / paket sebagaiRELATED
(ini adalah pemahaman saya, saya belum menggali terlalu banyak tentang ini):sumber
INPUT
.