URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID10
Нить номер: 4516
[ Назад ]

Исходное сообщение
"Iptables+Squid"

Отправлено dolf85 , 25-Фев-10 07:30 
Всем привет! Такая проблема, есть сеть 192.168.0.0/24, есть шлюз debian lenny 192.168.0.1, хочу на некоторые ip-адреса в инете дать полный доступ всем, а весь остальной инет для подсети 192.168.0.128/25 завернуть в сквид, а некоторые привелигированные пользователи должны ходить всюду без прокси,пррблема в том, что не получается прямой выход до нужных сервером и squid выдает tcp_miss, делаю так:

#!/bin/bash
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe iptable_nat
modprobe ip_nat_ftp

echo 1 > /proc/sys/net/ipv4/ip_forward

iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD
iptables -t nat -F POSTROUTING
iptables -t nat -F PREROUTING

iptables -A INPUT -p esp -j ACCEPT
iptables -A OUTPUT -p esp -j ACCEPT
iptables -A INPUT -p ah -j ACCEPT
iptables -A OUTPUT -p ah -j ACCEPT
iptables -A INPUT -p gre -j ACCEPT
iptables -A OUTPUT -p gre -j ACCEPT

iptables -A INPUT -j ACCEPT -s 192.168.0.1/24 -d 0/0
iptables -A INPUT -j ACCEPT -s 79.170.186.215/24 -d 0/0
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth1 -j MASQUERADE

#Пытаюсь всем пользователям разрешить ходить напрямую
iptables -t nat -A PREROUTING -s 192.168.0.0/24 -p tcp --destination 79.170.111.11 -j ACCEPT
iptables -t nat -A PREROUTING -s 192.168.0.0/24 -p tcp --destination 217.11.1.50 -j ACCEPT

#Теперь заворачиваю всю непривелигированную подсеть в сквид
iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.128/25 -p tcp -d ! 192.168.0.1 --dport 80 -j REDIRECT --to-port 3128

#Даю полный доступ привелигированным пользователям
iptables -A FORWARD -d 192.168.0.28/32 -j ACCEPT
iptables -A FORWARD -d 192.168.0.41/32 -j ACCEPT
iptables -A FORWARD -d 192.168.0.0/24 -j DROP

Squid.conf:
http_port 192.168.0.1:3128 transparent
acl office src 192.168.0.128/25
http_access allow office
delay_pools 1
delay_class 1 1
delay_access 1 allow office
delay_parameters 1 8000/8000


Содержание

Сообщения в этом обсуждении
"Iptables+Squid"
Отправлено Аноним , 25-Фев-10 09:28 
#Теперь заворачиваю всю непривелигированную подсеть в сквид
iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.128/25 -p tcp -d ! 192.168.0.1 --dport 80 -j REDIRECT --to-port 3128

до этого поставь

iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.128/25 -p tcp -d ! 79.170.111.11 --dport 80 -j REDIRECT --to-port 3128

iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.128/25 -p tcp -d ! 217.11.1.50 --dport 80 -j REDIRECT --to-port 3128


"Iptables+Squid"
Отправлено Аноним , 25-Фев-10 09:29 
>[оверквотинг удален]
>iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.128/25 -p tcp -d
>! 192.168.0.1 --dport 80 -j REDIRECT --to-port 3128
>
>до этого поставь
>
>iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.128/25 -p tcp -d
>! 79.170.111.11 --dport 80 -j REDIRECT --to-port 3128
>
>iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.128/25 -p tcp -d
>! 217.11.1.50 --dport 80 -j REDIRECT --to-port 3128

верней даже не до а вместо =)


"Iptables+Squid"
Отправлено Аноним , 25-Фев-10 09:31 
>[оверквотинг удален]
>>
>>до этого поставь
>>
>>iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.128/25 -p tcp -d
>>! 79.170.111.11 --dport 80 -j REDIRECT --to-port 3128
>>
>>iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.128/25 -p tcp -d
>>! 217.11.1.50 --dport 80 -j REDIRECT --to-port 3128
>
>верней даже не до а вместо =)

ну и форвард до них
iptables -A FORWARD -s 192.168.0.0/24 -d 79.170.111.11/32 -j ACCEPT
iptables -A FORWARD -s 192.168.0.0/24 -d 217.11.1.50/32 -j ACCEPT


"Iptables+Squid"
Отправлено dolf85 , 01-Мрт-10 12:12 
!/bin/bash
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe iptable_nat
modprobe ip_nat_ftp
echo 1 > /proc/sys/net/ipv4/ip_forward


iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD
iptables -t nat -F POSTROUTING
iptables -t nat -F PREROUTING

iptables -A INPUT -p esp -j ACCEPT
iptables -A OUTPUT -p esp -j ACCEPT
iptables -A INPUT -p ah -j ACCEPT
iptables -A OUTPUT -p ah -j ACCEPT
iptables -A INPUT -p gre -j ACCEPT
iptables -A OUTPUT -p gre -j ACCEPT


iptables -A INPUT -j ACCEPT -s 192.168.0.1/24 -d 0/0
iptables -A INPUT -j ACCEPT -s 79.170.186.211/24 -d 0/0
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth1 -j MASQUERADE

iptables -A FORWARD -s 192.168.0.0/24 -d 79.170.111.11/32 -j ACCEPT
iptables -A FORWARD -s 192.168.0.0/24 -d 217.11.1.50/32 -j ACCEPT

iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.128/25 -p tcp -d ! 79.170.111.11 --dport 80 -j REDIRECT --to-port 3128
iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.128/25 -p tcp -d ! 217.11.1.50 --dport 80 -j REDIRECT --to-port 3128
iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.128/25 -p tcp -d ! 192.168.0.1 --dport 80 -j REDIRECT --to-port 3128

iptables -A FORWARD -d 192.168.0.20/32 -j ACCEPT
iptables -A FORWARD -d 192.168.0.21/32 -j ACCEPT
iptables -A FORWARD -d 192.168.0.22/32 -j ACCEPT
iptables -A FORWARD -d 192.168.0.23/32 -j ACCEPT
iptables -A FORWARD -d 192.168.0.25/32 -j ACCEPT
iptables -A FORWARD -d 192.168.0.40/32 -j ACCEPT
iptables -A FORWARD -d 192.168.0.111/32 -j ACCEPT
iptables -A FORWARD -d 192.168.0.112/32 -j ACCEPT

iptables -A FORWARD -d 192.168.0.0/24 -j DROP

При такой конфигурации у пользователей которых заворачиваю в сквид на все странички выпадает ошибка(192.168.0.133 TCP_DENIED/400 2260 GET error:invalid-request - NONE/- text/html) и не отображается, а у тех, кто прописан напрямую всё работает