LinuxForum.Fans
Тема

Доступ к некоторым адресам в обход авторизации Squid

Автор: maximus5_59 5 сообщений 2856 просмотров
#376687

Добрый день!

Имеется сервер на базе OpenSuSE 12.4, обслуживающий небольшую сеть (порядка 30 машин), где поднят домен. На нем установлен прокси сервер squid, через него раздается интернет на машины посредством авторизации.
IP адреса машинам раздаются через DHCP статическим образом (закреплены под каждый MAC).
Задача: реализовать доступ с машин (точнее с набора машин) обслуживаемой сети к диапазону IP адресов интернета, скажем 222.222.222.0/24 в обход авторизации.
Другими словами: есть организация А (наша) с работающим Squid и авторизацией, есть сторонняя организация В, необходимо, чтобы машины А имели доступ к машинам В через интернет в обход Squid вовсе, либо только авторизации в нем.
Спасибо!

#376692

В конфиг iptables добавляем разрешающие правила в nat:PREROUTING перед редиректом в сквид - в случае с прозрачной проксей.
В настройках приложения, использующего проксю указываем, что не нужно ходить через проксю, обращаясь к заданному списку адресов - в случае с непрозрачной проксей.

#376700

Либо если используете wpad как я то в файлике прописать можно.

#377328

В этом деле новичок, почитал про iptables... И насколько я понял, следующие правила позволят пакетам перенаправляться к тем, кто их запросил, в обход Squid.

text

SERVER:~ # iptables --list
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
DROP       tcp  --  anywhere             anywhere            state NEW tcp dpt:ssh recent: UPDATE seconds: 600 hit_count: 3 name: DEFAULT side: source
ACCEPT     tcp  --  anywhere             anywhere            state NEW tcp dpt:ssh recent: SET name: DEFAULT side: source

Chain FORWARD (policy DROP) target prot opt source destination TCPMSS tcp -- anywhere anywhere tcp flags:SYN,RST/SYN TCPMSS clamp to PMTU ACCEPT all -- 222.222.222.0/24 anywhere

Chain OUTPUT (policy ACCEPT) target prot opt source destination

Или мои рассуждения в корне неверны?

#377342

Это же filter таблица. И из приведенных вами правил не совсем понятно чего вы хотите добиться.
А вам нужна nat:

Прозрачный прокси:
[console]
# iptables -t nat -A PREROUTING -m tcp -p tcp --dport 80 -s 192.168.1.1 -j ACCEPT
# iptables -t nat -A PREROUTING -m tcp -p tcp --dport 80 -j REDIRECT --to-ports 3128
# iptables -t nat -A POSTROUTING -o ... -m mark ... -j MASQUERADE -m comment --comment "Здесь можно использовать NAT/MASQURADE"
...
# iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
# iptables -A FORWARD -m state --state NEW -m tcp -p tcp --dport 80 -s 192.168.1.1 -j ACCEPT
# iptables -A FORWARD -m state --state NEW -m tcp -p tcp --dport 53 -j ACCEPT
# iptables -A FORWARD -p udp --dport 53 -s 192.168.1.1 -j ACCEPT
...
[/console]

Не прозрачный прокси:
[console]
# iptables -t nat -A POSTROUTING -o ... -m mark ... -j MASQUERADE -m comment --comment "Здесь можно использовать NAT/MASQURADE"
...
# iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
# iptables -A FORWARD -m state --state NEW -m tcp -p tcp --dport 80 -s 192.168.1.1 -j ACCEPT
# iptables -A FORWARD -m state --state NEW -m tcp -p tcp --dport 53 -j ACCEPT
# iptables -A FORWARD -p udp --dport 53 -s 192.168.1.1 -j ACCEPT
...
[/console]

Войдите или зарегистрируйтесь, чтобы ответить.