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


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

Автор Тема: iptables + squid  (Прочитано 2080 раз)

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

Оффлайн daax

  • Автор темы
  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
iptables + squid
« : 20 Сентября 2010, 10:44:15 »
после какого-то обновления (Ubuntu 10.04) перестал работать интернет-шлюз. Стоит Squid2 и на него принудительно заворот трафика
iptables -t nat -A PREROUTING -i eth1 -d ! 192.168.0.0/24 -p tcp -m multiport --dport 80, 8080 -j NAT --to 192.168.0.1:3128
при этом достучаться телнетом на порт прокси не получается. Если эту строчку закомментировать, то через нат в интернет пускает, но и прокся нормально работает. Если опять это правило включить, снова HTTP не пролазит. Помогите кто чем может) раньше всё работало как в сказкке...

Оффлайн MaratSh

  • Участник
  • *
  • Сообщений: 204
  • Всё пройдёт...
    • Просмотр профиля
Re: iptables + squid
« Ответ #1 : 20 Сентября 2010, 11:11:25 »
Хочешь чтобы мы сидел и угадывали после какого обновления у тебя перестало работать? :)

Оффлайн daax

  • Автор темы
  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
Re: iptables + squid
« Ответ #2 : 20 Сентября 2010, 11:24:53 »
не помню) кажись от 13 сентября

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
Re: iptables + squid
« Ответ #3 : 20 Сентября 2010, 12:08:55 »
а точно -j NAT пользуется? Вроде везде писано, что редиректить надо
Цитировать
iptables -t nat -A PREROUTING -i eth1 -d ! 192.168.0.0/24 -p tcp -m multiport --dport 80, 8080 -j REDIRECT --to-port 3128

Оффлайн daax

  • Автор темы
  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
Re: iptables + squid
« Ответ #4 : 20 Сентября 2010, 12:11:12 »
прошу прощения, опечатка) у нас было -j DNAT а не -j NAT
впрочем, твой вариант работает) но всё-таки в чём разница и что могло перестать работать?
« Последнее редактирование: 20 Сентября 2010, 12:14:08 от daax »

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
Re: iptables + squid
« Ответ #5 : 20 Сентября 2010, 12:21:17 »
Покажите iptables-save, где-то вы лукавите

Пользователь решил продолжить мысль 20 Сентября 2010, 12:23:07:
В том, что таблесы в действии DNAT гавкается на "--to 192.168.0.1:3128", потому как мимо синтаксиса
« Последнее редактирование: 20 Сентября 2010, 12:23:07 от fisher74 »

Оффлайн daax

  • Автор темы
  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
Re: iptables + squid
« Ответ #6 : 20 Сентября 2010, 12:28:20 »
(Нажмите, чтобы показать/скрыть)
это вот сейчас выгрузил живые правила когда исправил на redirect
что-то я не пойму где мой редирект...
« Последнее редактирование: 20 Сентября 2010, 12:43:01 от daax »

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
Re: iptables + squid
« Ответ #7 : 20 Сентября 2010, 12:31:33 »
ну и где редиректор?

P.S. под спойлер спрячь простынку

Оффлайн daax

  • Автор темы
  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
Re: iptables + squid
« Ответ #8 : 20 Сентября 2010, 12:33:13 »
да я сам не пойму куда он делся, вот скрипт
(Нажмите, чтобы показать/скрыть)

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
Re: iptables + squid
« Ответ #9 : 20 Сентября 2010, 12:41:24 »
Ещё раз повторяю: спрячьте под спойлер (выглядит вот так )
Предполагаю, что если вы строку
iptables -t nat -A PREROUTING -i eth1 -d ! 192.168.0.0/24 -p tcp -m multiport --dport 80,8080 -j REDIRECT --to-port 192.168.0.1:3128
введёте в консоли, то увидите, что таблесы на вас снова ругнутся, потому как должн быть так, как я писал выше. Зачем же вы в параметре порта указываете IP-адресс.
Мало того, с какого-то момента (не могу сказать с какого) разработчики всё-таки исключили устаревшую опцию "-d ! x.x.x.x/x" и теперь действует только "! -d x.x.x.x/x"

Цитировать
В ранних версиях iptables восклицательный знак можно было ставить между названием критерия и значением, например, -s ! 127.0.0.1, однако последние версии iptables (в частности, 1.4.3.2 и выше), уже не поддерживают этот синтаксис
« Последнее редактирование: 20 Сентября 2010, 12:43:33 от fisher74 »

Оффлайн daax

  • Автор темы
  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
Re: iptables + squid
« Ответ #10 : 20 Сентября 2010, 12:50:24 »
(Нажмите, чтобы показать/скрыть)
вот, теперь так
но интернета нету
отключаю редирект - интернет есть
а с исправленным ! -d работает только гугл почему-то
« Последнее редактирование: 20 Сентября 2010, 12:55:17 от daax »

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
Re: iptables + squid
« Ответ #11 : 20 Сентября 2010, 12:56:00 »
В squid.conf указано transparent?

Оффлайн daax

  • Автор темы
  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
Re: iptables + squid
« Ответ #12 : 20 Сентября 2010, 12:57:19 »
http_port 3128 transparent

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13761
    • Просмотр профиля
Re: iptables + squid
« Ответ #13 : 20 Сентября 2010, 13:07:53 »
Цитировать
-A PREROUTING ! -d 192.168.0.0/24 -i eth1 -p tcp -m multiport --dports 80,8080 -j REDIRECT --to-ports 3128
Ручками правили iptables.rules?

Пользователь решил продолжить мысль 20 Сентября 2010, 13:09:04:
показывайте не 111.txt, а
sudo iptables -t nat -L -nv
« Последнее редактирование: 20 Сентября 2010, 13:09:25 от fisher74 »

Оффлайн daax

  • Автор темы
  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
Re: iptables + squid
« Ответ #14 : 20 Сентября 2010, 13:22:14 »
root@inetsrv:~# iptables -t nat -L -nv
Chain PREROUTING (policy ACCEPT 74224 packets, 4631K bytes)
 pkts bytes target     prot opt in     out     source               destination        
28246 1358K DNAT       tcp  --  eth1   *       0.0.0.0/0           !192.168.0.0/24      multiport dports 80,8080 to:192.168.0.1:3128

Chain POSTROUTING (policy ACCEPT 28344 packets, 3405K bytes)
 pkts bytes target     prot opt in     out     source               destination        
29836 2069K MASQUERADE  all  --  *      eth0    192.168.0.0/24       0.0.0.0/0          

Chain OUTPUT (policy ACCEPT 28344 packets, 3405K bytes)
 pkts bytes target     prot opt in     out     source               destination        
root@inetsrv:~#

а гле вообще лежит iptables.rules?
вобщем я вернул как было правило с DNAT вместо REDIRECT только исправил ! -d

работает но скорость ужасная
« Последнее редактирование: 20 Сентября 2010, 13:26:19 от daax »

 

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