Tôi đang chạy tường lửa trên máy chủ VPS / web.
Các public
vùng là active
và default
(và tôi không muốn thay đổi điều đó). Làm thế nào để tôi cho phép chỉ có hai địa chỉ IP bên ngoài này để truy cập VPS (nghĩa là tất cả các dịch vụ tôi đã xác định trong public
vùng):
IP1: 11.22.33.44/24
IP2: 55.66.77.88/24
đó là địa chỉ IP giả và chú ý rằng họ cố ý không phải trên cùng một mạng con .
Tôi nghĩ rằng tôi hiểu lý do tại sao những điều sau đây không hoạt động (nó khóa một hoặc IP khác).
user$ sudo firewall-cmd --zone=public --permanent --add-source=11.22.33.44/24
user$ sudo firewall-cmd --zone=public --permanent --add-source=55.66.77.88/24
user$ sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="11.22.33.44/24" invert="True" drop'
user$ sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="55.66.77.88/24" invert="True" drop'
user$ sudo firewall-cmd --reload
Tôi cần sửa đổi điều gì để nó hoạt động (vì vậy nó không khóa một IP hoặc cái kia hoặc cả hai)?
Cảm ơn bạn! :)
CHỈNH SỬA : Tôi cũng đã thử một /32
mặt nạ bit cho tất cả bốn lệnh trên. Đáng buồn thay, nó đã không giúp đỡ. Vẫn đang tìm kiếm một giải pháp.
Tôi nghĩ logic có thể nghe giống như: if IP1 or IP2, allow it and stop processing the chain.
khác Continue processing the chain, where the very next rule would be to DROP.
. Một cái gì đó như thế.
EDIT2 : Đăng kết quả đầu ra của sudo firewall-cmd --list-all-zones
phía dưới. Lưu ý rằng tôi đã xóa tất cả các quy tắc được đề cập ở trên vì chúng không hoạt động. Vì vậy, dưới đây là trở lại một hình vuông.
user$ sudo firewall-cmd --list-all-zones
block
target: %%REJECT%%
icmp-block-inversion: no
interfaces:
sources:
services:
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
dmz
target: default
icmp-block-inversion: no
interfaces:
sources:
services:
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
drop
target: DROP
icmp-block-inversion: no
interfaces:
sources:
services:
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
external
target: default
icmp-block-inversion: no
interfaces:
sources:
services:
ports:
protocols:
masquerade: yes
forward-ports:
source-ports:
icmp-blocks:
rich rules:
home
target: default
icmp-block-inversion: no
interfaces:
sources:
services:
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
internal
target: default
icmp-block-inversion: no
interfaces:
sources:
services:
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
public (active)
target: default
icmp-block-inversion: no
interfaces: venet0:0 venet0
sources:
services: ssh-vps http https
ports: 8080/tcp 8080/udp
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks: echo-reply echo-request timestamp-reply timestamp-request
rich rules:
trusted
target: ACCEPT
icmp-block-inversion: no
interfaces:
sources:
services:
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
work
target: default
icmp-block-inversion: no
interfaces:
sources:
services:
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules: