我的本地流浪盒和iptables有问题。
我在chef/centos-6.6
框中使用了vagrant。
我想配置iptables,因此默认策略将是DROP所有内容并仅启用某些端口。
这是我设置iptables的脚本:
# Flush all rules
iptables -F
iptables -X
# Start by blocking all traffic, this will allow secured, fine grained filtering
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
# Keep established connections
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
# Allow loopback
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
# HTTP
iptables -A OUTPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
# SSH
iptables -A OUTPUT -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
# DNS
iptables -A OUTPUT -p tcp --dport 53 -j ACCEPT
iptables -A OUTPUT -p udp --dport 53 -j ACCEPT
iptables -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j ACCEPT
# NTP
iptables -A OUTPUT -p udp --dport 123 -j ACCEPT
# YUM
iptables -A OUTPUT -p tcp -m tcp -m state --state NEW --dport 80 -j ACCEPT
执行脚本后(vagrant ssh
之后)我立即断开连接,无法再次连接到服务器。
我想知道这是否与流浪汉端口转发有某种联系?当我vagrant up
控制台告诉你
default: 22 > 2222 (adapter 1)
我将端口添加到# SSH
部分,但仍然存在同样的问题; /
任何想法如何解决?
答案 0 :(得分:3)
您的第一行是iptables -P INPUT DROP
,因此您有效立即 所有有效 。这意味着如果您通过SSH运行您的配置,则会终止配置ssh连接。
解决方案是按顺序插入规则,以防止您将自己锁定在机器之外。
另一种可能的解决方案是使用iptables-save
将设置预先保存到文件,并使用iptables-restore