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


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

Автор Тема: squid3-transparent, iptables, ssl - нужна консультация.  (Прочитано 3858 раз)

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

Оффлайн Ar3s

  • Автор темы
  • Новичок
  • *
  • Сообщений: 19
    • Просмотр профиля
нужна помощь.
Есть сервер 192.168.5.110
на нем крутится dhcp + dns proxy + squid transparetn
iptables заворачивает 80 и 8080 на порт сквида 5555

Нужно в iptables задать обработку ssl
т.е. т.к. squid с ssl в прозрачном режиме не работает то запросы на 443 порт нужно пускать мимо сквида. Просто форвардить напрямую.

есть sh файл который срабатывает при каждом поднятии pppoe
#!/bin/sh
PATH=/usr/sbin:/sbin:/bin:/usr/bin
#
# удалить все действующие правила
#
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -X
# Всегда принимать трафик на loopback-интерфейсе
iptables -A INPUT -i lo -j ACCEPT
# Разрешить соединения, которые инициированы изнутри (eth0)
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state NEW -i ! $IFACE -j ACCEPT
iptables -A FORWARD -i $IFACE -o eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
# Разрешить доступ из LAN-сети к внешним сетям
iptables -A FORWARD -i eth0 -o $IFACE -j ACCEPT
# Masquerade.
iptables -t nat -A POSTROUTING -o $IFACE -j MASQUERADE
# Запретить forward извне во внутреннюю сеть
iptables -A FORWARD -i $IFACE -o eth0 -j REJECT
# Включить forward
echo 1 > /proc/sys/net/ipv4/ip_forward
# to squid
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 5555
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 8080 -j REDIRECT --to-port 5555

есть список ip которым можно в интернет 192.168.5.2 - 192.168.5.10

Задача не конкретнов ssl, а в 21, 22, 24, 222, 443, 5190, 5222, 5223 портах.
Я ищу решение как пропускать напрямую все порты кроме 80 и 8080 (эти два заворачивать на прозрачный сквид)
остальные просто форвардить.

Оффлайн Unreg

  • Активист
  • *
  • Сообщений: 751
  • Ubuntu 8.04 / Acer Aspire One 110 > Debian 5.04
    • Просмотр профиля
    • LJ
Re: squid3-transparent, iptables, ssl - нужна консультация.
« Ответ #1 : 03 Март 2010, 16:37:33 »
элементарно включить NAT?

Оффлайн Ar3s

  • Автор темы
  • Новичок
  • *
  • Сообщений: 19
    • Просмотр профиля
Re: squid3-transparent, iptables, ssl - нужна консультация.
« Ответ #2 : 03 Март 2010, 16:39:59 »
так вроде же включен...

Оффлайн Unreg

  • Активист
  • *
  • Сообщений: 751
  • Ubuntu 8.04 / Acer Aspire One 110 > Debian 5.04
    • Просмотр профиля
    • LJ
Re: squid3-transparent, iptables, ssl - нужна консультация.
« Ответ #3 : 03 Март 2010, 16:48:43 »
LAN=eth1
LAN_IP="`ifconfig $LAN | head -n 2 | sed 'N;s/\n/ /' | awk '{print $7}'  | sed -e 's/addr://'`"
SQUID_IP=$LAN_IP
SQUID_PORT="`grep transparent /etc/squid/squid.conf | awk '{print $2}'`"
INT_NET="`ip addr show $LAN | grep inet | awk '{print $2}'`"

iptables -t nat -A PREROUTING -i $LAN -d ! $INT_NET -m iprange --src-range 192.168.5.2-192.168.5.10
-p tcp -m multiport --dport 80,8080 -j DNAT --to $SQUID_IP:$SQUID_PORT -v

ну или маску подравить


Пользователь решил продолжить мысль [time]Wed Mar  3 10:49:23 2010[/time]:
так вроде же включен...
и то верно, не заметил.

