Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Администрирование *NIX систем > Подскажите по iptables


Автор: DooZ 10.7.2009, 02:24
Доброго времени суток

Подскажите, как заблокировать на сервере через iptables доступ к порту 11211 для всех, кроме некоторых IP?
вот такие правила есть

iptables -A INPUT -p tcp --dport 11211 -j REJECT
блокируется доступ для всех к порту 11211
Все отлично работает, теперь разрежаю для IP 111.111.111.111 доступ к этому порту

iptables -A INPUT -p tcp -s 111.111.111.111 --dport 11211 -j ACCEPT
/etc/init.d/iptables save

но нифига не пускает, в чем ошибка? подскажите пожалуйста

Автор: Imple 10.7.2009, 06:28
Правила отрабатываются сверху, т.е. нужно сначала добавить правила ACCEPT, потом DROP. Почитайте http://forum.vingrad.ru/forum/topic-225142/kw-iptables-netfilter-nat.html

Примерно так:
Код

iptables -A INPUT -p tcp -s 111.111.111.111 --dport 11211 -j ACCEPT
iptables -A INPUT -p tcp -s 222.222.222.222 --dport 11211 -j ACCEPT
iptables -A INPUT -p tcp -s 123.123.123.123 --dport 11211 -j ACCEPT
iptables -A INPUT -p tcp --dport 11211 -j REJECT

Автор: DooZ 10.7.2009, 12:37
Спасибо, но тогда возникает такой вопрос, а как быть, если мне потом (через некоторое время) нужно будет добавить еще IP ?
удалять все правила и добавлять снова?

Добавлено через 13 минут и 12 секунд
разобрался
как вариант
удаляем сначало правило которое блокиерует всем доступ

iptables -D INPUT -p tcp --dport 11211 -j REJECT

добавляем нужный IP
iptables -A INPUT -p tcp -s 122.122.122.122 --dport 11211 -j ACCEPT

и после опять общую блокировку

iptables -A INPUT -p tcp --dport 11211 -j REJECT

и конечно не забываем сохранить

/etc/init.d/iptables save


поправьте если не прав =)

Автор: Imple 10.7.2009, 13:50
Или пользоваться вместо -A ключем -I (вставка правила в указанную позицию). Не забывайте отмечать тему решенной.

Автор: DooZ 10.7.2009, 21:48
оки спасибо
про "решенная" я забыл, каюсь smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)