2015-01-14 4 views
0

У меня проблема с местной коробкой бродяг и iptables. Я использую бродягу с полем chef/centos-6.6. Я хотел бы настроить iptables, поэтому политика по умолчанию будет DROP all и включать только определенные порты. Вот мой скрипт для установки IPTables:Коробка для бродяг и 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 секции, но все тот же вопрос;/ Любые идеи, как решить эту проблему?

ответ

2

Ваша первая линия iptables -P INPUT DROP так что вы убиваете ALL входящих соединений эффективных сразу. Это означает, что если вы запустили свое обеспечение через SSH, вы убьете соединение ssh для инициализации.

Решение будет заключаться в том, чтобы вставить правила в надлежащем порядке, что не позволит вам заблокировать себя из машины.

Другим возможным решением было бы предварительно сохранить настройки в файл с iptables-save и восстановление на удаленной машине с iptables-restore

Смежные вопросы