Bagaimana saya bisa di server ubuntu saya, di Iptables hanya membolehkan satu alamat IP pada port tertentu?
Terima kasih
Satu liner:
iptables -I INPUT \! --src 1.2.3.4 -m tcp -p tcp --dport 777 -j DROP # if it's not 1.2.3.4, drop it
Solusi yang lebih elegan:
iptables -N xxx # create a new chain
iptables -A xxx --src 1.2.3.4 -j ACCEPT # allow 1.2.3.4
iptables -A xxx --src 1.2.3.5 -j ACCEPT # allow 1.2.3.5
iptables -A xxx --src 1.2.3.6 -j ACCEPT # allow 1.2.3.6
iptables -A xxx -j DROP # drop everyone else
iptables -I INPUT -m tcp -p tcp --dport 777 -j xxx # use chain xxx for packets coming to TCP port 777
INPUT
denganOUTPUT
Anda akan memblokir beberapa paket yang dikirim menggunakan beberapa alamat server itu sendiri (dan tidak dialihkan / diteruskan). Saya ragu ini masuk akal, kecuali mungkin Anda ingin memblokir program yang mengikat beberapa antarmuka tertentu.--src 1.2.3.4/30
iptables -I xxx --src 7.8.9.10 -j ACCEPT
Berikut adalah contoh dari salah satu sistem CentOS saya (alamat telah dikaburkan):
sumber
service iptables save
.Saya menggunakan shorewall untuk mengkonfigurasi tabel IP. Gunakan aturan suka menerima dari satu host ke port 123.
MENERIMA bersih: 192.0.2.1 $ FW tcp 1234
sumber