From: Roman Sozinov <http://sozinov.blogspot.com>
Date: Mon, 3 Jan 2008 14:31:37 +0000 (UTC)
Subject: Установка Debian-маршрутизатора с возможностями прозрачного proxy-сервера
1. Установить Debian 4.0 (Etch). Описание тестировалось на
netinstall-дистрибутиве, eth0 - локальная сеть 192.168.1.0/24, eth1 -
внешний интерфейс. Данная версия Debian содержит Squid 2.6.5, а для
этой версии несколько изменились настройки для прозрачного proxy.
2. Создать скрипт /etc/network/if-up.d/00-firewall следущего
содержания:
#!/bin/sh
PATH=/usr/sbin/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 ! eth1 -j ACCEPT
iptables -A FORWARD -i eth1 -o eth0 -m state --state ESTABLISHED,RELATED -j ACC
EPT
# Разрешить доступ из LAN-сети к внешним сетям
iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT
# Masquerade.
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
# Запретить forward извне во внутреннюю сеть
iptables -A FORWARD -i eth1 -o eth1 -j REJECT
# Включить forward
echo 1 > /proc/sys/net/ipv4/ip_forward
3. Установить proxy-сервис squid, перед этим удостоверившись, что в
файле /etc/hosts указан fqdn-имя для данного сервера, иначе squid
будет ругаться.
После этого перегрузить для чистоты эксперимента сервер и попробовать
обратиться с внутренней сети к какому-нибудь внешнему сайту. Если всё
хорошо, то сайт должен открыться как и прежде, а в логах squid
(/var/log/squid/access.log) должны появиться соответствующие записи.
Ссылки:
1. Setting up a simple Debian gateway
2. Transparent proxies via Squid
3. Accelerator Mode - Squid User's Guide
653 Прочтений • [Установка Debian-маршрутизатора с возможностями прозрачного proxy-сервера (debian linux proxy transparent iptables)] [08.05.2012] [Комментариев: 0]