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


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: [FAQ] iptables-настройка (в частности iptables _ CONNLIMIT)  (Прочитано 249296 раз)

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

Оффлайн ivsatel

  • Активист
  • *
  • Сообщений: 336
    • Просмотр профиля
Re: [FAQ] iptables-настройка (в частности iptables _ CONNLIMIT)
« Ответ #210 : 15 Августа 2011, 21:18:37 »
Так вот я и хотел избежать не нормальных случаев. И дошел до упора...

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
Re: [FAQ] iptables-настройка (в частности iptables _ CONNLIMIT)
« Ответ #211 : 15 Августа 2011, 21:22:00 »
Нормальные случае, это в нормально работающей системе. Я не знаю очень многих уловок хакеров, но думаю финт при котором пакет с -s 192.168.1.1 может попасть в эти цепочки. Но, думаю, Вам не помешает наличие в логах этой информации.

Оффлайн ivsatel

  • Активист
  • *
  • Сообщений: 336
    • Просмотр профиля
Re: [FAQ] iptables-настройка (в частности iptables _ CONNLIMIT)
« Ответ #212 : 15 Августа 2011, 21:27:08 »
Но, думаю, Вам не помешает наличие в логах этой информации.
Понял, спасибо большое!!

Оффлайн ivsatel

  • Активист
  • *
  • Сообщений: 336
    • Просмотр профиля