Пользователь решил продолжить мысль [time]Wed Mar  3 12:56:13 2010[/time]:
iptables -P INPUT REJECT
iptables -A INPUT -p tcp -m multiport --dports 21,22,24,222,443,5190,5222,5223  -j ACCEPT
iptables -A INPUT -p udp -m multiport --dports 21,22,24,222,443,5190,5222,5223 -j ACCEPT

Пользователь решил продолжить мысль [time]Wed Mar  3 14:56:46 2010[/time]:
попробовать разрешить только нужные порты?
« Последнее редактирование: 03 Март 2010, 16:57:29 от Unreg »

Оффлайн Ar3s

  • Автор темы
  • Новичок
  • *
  • Сообщений: 19
    • Просмотр профиля
Re: squid3-transparent, iptables, ssl - нужна консультация.
« Ответ #4 : 03 Март 2010, 17:31:34 »
Цитировать
iptables -P INPUT REJECT
iptables -A INPUT -p tcp -m multiport --dports 21,22,24,222,443,5190,5222,5223  -j ACCEPT
iptables -A INPUT -p udp -m multiport --dports 21,22,24,222,443,5190,5222,5223 -j ACCEPT

не помогло...

Оффлайн Mam(O)n

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: squid3-transparent, iptables, ssl - нужна консультация.
« Ответ #5 : 03 Март 2010, 17:45:22 »
А если такой вариант:
#!/bin/bash
PATH=/usr/sbin:/sbin:/bin:/usr/bin

inetif=$IFACE
localif=eth0

iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X

iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

iptables -A INPUT -i lo -j ACCEPT

iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m conntrack --ctstate NEW -i $localif -j ACCEPT

iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate NEW -i $localif -p tcp -m multiport ! --dports 80,8080 -m iprange --src-range 192.168.5.2-192.168.5.10 -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate NEW -i $localif ! -p tcp -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate NEW -i $localif -o $localif -j ACCEPT

iptables -t nat -A POSTROUTING -o $IFACE -j MASQUERADE

iptables -t nat -A PREROUTING -i eth0 -p tcp -m multiport --dports 80,8080 -j REDIRECT --to-port 5555

sysctl net.ipv4.ip_forward=1

Пользователь решил продолжить мысль 03 Март 2010, 18:05:20:
Да, забыл предупредить. Этот скрипт, в отличии от исходного, по-настоящему закрывает входящие порты с внешки, оставляя доступ к серверу только из локалки.
« Последнее редактирование: 03 Март 2010, 18:05:20 от Mam(O)n »

Оффлайн Ar3s

  • Автор темы
  • Новичок
  • *
  • Сообщений: 19
    • Просмотр профиля
Re: squid3-transparent, iptables, ssl - нужна консультация.
« Ответ #6 : 03 Март 2010, 18:48:19 »
Он запустился без проблем, но данные все-равно не пробрасывает. Хотя на 80 и 8080 пропускает как нужно.
Пример - захожу на сайт. Норм. Ввожу логин/пароль - меня перебрасывает уже на https и все. На этом все останавливается.

Оффлайн Mam(O)n

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: squid3-transparent, iptables, ssl - нужна консультация.
« Ответ #7 : 03 Март 2010, 18:49:34 »
А DNS на клиентах настроен и работает?

Оффлайн Ar3s

  • Автор темы
  • Новичок
  • *
  • Сообщений: 19
    • Просмотр профиля
Re: squid3-transparent, iptables, ssl - нужна консультация.
« Ответ #8 : 03 Март 2010, 18:57:45 »
на клиентах стоит "получать dns сервер автоматически"

А на серваке - стоит dns proxy

Оффлайн Mam(O)n

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: squid3-transparent, iptables, ssl - нужна консультация.
« Ответ #9 : 03 Март 2010, 19:26:43 »
Ну и вторая часть вопроса. Оно работает?
на клиенте:
nslookup ya.ru
ping 8.8.8.8

