Поиск по сайту

Температура за бортом

Войти в Гараж



Установка SQUID с опцией enable-htcp для организации работы дочернего прокси через родительский по GRE-тоннелю

На родительском прокси:

1. Скачал src пакет с той же версией squid что и стояла на проксике по ссылке

http://www.rpmfind.net/linux/rpm2html/search.php?query=squid&submit=Search+...&system=&arch=


alt

2. Установил этот пакет: #rpm –ivh squid-.2.4.STABLE6-1.7.2.src.rpm

3. Поправил spec-файл в /usr/src/asplinux/SPECS. Дописал опцию вручную. 


alt

4. #rpmbuild –ba squid.spec  -прошло оk

5. #rpm –Uvh –force squid-.2.4.STABLE6-1.7.2.src.rpm

6. Поправил симлинк на /etc/squid/~errors   /usr/lib/squid/errors/English

7. Разремарил в /etc/squid/squid.conf следующие строки:

icp_port 3130
htcp_port 4827

8. В самом начале секции ACCESS CONTROL  файла squid.conf добавил следующее:

acl admnet1 src 192.168.1.0/24

acl admnet2 src 192.168.135.0/24

#Здесь указываем сети, которые будут ходить в инет через дочерний прокси чтобы родительский пропускал клиентов из этих сетей без вторичной авторизации

http_access allow admnet1

http_access allow admnet2


9. #service squid restart –ok

10. Чтобы исключить подсеть из подсчета статистики в etc/sarg/sarg.conf отредактировал:

# TAG:  exclude_hosts file

#       Hosts, domains or subnets will be excluded from reports.

#

#       Eg.: 192.168.10.10 - exclude ip address only

#            192.168.10.0  - exclude full C class

#            s1.acme.foo   - exclude hostname only

#            acme.foo      - exclude full domain name

#

#2008#exclude_hosts none

exclude_hosts 192.168.135.0

exclude_hosts 192.168.1.0


11. Отредактировал /etc/sysconfig/iptables

……

-A INPUT -s 192.168.1.0/24 -p tcp -m tcp --dport 3128 -j ACCEPT

……

-A INPUT -s 192.168.135.0/30 -p tcp -m tcp --dport 3128 -j ACCEPT

-A INPUT -s 192.168.135.0/30 -p udp -m udp --dport 3128 -j ACCEPT

-A INPUT -s 192.168.135.0/30 -p udp -m udp --dport 3130 -j ACCEPT

-A INPUT -s 192.168.135.0/30 -p tcp -m tcp --dport 3130 -j ACCEPT

-A INPUT -s 192.168.135.0/30 -p icmp -j ACCEPT

……..


Применяем новые правила:

#service iptables reload


12. Поднимаем тоннель скриптом  /etc/init.d/tun_mat следующего содержания

#!/bin/sh

modprobe ip_gre

ip tunnel add mat mode gre remote 10.16.16.2 local 81.81.81.100 ttl 255

#Имя тоннеля mat носит произвольный характер

#здесь 10.16.16.2 - адрес дочернего прокси,  81.81.81.100 - собственный адрес родительского прокси

ip link set mat up

ip addr add 192.168.135.1/30 dev mat

ip route add 192.168.1.0/24 dev mat


13. Проверяем маршрутизацию #route

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

................

81.81.81.98     *               255.255.255.252 U     0      0        0 eth0

192.168.135.0   *               255.255.255.0   U     0      0        0 mat

192.168.1.0     *               255.255.255.0   U     0      0        0 mat

...............

127.0.0.0       *               255.0.0.0       U     0      0        0 lo

default         81.81.81.99     0.0.0.0         UG    0      0        0 eth0


На дочернем прокси:

1. Отредактировал /etc/squid/squid.conf следующим образом:

icp_port 3130

#htcp_port 4827

cache_peer 10.10.10.100                    parent   3128  3130 no-query default

#Здесь 10.10.10.100 - внутренний интерфейс родительского прокси, то есть интерфейс смотрящий не

#в сторону провайдера, а в локальную  сеть

#cache_peer proxy.mydomen.ru     parent          3128  3130

…….

…….

# ACCESS CONTROLS

#Recommended minimum configuration:

acl all src 0.0.0.0/0.0.0.0

never_direct allow all


2. #service squid restart –ok

3. Отредактировал /etc/sysconfig/iptables

# Generated by iptables-save v1.2.7a on Fri Nov  2 15:09:25 2007

*filter

:INPUT ACCEPT [28319544:14880855455]

:FORWARD ACCEPT [0:0]

:OUTPUT ACCEPT [34180030:29275487880]

-A INPUT -s 81.81.81.100 -j ACCEPT

-A INPUT -s 192.168.135.0/30 -j ACCEPT

-A FORWARD -s 192.168.135.0/30 -d 192.168.1.0/24 -j ACCEPT

-A FORWARD -s 192.168.1.0/24 -d 192.168.135.0/30 -j ACCEPT

......................


4.Поднимаем тоннель скриптом  /etc/init.d/tun_mat следующего содержания

#!/bin/sh

modprobe ip_gre

ip tunnel add mat mode gre remote 81.81.81.100 0 local 10.16.16.2 ttl 255

ip link set mat up

ip addr add 192.168.135.2/30 dev mat

ip route add 10.10.10.0/24 dev mat


5. Проверяем маршрутизацию

#route

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

192.168.135.0   *               255.255.255.0   U     0      0        0 mat

10.10.10.0   *               255.255.255.0   U     0      0        0 mat

192.168.1.0     *               255.255.255.0   U     0      0        0 eth1

10.16.16.0      *               255.255.255.0   U     0      0        0 eth2

127.0.0.0       *               255.0.0.0       U     0      0        0 lo

default         10.16.16.1      0.0.0.0         UG    0      0        0 eth2


Обновлено 06.02.2017 20:22
 
Rambler's Top100
 
www.garage.zabkray.net , Powered by HardWorm Chita 2010 - 2023