Re: [FAQ] iptables-настройка (в частности iptables _ CONNLIMIT)
« Ответ #213 : 15 Августа 2011, 21:48:37 »
 Не срабатывает и соответственно логов нет(((
Вывод команды netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
           1 Address
      1 servers)     
    126 192.168.1.111 Мой IP (Запуск GoogleChrome с множеством вкладок)
« Последнее редактирование: 15 Августа 2011, 21:58:31 от ivsatel »

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
Re: [FAQ] iptables-настройка (в частности iptables _ CONNLIMIT)
« Ответ #214 : 15 Августа 2011, 22:13:01 »
Ну так у Вас логгируются только новые соединения...

Оффлайн vovanrus

  • Новичок
  • *
  • Сообщений: 16
    • Просмотр профиля
Re: [FAQ] iptables-настройка (в частности iptables _ CONNLIMIT)
« Ответ #215 : 05 Ноября 2011, 23:31:08 »
имеется сервер с установленной Ubuntu, настроен NAT, необходимо ограничить число подключений к порту(tcp и udp), но для компа во внутренней сети обычно для такого использую:
iptables -A INPUT -p tcp --dport 9000 -m connlimit --connlimit-above 10 -j DROPи ограничивается до 10 подключений к 9000 порту, теперь нужно ограничить число подключений к порту из инета в локалку на внутреннем компе как по udp так и по tcp, причем статус подключений к этому порту netstat-nat отображает как udp ASSURED.
iptables -I OUTPUT -s komp_v_localke -p udp --dport 3902 -m connlimit --connlimit-above 6 -j DROP
iptables -I OUTPUT -s komp_v_localke -p tcp --dport 3902 -m connlimit --connlimit-above 6 -j DROP
эти команды не срабатывают...

Оффлайн coolman

  • Участник
  • *
  • Сообщений: 156
  • :)
    • Просмотр профиля
Re: [FAQ] iptables-настройка (в частности iptables _ CONNLIMIT)
« Ответ #216 : 19 Ноября 2011, 23:34:03 »
имеется сервер с установленной Ubuntu, настроен NAT, необходимо ограничить число подключений к порту(tcp и udp), но для компа во внутренней сети обычно для такого использую:
iptables -A INPUT -p tcp --dport 9000 -m connlimit --connlimit-above 10 -j DROPи ограничивается до 10 подключений к 9000 порту, теперь нужно ограничить число подключений к порту из инета в локалку на внутреннем компе как по udp так и по tcp, причем статус подключений к этому порту netstat-nat отображает как udp ASSURED.
iptables -I OUTPUT -s komp_v_localke -p udp --dport 3902 -m connlimit --connlimit-above 6 -j DROP
iptables -I OUTPUT -s komp_v_localke -p tcp --dport 3902 -m connlimit --connlimit-above 6 -j DROP
эти команды не срабатывают...
iptables -t filter -A FORWARD -i $INET_IF -o $LAN_IF -d komp_v_localke -m connlimit --connlimit-above 6 -p tcp -m multiport --dports 3902 -j DROP
iptables

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28510
    • Просмотр профиля
Re: [FAQ] iptables-настройка (в частности iptables _ CONNLIMIT)
« Ответ #217 : 21 Ноября 2011, 19:08:23 »
TCP соединения лучше резать через -j REJECT --reject-with tcp-reset
Многие сервисы при получении отказа прекратят долбиться, тогда как при пропадании пакетов они могут стучаться ещё долго, пока терпение не потеряют.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

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

Оффлайн Nitrolx

  • Новичок
  • *
  • Сообщений: 20
    • Просмотр профиля
    • nitro
Re: [FAQ] iptables-настройка (в частности iptables _ CONNLIMIT)
« Ответ #218 : 24 Декабря 2011, 00:42:09 »
Еще раз всем привет,
у меня сейчас стоят правила ограничения сессий такие
-A INPUT -s 192.168.0.129/32 -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -m connlimit --connlimit-above 50 --connlimit-mask 32 -j DROP Работает нормально.
 А нужно ограничить потоки от торрентов, проверино что это правило торрент сессии не режет, подскажите пожалуйста как ограничить количество всех сессий вообще от клиента ну или только торрент сессии?

Может резать диапазон портов tcp udp или можно проще?

Спасибо.

p.s. Делается это для того чтоб пользователи сети WIFI не загружали торрентами всю сеть.
« Последнее редактирование: 24 Декабря 2011, 01:04:28 от Nitrolx »

Оффлайн ivsatel

  • Активист
  • *
  • Сообщений: 336
    • Просмотр профиля
Re: [FAQ] iptables-настройка (в частности iptables _ CONNLIMIT)
« Ответ #219 : 24 Декабря 2011, 19:17:28 »
Можно еще вот так добавить к уже существующему tcp правилу:

iptables -A FORWARD -p udp -s 192.168.0.129/32 -m connlimit --connlimit-above 50 -j DROP
iptables -A INPUT -p udp -d 192.168.0.129/32 -m connlimit --connlimit-above 50 -j DROP
« Последнее редактирование: 26 Декабря 2011, 17:31:52 от ivsatel »

Оффлайн melnikdima

  • Участник
  • *
  • Сообщений: 188
    • Просмотр профиля
Re: [FAQ] iptables-настройка (в частности iptables _ CONNLIMIT)
« Ответ #220 : 13 Января 2012, 01:17:18 »
Здрасьте.
есть офисная сеть (Школа). сейчас всё раздаётся через NAT без контроля.
сейчас настраиваю отдельно стоящий шлюз. пока тестирую
вот что набросал в iptables

оцените? мож что ещё блокирнуть?
или какие-то порты открыть.

#!/bin/sh
# При использовании нескольких сетевых интерфейсов.  eth0 – интернет, eth1 - локальная сеть.
# Включаем пересылку пакетов.
echo 1 > /proc/sys/net/ipv4/ip_forward

IPTABLES='/sbin/iptables'

# Обнуляем правила
$IPTABLES -F
$IPTABLES -X
$IPTABLES -F -t nat
$IPTABLES -X -t nat

# Политика по умолчанию
# Все запрещено
$IPTABLES -P INPUT DROP
$IPTABLES -P OUTPUT DROP
$IPTABLES -P FORWARD DROP

# Loopback
$IPTABLES -A INPUT -i lo -j ACCEPT
$IPTABLES -A OUTPUT -o lo -j ACCEPT
$IPTABLES -A INPUT -i lo -d 127.0.0.0/8 -j REJECT


#ping
$IPTABLES -A INPUT -p icmp -j ACCEPT
$IPTABLES -A OUTPUT -p icmp -j ACCEPT
$IPTABLES -t nat -A POSTROUTING -o eth0 -s 192.168.1.0/24 -p icmp -j MASQUERADE


# GRE
$IPTABLES -A INPUT -p gre -j ACCEPT
$IPTABLES -A OUTPUT -p gre -j ACCEPT

# VPN server
#$IPTABLES -A INPUT -p tcp --sport 1723 -s x.x.x.x -j ACCEPT
#$IPTABLES -A OUTPUT -p tcp --dport 1723 -d x.x.x.x -j ACCEPT



# Разрешает доступ с eth0 устанавливать новые соединения по портам TCP
# 22, 80
$IPTABLES -A INPUT -i eth0 -p tcp -m state --state NEW --dport 22 -j ACCEPT
$IPTABLES -A INPUT -i eth0 -p tcp -m state --state NEW --dport 80 -j ACCEPT


# Разрешает доступ с eth1 устанавливать новые соединения по портам TCP
# 22, 25, 53, 80, 110, 443, 3128, 5190, 5222
$IPTABLES -A INPUT -i eth2 -p tcp -m state --state NEW --dport 22 -j ACCEPT
$IPTABLES -A INPUT -i eth2 -p udp -m state --state NEW --dport 25 -j ACCEPT
$IPTABLES -A INPUT -i eth2 -p udp -m state --state NEW --dport 53 -j ACCEPT
$IPTABLES -A INPUT -i eth2 -p tcp -m state --state NEW --dport 80 -j ACCEPT
$IPTABLES -A INPUT -i eth2 -p tcp -m state --state NEW --dport 110 -j ACCEPT
$IPTABLES -A INPUT -i eth2 -p tcp -m state --state NEW --dport 443 -j ACCEPT
$IPTABLES -A INPUT -i eth2 -p tcp -m state --state NEW --dport 3128 -j ACCEPT
$IPTABLES -A INPUT -i eth2 -p tcp -m state --state NEW --dport 5190 -j ACCEPT
$IPTABLES -A INPUT -i eth2 -p tcp -m state --state NEW --dport 5222 -j ACCEPT


# Разрешает доступ с eth1 устанавливать новые соединения по портам UDP
# 67 68
$IPTABLES -A INPUT -i eth2 -p udp -m multiport --port 67:68 -j ACCEPT



# Разрешаем весь исходящий трафик
$IPTABLES -A OUTPUT -p all -j ACCEPT

# Разрешаем установленные соединения
$IPTABLES -A INPUT -p all -m state --state ESTABLISHED,RELATED -j ACCEPT

# Разрешаем ответные соединения.
$IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
# Разрешаем доступ из внутренней сети наружу.
$IPTABLES -A FORWARD -i eth2 -o eth0 -j ACCEPT

# 80 перенаправляем на SQUID
$IPTABLES -t nat -A PREROUTING ! -d 192.168.1.0/24  -i eth2 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.1.1:3128
#iptables -t nat -A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128

# NAT с LAN в WAN по портам 25,110,443,5222,5190
$IPTABLES -t nat -A POSTROUTING -o eth0 -s 192.168.1.0/24 -p tcp --dport 25 -j MASQUERADE
$IPTABLES -t nat -A POSTROUTING -o eth0 -s 192.168.1.0/24 -p tcp --dport 110 -j MASQUERADE
$IPTABLES -t nat -A POSTROUTING -o eth0 -s 192.168.1.0/24 -p tcp --dport 443 -j MASQUERADE
$IPTABLES -t nat -A POSTROUTING -o eth0 -s 192.168.1.0/24 -p tcp --dport 5222 -j MASQUERADE
$IPTABLES -t nat -A POSTROUTING -o eth0 -s 192.168.1.0/24 -p tcp --dport 5190 -j MASQUERADE

#TEST
#$IPTABLES -t nat -A POSTROUTING -o eth0 -s 192.168.2.0/24  -j MASQUERADE
#$IPTABLES -t nat -A POSTROUTING -o eth0 -s 192.168.1.0/24  -j MASQUERADE


« Последнее редактирование: 13 Января 2012, 07:28:17 от melnikdima »

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28510
    • Просмотр профиля
Re: [FAQ] iptables-настройка (в частности iptables _ CONNLIMIT)
« Ответ #221 : 13 Января 2012, 16:47:50 »
Мы вам не онлайн-интерпретаторы скриптов.
Показывайте iptables-save.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

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

Оффлайн melnikdima

  • Участник
  • *
  • Сообщений: 188
    • Просмотр профиля
Re: [FAQ] iptables-настройка (в частности iptables _ CONNLIMIT)
« Ответ #222 : 15 Января 2012, 19:04:59 »
подскажите пожалуйста. как настроить. 2 WAN

чтобы трафик по определенным портам шёл по WAN1
а остальной по WAN2

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 28510
    • Просмотр профиля
Re: [FAQ] iptables-настройка (в частности iptables _ CONNLIMIT)
« Ответ #223 : 15 Января 2012, 20:26:28 »
Маркировать трафик по портам в прероутинге и рулить маршрутизацией по маркам.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

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

Оффлайн miccy

  • Новичок
  • *
  • Сообщений: 15
    • Просмотр профиля
Re: [FAQ] iptables-настройка (в частности iptables _ CONNLIMIT)
« Ответ #224 : 15 Января 2012, 22:13:33 »
Не работает sip (клиент twinkle пишет 403 Forbidden Bad auth, клиент qutecom нормально регистрируется, но там ничего не слышно), в общем засада, а правила такие:

# Generated by iptables-save v1.4.10 on Sun Jan 15 20:51:34 2012
*filter
:INPUT DROP [304:64073]
:FORWARD DROP [0:0]
:OUTPUT DROP [8:576]
-A INPUT -i lo -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 11 -j ACCEPT
-A INPUT -p tcp -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p udp -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i eth0 -p udp -m udp --dport 5060 -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 5060 -j ACCEPT
-A INPUT -i eth0 -p udp -m udp --dport 10000:20000 -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 5060 -j ACCEPT
-A INPUT -i eth0 -p udp -m udp --dport 5060 -j ACCEPT
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -s 192.168.0.0/24 -i eth1 -m conntrack --ctstate NEW -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -p icmp -j ACCEPT
-A OUTPUT -p tcp -m tcp --sport 32768:61000 -j ACCEPT
-A OUTPUT -p udp -m udp --sport 32768:61000 -j ACCEPT
-A OUTPUT -o eth0 -p tcp -m tcp --sport 5060 -j ACCEPT
-A OUTPUT -o eth0 -p udp -m udp --sport 5060 -j ACCEPT
COMMIT
# Completed on Sun Jan 15 20:51:34 2012
# Generated by iptables-save v1.4.10 on Sun Jan 15 20:51:34 2012
*nat
:PREROUTING ACCEPT [41509:6135885]
:INPUT ACCEPT [27:4241]
:OUTPUT ACCEPT [4647:941200]
:POSTROUTING ACCEPT [31:1562]
-A POSTROUTING -o eth0 -j MASQUERADE
COMMIT
# Completed on Sun Jan 15 20:51:34 2012

Что-то можно попробовать исправить или просто все подряд разрешить?

 

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