Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: Ubuntu 10.04.1 LST + Squid 3 интересуют мнения о безопасность такой конфигурации  (Прочитано 2285 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн dim-mik

  • Автор темы
  • Участник
  • *
  • Сообщений: 104
    • Просмотр профиля
eth0 – интернет
eth1 – локалка

/etc/sysctl.conf
net.ipv4.ip_forward = 1
nano /etc/rc.local
и перед строкой exit 0
iptables-restore < /etc/iptables.rules
/etc/iptables.rules
# Generated by iptables-save v1.4.4 on
*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A PREROUTING -i eth1 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.0.1:3128
-A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
COMMIT
# Completed on
# Generated by iptables-save v1.4.4 on
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -i lo -j ACCEPT
-A FORWARD -i eth1 -o eth0 -p udp -m udp --dport 53 -j ACCEPT
-A FORWARD -i eth1 -o eth0 -p tcp -m multiport --dports 25,26,110,443,465,995 -m mac --mac-source 01:02:03:04:05:06 -j ACCEPT
-A FORWARD -i eth1 -o eth0 -p tcp -m multiport --dports 25,26,110,443,465,995 -m mac --mac-source 01:02:03:04:05:07 -j ACCEPT
-A FORWARD -i eth1 -o eth0 -j REJECT --reject-with icmp-port-unreachable
-A FORWARD -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i eth0 -o eth1 -j REJECT --reject-with icmp-port-unreachable
COMMIT
# Completed on

/etc/squid3/squid.conf
http_port 3128 transparent
acl comp1 arp 01:02:03:04:05:06
acl comp2 arp 01:02:03:04:05:07
http_access allow comp1
http_access allow comp2
http_access deny all 

Согласно правил iptables по mac-адресам разрешаю электронную почту и т.д.
Браузеры ходят через squid3 по mac-адресам.

Оффлайн fisher74

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 13763
    • Просмотр профиля
А зачем кучу разрешающих правил в цепочке FORWARD, если дефолтное ACCEPT стоит?

Оффлайн dim-mik

  • Автор темы
  • Участник
  • *
  • Сообщений: 104
    • Просмотр профиля
А затем стоит
-A FORWARD -i eth1 -o eth0 -j REJECT --reject-with icmp-port-unreachable

Оффлайн Unreg

  • Активист
  • *
  • Сообщений: 751
  • Ubuntu 8.04 / Acer Aspire One 110 > Debian 5.04
    • Просмотр профиля
    • LJ
INPUT ACCEPT в filter не очень хорошо выглядит
Поставить DNS сервер и в таблицу NAT добавить

Цитировать
sudo iptables -A PREROUTING -s 192.168.0.0/24 -d ! 192.168.0.1/32 -i eth1 -p tcp -m tcp --dport 53 -j DNAT --to-destination 192.168.0.1:53
sudo iptables -A PREROUTING -s 192.168.0.0/24 -d ! 192.168.0.1/32 -i eth1 -p udp -m udp --dport 53 -j DNAT --to-destination 192.168.0.1:53

в squid.conf
$ grep dns_nameservers /etc/squid/squid.conf
dns_nameservers 192.168.0.1
думаю в squid3 есть такая же директива
тогда
-A FORWARD -i eth1 -o eth0 -p udp -m udp --dport 53 -j ACCEPT
не нужно

-m state лучше заменить на -m conntrack --ctstate
~$ sudo iptables-save -t filter
Цитировать
# Generated by iptables-save v1.4.2 on Sat Dec  4 14:26:45 2010
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m conntrack --ctstate INVALID -j DROP
-A INPUT -i ! lo -m addrtype --src-type LOCAL -j DROP
-A INPUT -i lo -j ACCEPT
-A INPUT -i eth0 -p icmp -j ACCEPT
-A INPUT -i eth0 -p udp -m udp --sport 67 --dport 68 -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -i eth1 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i eth0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i eth1 -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -m conntrack --ctstate INVALID -j DROP
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -s 192.168.0.0/24 -i eth1 -p udp -m udp --dport 53 -j ACCEPT
-A FORWARD -p tcp -m multiport --dports 25,26,110,443,465,995 -m mac --mac-source 01:02:03:04:05:06 -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -p tcp -m multiport --dports 25,26,110,443,465,995 -m mac --mac-source 01:02:03:04:05:07 -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -m conntrack --ctstate DNAT -j ACCEPT
COMMIT
# Completed on Sat Dec  4 14:20:53 2010

Поставить monit для sshd и squid3


Пользователь решил продолжить мысль 04 Декабря 2010, 16:32:43:
добавить snmpd и mrtg (+ apache2) / cacti (+ php5 + mysql) при необходимости

Пользователь решил продолжить мысль 04 Декабря 2010, 16:35:04:
отключить ipv6, если не используется

если есть проблемы с MTU

Цитировать
sudo iptables -t mangle -I FORWARD -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
« Последнее редактирование: 04 Декабря 2010, 16:35:04 от Unreg »

Оффлайн dim-mik

  • Автор темы
  • Участник
  • *
  • Сообщений: 104
    • Просмотр профиля
Установил dnsmasq.
/etc/dnsmasq.conf не менял, так как DHCP-сервер на Терминальном сервере.

Убрал из /etc/iptables.rules
-A FORWARD -i eth1 -o eth0 -p udp -m udp --dport 53 -j ACCEPT
Установил и настроил pptpd.

/etc/iptables.rules
# Generated by iptables-save v1.4.4 on
*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A PREROUTING -i eth1 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.0.1:3128
-A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
COMMIT
# Completed on
# Generated by iptables-save v1.4.4 on
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m multiport --dports 22,1723 -j ACCEPT
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i eth1 -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i eth1 -o eth0 -p tcp -m multiport --dports 25,26,110,443,465,995 -m mac --mac-source 08:00:27:64:BF:E4 -j ACCEPT
-A FORWARD -i eth1 -o eth0 -p tcp -m multiport --dports 25,26,110,443,465,995 -m mac --mac-source 08:00:27:4A:24:45 -j ACCEPT
-A FORWARD -p tcp -m multiport --dports 3391,3392 -j ACCEPT
COMMIT
# Completed on

Внутри сети.
Согласно правил iptables по mac-адресам разрешаю электронную почту и т.д.
Браузеры ходят через squid3 по mac-адресам.
Терминальный сервер подключается к VPN серверу на порт 1723.

Снаружи сети.
Могу подключиться putty на порт 22.
Могу подключиться к VPN серверу на порт 1723.
Могу подключиться к Терминальному серверу на портах 3391,3392.

Отключил ipv6, точно не используется.
Проверяю каталог и значение:
cat /proc/sys/net/ipv6/conf/all/disable_ipv6В ответе 0 - значит что поддержка ipv6 включена.
Выключаю:
sudo echo 1 > /proc/sys/net/ipv6/conf/all/disable_ipv6

Вопрос 1. Не могу понять зачем нужны следующие сроки?
-A INPUT -m conntrack --ctstate INVALID -j DROP
-A FORWARD -m conntrack --ctstate INVALID -j DROP

-A INPUT -i ! lo -m addrtype --src-type LOCAL -j DROP
-A INPUT -i eth0 -p icmp -j ACCEPT
-A INPUT -i eth0 -p udp -m udp --sport 67 --dport 68 -j ACCEPT

-A FORWARD -m conntrack --ctstate DNAT -j ACCEPT


Вопрос 2. Проблемы с MTU не встречал, в чем выражаются?

Оффлайн Unreg

  • Активист
  • *
  • Сообщений: 751
  • Ubuntu 8.04 / Acer Aspire One 110 > Debian 5.04
    • Просмотр профиля
    • LJ

Вопрос 1. Не могу понять зачем нужны следующие сроки?
-A INPUT -m conntrack --ctstate INVALID -j DROP
-A FORWARD -m conntrack --ctstate INVALID -j DROP

пакеты, классифицировать которые не возможно, не нужны не в транзите, не самому хосту-шлюзу по крайней мере с WAN интерфейса

(Нажмите, чтобы показать/скрыть)

Цитировать
-A INPUT -i ! lo -m addrtype --src-type LOCAL -j DROP
защита от спуфинга: правило заблокирует пакеты, которые пришли с внешних интерфейсов, но при этом в качестве адреса источника у них указан один из адресов, принадлежащих нашему хосту (например, 127.0.0.1).

Цитировать
-A INPUT -i eth0 -p icmp -j ACCEPT
принимать на WAN интерфейсе ICMP сообщения любого типа
Цитировать
-A INPUT -i eth0 -p udp -m udp --sport 67 --dport 68 -j ACCEPT
обеспечить работу DHCP клиента на WAN интерфейсе 

Цитировать
-A FORWARD -m conntrack --ctstate DNAT -j ACCEPT
виртуальное состояние, положительный результат выдаётся если исходный адрес получателя отличен от адреса отправителя ответа
очень полезно при политике по умолчанию DROP в цепочке FORWARD таблицы filter

Цитировать
Вопрос 2. Проблемы с MTU не встречал, в чем выражаются?
если коротко, то в криках от пользователей "Этот сайт открывается, а этот не открывается!!!"


Пользователь решил продолжить мысль 07 Декабря 2010, 16:05:58:
Цитировать
Внутри сети.
Согласно правил iptables по mac-адресам разрешаю электронную почту и т.д.
Браузеры ходят через squid3 по mac-адресам.
Терминальный сервер подключается к VPN серверу на порт 1723.

Снаружи сети.
Могу подключиться putty на порт 22.
Могу подключиться к VPN серверу на порт 1723.
Могу подключиться к Терминальному серверу на портах 3391,3392.
Опешите  подробнее топологию сети
Какие службы и где работают?

Цитировать
Установил dnsmasq.
/etc/dnsmasq.conf не менял, так как DHCP-сервер на Терминальном сервере.

Убрал из /etc/iptables.rules
-A FORWARD -i eth1 -o eth0 -p udp -m udp --dport 53 -j ACCEPT
какой DNS сервер указан у клиентов?

« Последнее редактирование: 07 Декабря 2010, 16:05:58 от Unreg »

Оффлайн dim-mik

  • Автор темы
  • Участник
  • *
  • Сообщений: 104
    • Просмотр профиля
Цитировать
Опешите  подробнее топологию сети
Какие службы и где работают?

Интернет -> Ubuntu + squid3 + pptpd (для доступа к терминальному серверу снаружи) -> свитч ->
-> Терминальный сервер Windwos 2003 Server, 1С и т.д. он же DHCP сервер
 + тонкие клиенты "ИТ Консультант" + компьютеры со своими Windows

Снаружи подключаюсь при помощи putty для настройки Ubuntu.
Изнутри у терминального сервера постоянное VPN подключение с Ubuntu.
Снаружи сотрудники подключаются к VPN серверу Ubuntu, а затем подключаются
к терминальному серверому через VPN подключение на портах 3391,3392.

Цитировать
какой DNS сервер указан у клиентов?
DHCP сервер на Терминальном сервере всем раздает IP, шлюз - внутренний адрес Ubuntu.

Все работает как хотелось. Спасибо!
С остальным буду экспериментировать.

Оффлайн dim-mik

  • Автор темы
  • Участник
  • *
  • Сообщений: 104
    • Просмотр профиля
А как на счет такого варианта?

Ubuntu 10.04.1 LST + Squid 3 + Dansguardian + ssh + pptpd
eth0 – интернет
eth1 – локалка

/etc/sysctl.conf
net.ipv4.ip_forward = 1
/etc/rc.local
перед строкой exit 0
iptables-restore < /etc/iptables.rules
/etc/iptables.rules
# Generated by iptables-save v1.4.4 on Mon Dec 13 19:29:28 2010
*nat
:PREROUTING DROP [1:36]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A PREROUTING -p udp -m udp --dport 53 -j ACCEPT
-A PREROUTING -p tcp -m multiport --dports 22,1723,3391,3392 -j ACCEPT
-A PREROUTING -i eth1 -p tcp -m multiport --dports 8080,25,110,465 -m mac --mac-source 00:00:00:00:00:01 -j ACCEPT
-A PREROUTING -i eth1 -p tcp -m multiport --dports 8080,25,110,465,5190 -m mac --mac-source 00:00:00:00:00:02 -j ACCEPT
-A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
COMMIT
# Completed on Mon Dec 13 19:29:28 2010
# Generated by iptables-save v1.4.4 on Mon Dec 13 19:29:28 2010
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
COMMIT
# Completed on Mon Dec 13 19:29:28 2010

Ведь правило PREROUTING стоит до INPUT или FORWARD.

Схема сети:
Интернет -> Ubuntu 10.04.1 LST + Squid 3 + Dansguardian + ssh + pptpd -> свитч ->
-> Терминальный сервер Windwos 2003 Server, 1С и т.д. он же DHCP сервер
 + тонкие клиенты "ИТ Консультант" + компьютеры со своими Windows

В результате:

Внутри сети.
1. Все клиенты внутри сети ходят в интернет через Dansguardian порт 8080.
2. Интернет без прокси или через порт 3128 не работает.
3. По mac-адресам разрешаю электронную почту (25,110,465), ICQ (5190) и т.д.
4. Изнутри у терминального сервера постоянное VPN подключение с Ubuntu.

Снаружи сети.
1. Могу подключиться putty на порт 22.
2. Могу подключиться к VPN серверу на порт 1723.
3. Могу подключиться к Терминальному серверу на портах 3391,3392.
4. Снаружи к прокси подключит нельзя.
« Последнее редактирование: 14 Декабря 2010, 10:22:41 от dim-mik »

Оффлайн vboxer

  • Активист
  • *
  • Сообщений: 656
  • Release: 14.10 Codename: utopic
    • Просмотр профиля
а завести всю внутренную сеть в VPN не проще?

Оффлайн dim-mik

  • Автор темы
  • Участник
  • *
  • Сообщений: 104
    • Просмотр профиля
Интересуют мнения о iptables

 

Страница сгенерирована за 0.039 секунд. Запросов: 20.