Пользователь решил продолжить мысль 03 Март 2010, 19:27:20:
"получать dns сервер автоматически"
Получает?

Оффлайн Ar3s

  • Автор темы
  • Новичок
  • *
  • Сообщений: 19
    • Просмотр профиля
Re: squid3-transparent, iptables, ssl - нужна консультация.
« Ответ #10 : 04 Март 2010, 09:34:01 »
Если на всех клиентах обычный http работает - значит dns удачно получает.

хотя вывод nslockup странный...
PS C:\Documents and Settings\Ar3s> nslookup.exe ya.ru
*** Can't find server name for address 192.168.5.110: Non-existent domain
*** Default servers are not available
Server:  UnKnown
Address:  192.168.5.110

Non-authoritative answer:
Name:    ya.ru
Addresses:  77.88.21.8, 93.158.134.8, 213.180.204.8

Оффлайн Mam(O)n

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: squid3-transparent, iptables, ssl - нужна консультация.
« Ответ #11 : 04 Март 2010, 09:58:42 »
Если на всех клиентах обычный http работает - значит dns удачно получает.
На всех клиентах юзается прокси а значит резолвинг идёт через прокси протокол. Что там насчёт пинга?

Оффлайн Ar3s

  • Автор темы
  • Новичок
  • *
  • Сообщений: 19
    • Просмотр профиля
Re: squid3-transparent, iptables, ssl - нужна консультация.
« Ответ #12 : 04 Март 2010, 10:51:18 »
пинг не идет, т.к. он не на 80 и не на 8080 порту. т.е. его просто не пропускает.

Оффлайн Mam(O)n

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Re: squid3-transparent, iptables, ssl - нужна консультация.
« Ответ #13 : 04 Март 2010, 11:04:06 »
Остальное, что не на 80 и 8080 должно по идее идти мимо. Нужно смотреть iptables-save.

Оффлайн Ar3s

  • Автор темы
  • Новичок
  • *
  • Сообщений: 19
    • Просмотр профиля
Re: squid3-transparent, iptables, ssl - нужна консультация.
« Ответ #14 : 04 Март 2010, 13:43:53 »
root@proxy:/etc/network/if-up.d# iptables-save
# Generated by iptables-save v1.4.4 on Thu Mar  4 12:41:03 2010
*mangle
:PREROUTING ACCEPT [228270:118285845]
:INPUT ACCEPT [225832:118160683]
:FORWARD ACCEPT [2321:120490]
:OUTPUT ACCEPT [254703:125347482]
:POSTROUTING ACCEPT [257010:125466908]
COMMIT
# Completed on Thu Mar  4 12:41:03 2010
# Generated by iptables-save v1.4.4 on Thu Mar  4 12:41:03 2010
*nat
:PREROUTING ACCEPT [4400:423667]
:POSTROUTING ACCEPT [15021:910869]
:OUTPUT ACCEPT [15363:936021]
-A PREROUTING -i eth0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 5555
-A PREROUTING -i eth0 -p tcp -m tcp --dport 8080 -j REDIRECT --to-ports 5555
-A POSTROUTING -o ppp1 -j MASQUERADE
COMMIT
# Completed on Thu Mar  4 12:41:03 2010
# Generated by iptables-save v1.4.4 on Thu Mar  4 12:41:03 2010
*filter
:INPUT ACCEPT [563:32521]
:FORWARD ACCEPT [2203:114770]
:OUTPUT ACCEPT [254690:125346974]
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT ! -i ppp1 -m state --state NEW -j ACCEPT
-A FORWARD -i ppp1 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i eth0 -o ppp1 -j ACCEPT
-A FORWARD -i ppp1 -o eth0 -j REJECT --reject-with icmp-port-unreachable
COMMIT
# Completed on Thu Mar  4 12:41:03 2010

 

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