Собственно, установка шлюза на базе Ubuntu-Server занимает не больше 10-15 минут. Что я и проделал не так давно. 1. Устанавливаем систему (я ставил ubuntu-8.10-server-i386.iso);
2. У меня подключение по локальной сети с использованием PPPoE. Для этого просто-напросто было запущено sudo pppoeconf и даны ответы на вопросы. По окончании работы pppoeconf соединение было установлено, о чем свидетельствовал положительный вывод на команду ifconfig ppp03. На установленной машине интернет появился. Теперь надо добавить включить все репозитарии в /etc/apt/source.list и выполнить sudo apt-get update;
3. Для доступа с других машин вашей локальной сети необходимо поставить всего лишь навсего два малюсеньких пакета: dnsmasq — чтобы переправлслись ваши DNS-запросы и ipmasq — собственно для NAT'a;
4. На машинках локальной сети получаем IP по DHCP от dnsmasq либо прописываем шлюз по умолчанию ручками;
Да поможет Вам данная инструкция! Ура! Далее про добавление squid ко всему этому хозяйству.
Доустановим на наш серверок кэширующий прокси-сервер squid:
1. Репозитарии мы уже подключали ранее, так что просто ставим пакет apt-get install squid;
2. Идем редактировать конфиг. Открываем /etc/squid/squid.conf, ищем нужные строки и корректируем следующим образом:
...
http_port 3128 #<<< раскомментировать эту строчку
...
cache_dir ufs /var/spool/squid 100 16 256 #<<< раскомментировать эту строчку
...
acl our_networks src 192.168.0.0/24 #<<< раскомментировать эту строчку
http_access allow our_networks #<<< раскомментировать эту строчку
...
visible_hostname proxy.localdomain #<<< добавить строчку, скорее всего взамен строки 2161
...
3. Перезапускаем проксю /etc/init.d/squid restart;
4. Настраиваем браузеры на клиентских машинах на использование прокси: адрес прокси — пишем IP-адрес интерфейса, обращенного в локалку. Скорее всего это будет 192.168.0.1, порт прокси — указанный в конфиге 3128.
UPDATE:
Желающим сделать прозрачное проксирование необходимо изменить в конфиге squid.conf одну строчку
...
http_port 3128 transparent
...
Затем для заворачивание нужных портов на сквид прописывается правило:
iptables -t nat -A PREROUTING -i eth0 -d ! 192.168.0.0/24 -p tcp -m multiport --dport 80,8080 -j DNAT --to 192.168.0.1:3128
Вот и все. Теперь у вас есть полноценный маршрутизатор на базе Ubuntu-server, а дальше дело Вашей фантазии. Можете сделать и фаловый, и вэб-сервер, и ftp, вообщем все, что Вам только захочется.
Ещё раз подчеркиваю, простоту и эффективность использования Ubuntu.