Итак, мы с вами успели ранее настроить сеть на нашем будущем сервере и сконфигурировать сквид.
Теперь приступим к файрволу.
Для ознакомления и изучения, рекомендую почитать здесь. Тогда вы будете вносить осмысленные изменения в систему, а не повторять мои ошибки (=
Включим в системе форвардинг. В файле /etc/sysctl.conf раскомментируем строчку
net.ipv4.ip_forward=1Итак, на текущий момент мы имеем полностью сброшенные настройки файрвола (iptables).
Сбрасываем цепочки:
$ sudo iptables -F
$ sudo iptables -F -t natЗапрещаем все входящие и разрешаем все исходящие и форвардинг:
$ sudo iptables -P INPUT DROP
$ sudo iptables -P OUTPUT ACCEPT
$ sudo iptables -P FORWARD ACCEPTРазрешаем принимать ответ на УЖЕ установленный соединени:
$ sudo iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPTРазрешаем loopback-трафик:
$ sudo iptables -A INPUT -i lo -j ACCEPTРазрешаем весь трафик с нашей внутренней сети (возьмем подсеть 222):
$ sudo iptables -A INPUT -s 192.168.222.0/24 -i eth1 -j ACCEPTИ, залог прозрачности! Перенапрявляем весь исходящий http-трафик (на порт 80) на порт сквида 3128:
$ sudo iptables -t nat -A PREROUTING -s 192.168.222.0/24 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
$ sudo iptables -t nat -A POSTROUTING -s 192.168.222.0/24 -o eth0 -j SNAT --to-source 192.168.56.39Проверяем на клиенте интернет. Напомню, что если прокси указывать не обязательно, шлюз выставить необходимо!
Однако, после первой же перезагрузки, мы поймем, что все наши старания ушли впустую.
Научим же их выживанию!
Итак, сохраним всё то, чем мы тут занимались:
$ sudo iptables-save > /etc/firewall.confУ меня с судо этот финт не получился (хотя в теории вроде должен…), потому можно сделать влогинившись в рута полностью (su) и запустив команду, но без sudo.
А теперь создадим скрипт, заставляющий ifupdown воскрешать наш файрвол:
$ sudo nano /etc/network/if-up.d/00-iptablesВпишем в него следующее:
#!/bin/sh
iptables-restore < /etc/firewall.confВыставим права на исполнение:
$ sudo chmod +x /etc/network/if-up.d/00-iptablesНе забываем перекреститься и перезапускаем сеть/перезагружаемся. Должно работать ^_^
В принципе у нас есть рабочий файрвол с прозрачным прокси!
В последней статье просто добавим пару фич (которыми я пользуюсь) в сквид…

Комментариев нет:
Отправить комментарий