iptables -I OUTPUT -d <remote_ip> -p tcp --dport 22 -j ACCEPT
iptables -I INPUT -s <remote_ip> -p tcp --sport 22 -j ACCEPT
iptables -I OUTPUT -d <remote_ip> -p tcp --dport 443 -j ACCEPT
iptables -I INPUT -s <remote_ip> -p tcp --sport 443 -j ACCEPT
iptables -P INPUT DROP
iptables -P OUTPUT DROP
Run Code Online (Sandbox Code Playgroud)
您需要为每个 IP 输入前 4 条规则。但是请注意,因为您必须通过这台机器上的控制台登录;对它的所有其他访问都将被阻止。
现在我了解您问题的背景,请尝试:
iptables -P OUTPUT DROP
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp -s 8.8.8.8 --dport 53 -j ACCEPT
iptables -A OUTPUT -p udp -s 8.8.8.8 --dport 53 -j ACCEPT
iptables -A OUTPUT -p tcp -s 10.11.12.13/24 --dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp -s 10.11.12.13/24 --dport 443 -j ACCEPT
Run Code Online (Sandbox Code Playgroud)
等等。这会将默认策略设置为 DROP,然后仅允许列出的 IP 地址(或范围)访问。第二行允许相关流量(例如正在进行的 SSH 会话的出站数据包),第三行和第四行示例用于 DNS 查找。
不要忘记您需要类似于第 2 行的 INPUT 规则。
归档时间: |
|
查看次数: |
23581 次 |
最近记录: |