Kích hoạt iptables trên một giao diện


16

Tôi muốn iptables chỉ lọc một giao diện, eth0, đối diện với mạng WAN. Điều này có thể giải quyết như thế nào? Và tôi muốn giữ các cổng ftp và ssh mở trên eth0.


Vui lòng đọc các trang người dùng iptables - hoặc trong trường hợp tôi hiểu nhầm vấn đề của bạn, vui lòng đặt câu hỏi cụ thể hơn.
Jari Jokinen

Câu trả lời:


25

Vì vậy, đối với tất cả các giao diện nhưng một giao diện bạn muốn chấp nhận tất cả lưu lượng truy cập và trên eth0, bạn muốn loại bỏ tất cả lưu lượng truy cập ngoại trừ ftp và ssh.

Đầu tiên, chúng tôi có thể đặt chính sách chấp nhận tất cả lưu lượng theo mặc định.

iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

Sau đó, chúng tôi có thể thiết lập lại các quy tắc tường lửa của bạn.

iptables -F

Bây giờ chúng tôi có thể nói rằng chúng tôi muốn cho phép lưu lượng truy cập đến trên eth0, đó là một phần của kết nối mà chúng tôi đã cho phép.

iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT

Ngoài ra, chúng tôi muốn cho phép các kết nối ssh đến trên eth0.

iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT

Nhưng bất cứ điều gì khác đến trên eth0 nên được loại bỏ.

iptables -A INPUT -i eth0 -j DROP

Để có chiều sâu hơn một chút, hãy xem mục wiki CentOS này .

FTP là một khó khăn hơn ssh vì nó có thể sử dụng một cổng ngẫu nhiên, vì vậy hãy xem câu hỏi trước đây .


4
CẢNH BÁO!!! Làm "iptables -P ..." trước "iptables -F". Nếu các quy tắc hiện tại của bạn được đặt để giảm lưu lượng theo mặc định, thì chạy -F sẽ khóa bạn khỏi hộp của bạn. Đây là lý do tại sao giữ chính sách mặc định để cho phép và cụ thể thêm quy tắc để loại bỏ tất cả lưu lượng truy cập khác là cách tốt nhất.
Coops

8

Một cái gì đó như thế này sẽ làm công việc:

iptables -A INPUT -i eth1 -p all -j DROP
iptables -A INPUT -i eth0 -p all -j ACCEPT

1
Khá nhiều điểm trên (mặc dù có thể đẹp hơn một chút so với "Thả MỌI THỨ" trên giao diện WAN, eh?) - Viết quy tắc để lọc giao diện bạn muốn lọc và chỉ ACCEPTmọi thứ trên các giao diện khác.
voretaq7

4

Tùy chọn chỉ định giao diện trong quy tắc iptables của bạn là -i, ví dụ : -i eth0.


4

Nó rất đơn giản khi bạn thực hiện một iptablesquy tắc sau đó bạn phải chỉ định giao diện. Tùy chọn chỉ định thẻ LAN iptablescần hoạt động là-i

Các quy tắc sau đây có thể cho bạn một ví dụ tốt

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 

Quy tắc cuối cùng là từ chối bất kỳ gói nào khác không khớp với 2 quy tắc đầu tiên. Tất cả các quy tắc trong iptablesđược thực hiện theo thứ tự nhất định, vì vậy quy tắc từ chối các gói luôn luôn là cuối cùng.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.