it-swarm-vi.tech

Danh sách trắng cho phép IP (vào / ra) bằng iptables

Tôi có một vài dải ip mà tôi muốn máy chủ của mình có thể kết nối và người dùng kết nối từ đó. Mọi thứ khác nên bị chặn.

Làm thế nào tôi nên làm điều đó với iptables?

Hệ điều hành của tôi là phân phối linux dựa trên Debian.

22
Frank Bannister

Tôi khuyên bạn nên lấy một công cụ cấu hình tường lửa, chẳng hạn như Firestarter và đi từ đó. Dưới đây là một số điều cơ bản cho bạn.

#Flush existing rules
iptables -F
# Set up default DROP rule for eth0
iptables -P INPUT DROP
# Allow existing connections to continue
iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
# Accept everything from the 192.168.1.x network
iptables -A INPUT -i eth0 -s 192.168.1.0/24 -j ACCEPT
# Allow connections from this Host to 192.168.2.10
iptables -A OUTPUT -o eth0 -d 192.168.2.10 -j ACCEPT
27
Zenham
iptables -I INPUT -s <allowed_ip> -j ACCEPT #(repeat this line as needed)
iptables -P INPUT DROP

Điều này sẽ biến hệ thống của bạn thành một hệ thống không tồn tại cho các máy tính không được phép.

15
Kevin M

Nếu bạn muốn cho phép phạm vi tùy ý thay vì toàn bộ mạng con, bạn có thể sử dụng mô-đun iptables 'iprange':

iptables -P INPUT DROP

iptables -A INPUT -m iprange --src-range 192.168.1.30-50 -j ACCEPT

ví dụ: sẽ cho phép lưu lượng truy cập đến từ tất cả các máy có địa chỉ trong khoảng 192.168.1.30 đến 192.168.1.50.

Nếu bạn muốn cho phép lưu lượng đến và đi đến cùng một phạm vi IP, tôi khuyên bạn nên tạo một chuỗi cụ thể cho phép IP đó và nhắm mục tiêu tất cả mục tiêu đầu vào và đầu ra cho nó:

- xác định các chính sách mặc định để hủy bỏ:

iptables -P INPUT DROP

iptables -P OUTPUT DROP

- tạo chuỗi mới:

iptables -N allowed_ips

- nếu nguồn là một phần của phạm vi được phép, chấp nhận

iptables -A allowed_ips -m iprange --src-range 192.168.1.30-50 -j ACCEPT

- nếu không, hãy quay lại chuỗi người gọi để tiếp tục xử lý

iptables -A allowed_ips -j RETURN

- thực hiện tất cả lưu lượng truy cập vào và rời khỏi máy đi qua chuỗi mới của chúng tôi

iptables -A INPUT -j allowed_ips

iptables -A OUTPUT -j allowed_ips

và đó là nó! tất nhiên bạn có thể cần các quy tắc quảng cáo, chẳng hạn như một quy tắc cho phép tất cả lưu lượng truy cập từ/đến giao diện lo, v.v.

7
Thiagodrv

Khi bạn hài lòng với quy tắc của mình, có lẽ bạn muốn lưu chúng . Các ý kiến ​​trong liên kết này có một số tùy chọn về cách làm điều đó.

Một trình tạo quy tắc iptables dễ sử dụng cho các nhu cầu đơn giản là fw . Các gói có sẵn trong debian không ổn định.

Hãy thử Firestarter . Có sẵn bằng đồng xu.

1
Not Now

Bạn cũng có thể sử dụng ferm mà tôi cũng sử dụng trong năm qua và đã giúp tôi rất nhiều với các trường hợp như quy tắc tường lửa có điều kiện.

0
giomanda