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


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

Автор Тема: Ограничения iptables  (Прочитано 2743 раз)

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

Оффлайн bestov

  • Автор темы
  • Участник
  • *
  • Сообщений: 194
  • Я люблю тебя ЗЕМЛЯ
    • Просмотр профиля
Ограничения iptables
« : 24 Октября 2011, 22:29:11 »
Я че то не сосем понял как работает ограничения в iptables на nat
В dnsmasq я раздаю ip адреса автоматом в разбросе:
dhcp-range=192.168.1.1,192.168.255.254,255.255.0.0,1h
а этим хочу ограничить инет только до 192.168.88.XXX  что бы был инет только до 88 а если выше дал ip то инета не было, но у меня получается что все инет дает
eth0 это интернет
eth1 локальная сеть
вот команда которой я пытаюсь нату объяснить что кому давать :)
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.88.0/16 -j MASQUERADE
кстати еще такой вопрос что значит 0/16 и 0/24?

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
Re: Ограничения iptables
« Ответ #1 : 24 Октября 2011, 22:35:11 »
Такой диапазон одним правилом не получится.
Изучайте маски сетей, битность которых и обозначают /16 и /24

Оффлайн bestov

  • Автор темы
  • Участник
  • *
  • Сообщений: 194
  • Я люблю тебя ЗЕМЛЯ
    • Просмотр профиля
Re: Ограничения iptables
« Ответ #2 : 24 Октября 2011, 22:41:59 »
Такой диапазон одним правилом не получится.
но у меня при таком правиле всем дает интернет

Изучайте маски сетей, битность которых и обозначают /16 и /24
а к чему эта битность? даст например 2 числа или 3 числа в ip адресе?

кстати вот мои настройки iptables:
#!/bin/sh
# Очистка таблиц и цепочек
iptables --flush
iptables --delete-chain
iptables --table nat --flush
iptables --table filter --flush
iptables --table nat --delete-chain
iptables --table filter --delete-chain



# Включаем форвардинг пакетов
echo 1 > /proc/sys/net/ipv4/ip_forward

# Разрешаем трафик на loopback-интерфейсе
iptables -A INPUT -i lo -j ACCEPT

# Разрешаем доступ из внутреней сети наружу
iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT

# Включаем NAT
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.88.0/16 -j MASQUERADE

# Разрешаем ответ из внешней сети
iptables -A FORWARD -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT

# Запрашиваем доступ снаруже во внутренюю сеть
iptables -A FORWARD -i eth0 -o eth1 -j REJECT

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
Re: Ограничения iptables
« Ответ #3 : 24 Октября 2011, 22:54:03 »
Изучайте битность маски в статьях про строение сетей. Иначе будете как по лесу ходить.
Своим правилом Вы маскарадите диапазон адресов 192.168.0.1-192.168.255.254.
А хождение пакетов через шлюз разрешаете вообще ВСЕМ... (А точнее не запрещаете)

Оффлайн bestov

  • Автор темы
  • Участник
  • *
  • Сообщений: 194
  • Я люблю тебя ЗЕМЛЯ
    • Просмотр профиля
Re: Ограничения iptables
« Ответ #4 : 24 Октября 2011, 23:31:06 »
Спасибо за помощь :)
С этим вопросам разобрался :)
Есть еще маленький вопрос как можно с помощью iptables ограничить скорость по mac адресу?

Оффлайн xeon_greg

  • Активист
  • *
  • Сообщений: 981
    • Просмотр профиля
Re: Ограничения iptables
« Ответ #5 : 25 Октября 2011, 10:10:13 »
Спасибо за помощь :)
С этим вопросам разобрался :)
Есть еще маленький вопрос как можно с помощью iptables ограничить скорость по mac адресу?
iptables может промаркировать пакеты по мак адресу, а скорость режет совсем другой инструмент.

Оффлайн bestov

  • Автор темы
  • Участник
  • *
  • Сообщений: 194
  • Я люблю тебя ЗЕМЛЯ
    • Просмотр профиля
Re: Ограничения iptables
« Ответ #6 : 25 Октября 2011, 10:15:20 »
Спасибо за помощь :)
С этим вопросам разобрался :)
Есть еще маленький вопрос как можно с помощью iptables ограничить скорость по mac адресу?
iptables может промаркировать пакеты по мак адресу, а скорость режет совсем другой инструмент.
Ну я сейчас пытаюсь SQUID ограничить скорость, только не совсем получается.

Настроил все вроде работает но не полностью 
Вот настройки iptables:
# Включаем форвардинг пакетов
echo 1 > /proc/sys/net/ipv4/ip_forward

# Разрешаем трафик на loopback-интерфейсе
iptables -A INPUT -i lo -j ACCEPT

# Разрешаем доступ из внутреней сети наружу
iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT

iptables -t nat -A PREROUTING -i eth1 ! -d 192.168.1.0/24 -p tcp -m multiport --dport 80,8080,20 -j DNAT --to 192.168.1.1:3128
iptables -t nat -A PREROUTING -i eth1 ! -d 192.168.2.0/24 -p tcp -m multiport --dport 80,8080,20 -j DNAT --to 192.168.1.1:3128

# Включаем NAT
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.1.0/24 -j MASQUERADE
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.2.0/24 -j MASQUERADE

# Разрешаем ответ из внешней сети
iptables -A FORWARD -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT

А вот как настроил ограничения в SQUID:
acl direktor src 192.168.221.197/32
acl lan1 src 192.168.1.0/24
acl lan2 src 192.168.2.0/24


http_access allow direktor
http_access allow lan1
http_access allow lan2


delay_pools 2
delay_class 1 1
delay_class 2 3


delay_access 1 allow direktor
delay_access 1 deny all
delay_access 2 allow lan1
delay_access 2 allow lan2
delay_access 2 deny all


delay_parameters 1 -1/-1
delay_parameters 2 -1/-1 2560000/2560000 64000/64000

Получается мы ограничиваем для lan1 и lan2 скорость в 512/512 кб по портам 80,8080,20 но ограничения действуют только на 80 порт и при этом:
Download Speed: 515 kbps (64.4 KB/sec transfer rate)
Upload Speed: 3391 kbps (423.9 KB/sec transfer rate)
Ограничения действую только для скачивания но не для скидывания.
Почему такая проблема?

 

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