Как добавить исключение

Конфигурирование IPTABLES (Установка, настройка IPTABLES, Маскарадинг, Firewall)
Ответить
Рахим
Сообщения: 3
Зарегистрирован: 25 ноя 2010, 00:04

Как добавить исключение

Сообщение Рахим » 25 ноя 2010, 00:12

Нужно закрыть определенные порты для всех кроме одного ip, сделал скрипт но порт для нужного ip так и не открывается.
#!/bin/bash
iptables -F
iptables -P INPUT ACCEPT
iptables -A INPUT -p tcp -m multiport --dports 8080,22 -j DROP
iptables -A INPUT -p tcp -s 77.241.41.46 -m multiport --dports 8080,22 -j ACCEPT

Где я ошибся?

Аватара пользователя
Роман Торопов
Администратор
Сообщения: 134
Зарегистрирован: 24 мар 2008, 10:49
Откуда: г. Пермь
Контактная информация:

Re: Как добавить исключение

Сообщение Роман Торопов » 26 ноя 2010, 13:12

Правила читаются последовательно, т.е. если сначало правило - закрыть всех, то оно закрывает, ниже стоящее уже не важно.

Т.е. нужно примерно так:
#!/bin/bash
iptables -F
iptables -A INPUT -i eth0 -s 77.241.41.46 -p tcp -m multiport --dports 8080,22 -j ACCEPT
iptables -A INPUT -i eth0 -p tcp -m multiport --dports 8080,22 -j DROP

P.S.: Возмите за привычку указывать интерфейс, иначе правило применяется на все интерфейсы, в данном случии я указал eth0, если соединение виртуальное, то по типу ppp0

Еще можно одной строкой:
iptables -A INPUT -i eth0 -s ! 77.241.41.46 -p tcp -m multiport --dports 8080,22 -j DROP

Восклецательный знак говорит "кроме данного IP"

Рахим
Сообщения: 3
Зарегистрирован: 25 ноя 2010, 00:04

Re: Как добавить исключение

Сообщение Рахим » 26 ноя 2010, 18:41

Спасибо большое, теперь работает. Вот еще вопрос, можно ли как нибудь ограничить входящие пакеты, допустим, не более 500 входящих пакетов в минуту от определенное пользователя

Аватара пользователя
Роман Торопов
Администратор
Сообщения: 134
Зарегистрирован: 24 мар 2008, 10:49
Откуда: г. Пермь
Контактная информация:

Re: Как добавить исключение

Сообщение Роман Торопов » 26 ноя 2010, 18:48

Рахим писал(а):Спасибо большое, теперь работает. Вот еще вопрос, можно ли как нибудь ограничить входящие пакеты, допустим, не более 500 входящих пакетов в минуту от определенное пользователя

Пакеты не нужно ограничевать, ограничивать нужно сессии ...

Рахим
Сообщения: 3
Зарегистрирован: 25 ноя 2010, 00:04

Re: Как добавить исключение

Сообщение Рахим » 30 ноя 2010, 12:56

Просто у меня такая ситуация, стоит сервер популярной MMORPG, и особо умные игроки посылают с помощью автокликеров огромное количество запросов ( пример: быстрая смена оружия, быстрое нажаимание скиллов) и сервер виснет
я сделал так
iptables -A INPUT -m hashlimit --hashlimit-above 800/minute -j DROP

Ответить