|
Ключевые слова: debian, linux, proxy, transparent, iptables, (найти похожие документы)
From: Roman Sozinov <http://sozinov.blogspot.com> Date: Mon, 3 Jan 2008 14:31:37 +0000 (UTC) Subject: Установка Debian-маршрутизатора с возможностями прозрачного proxy-сервера Оригинал: http://sozinov.blogspot.com/2007/04/debian-proxy.html 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 будет ругаться. apt-get install squid 4. Поправить конфигурационный файл squid'а - /etc/squid/squid.conf http_port 127.0.0.1:3128 http_port 192.168.1.254:3128 transparent cache_mgr admin@example.com acl office src 192.168.1.0/24 5. Добавить в /etc/network/if-up.d/00-firewall строки для того, чтобы была возможность использовать squid прозрачно (transparent) iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128 iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 8080 -j REDIRECT --to-port 3128 После этого перегрузить для чистоты эксперимента сервер и попробовать обратиться с внутренней сети к какому-нибудь внешнему сайту. Если всё хорошо, то сайт должен открыться как и прежде, а в логах 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
|
Обсуждение | [ RSS ] |
|
Добавить комментарий |
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |