Форум русскоязычного сообщества Ubuntu


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: Помогите со скриптом iptables  (Прочитано 2871 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Sucks

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Помогите со скриптом iptables
« : 29 Декабря 2010, 23:58:31 »
iptables -A FORWARD -s 1.1.1.30 -m conntrack --ctstate NEW -m limit --limit 400/minute --limit-burst 1 -j ACCEPT
iptables -A FORWARD -s 1.1.1.30 -m conntrack --ctstate NEW -j LOG
iptables -A FORWARD -s 1.1.1.30 -m conntrack --ctstate NEW -j DROP


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

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28366
    • Просмотр профиля
Re: Помогите со скриптом iptables
« Ответ #1 : 30 Декабря 2010, 01:57:59 »
Возможно, поможет модуль recent
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн Sucks

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: Помогите со скриптом iptables
« Ответ #2 : 30 Декабря 2010, 02:26:27 »
Дико извиняюсь, но не могли бы написать полностью правило? Просто нуб в убунте... да и линуксе.

Пользователь решил продолжить мысль 30 Декабря 2010, 03:17:25:
Стоп.. Я кажется понял, мне просто не особо надо разрывать пользователя, а просто что бы остальные пакеты не принимались, а только до 500 в минуту. То есть если не писать:

iptables -A FORWARD -s 1.1.1.30 -m conntrack --ctstate NEW -j LOG
iptables -A FORWARD -s 1.1.1.30 -m conntrack --ctstate NEW -j DROP

Вот эти правила, то вроде не будет разрывать всех, правда еще не пробовал.
« Последнее редактирование: 30 Декабря 2010, 03:17:25 от Sucks »

Оффлайн Sucks

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: Помогите со скриптом iptables
« Ответ #3 : 06 Января 2011, 19:24:54 »
Все еще не решено....

Оффлайн terrible_user

  • Активист
  • *
  • Сообщений: 438
    • Просмотр профиля
Re: Помогите со скриптом iptables
« Ответ #4 : 06 Января 2011, 23:12:41 »
можно как-то так прикинуть
/sbin/iptables -N test
/sbin/iptables -A test -m recent --name TEST --rcheck --seconds 60 --hitcount 400 -j DROP
/sbin/iptables -A test -m recent --name TEST --set -j ACCEPT
/sbin/iptables -A test -j ACCEPT
/sbin/iptables -A FORWARD -j test
Бери больше, кидай дальше

Оффлайн Sucks

  • Автор темы
  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: Помогите со скриптом iptables
« Ответ #5 : 22 Января 2011, 01:15:34 »
Уже прошло много времени, все еще не решил... Этот скрипт не работает, говорит неверный аргумент.

iptables: Chain already exists.
iptables: Invalid argument. Run `dmesg' for more information.
« Последнее редактирование: 22 Января 2011, 01:21:03 от Sucks »

Гарри Кашпировский

  • Гость
Re: Помогите со скриптом iptables
« Ответ #6 : 22 Января 2011, 01:38:44 »
Цитировать
iptables -N LIMIT
iptables -A FORWARD -m recent --update --seconds 180 --name bad_hosts --rsource -j LIMIT
iptables -A LIMIT -s 1.1.1.30 -m conntrack --ctstate NEW -m limit --limit 400/minute --limit-burst 1 -j RETURN
iptables -A LIMIT -j LOG --log-prefix "Ban limit connection: "
iptables -A LIMIT -m recent --set --name bad_hosts --rsource -j DROP
Где-то так :)

 

Страница сгенерирована за 0.034 секунд. Запросов: 25.