закрыться от всех (кроме шлюза)

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС для молодых и начинающих системных администраторов.

Модератор: SLEDopit

unior
Сообщения: 15

закрыться от всех

Сообщение unior »

Есть машина которая нужна исключительно для получения и отправки почты.
С некоторых пор вышел регламент о запрете на использование данной ОС в нашей сети.
В общем нужно закрыть от всех и по всем протоколам 192.168.1.55 , но чтобы ему был доступен только шлюз 192.168.1.11 и внешний почтовый 192.168.2.22.
То есть как реализовать всем запрет, но с парой исключений?
В iptables у меня поверхностные знания.
Как отдельные ip и подсеть забанить знаю. А вот так чтобы всех, за исключением пары IP - нет.
Подскажите как это сделать грамотно.
Спасибо сказали:

Institut
Сообщения: 281
ОС: mint

Re: закрыться от всех

Сообщение Institut »

unior
Вы не написали
1 Операционную систему на 192.168.1.55
2 Какие сетевые интерфесы используются на 192.168.1.55.
3 Почтовый сервер - по какому протоколу работает - pop или imap
4 Как организована сеть - доступ к почтовому серверу идет через шлюз шлюз 192.168.1.11 или напрямую внутри сети.
Как предлагаете это всё угадать?

Предположим у Вас на 192.168.1.55 универсальная операционная система - debian.
Преположим, что Ваш почтовый сервер работает по протоколу pop3.
Выполните в консоле ifconfig - он покажет названия сетевых интерфейсов на 192.168.1.55.
Предположим это lo и eth0. Для debian установите пакет iptables-persistent ( apt install iptables-persistent)
Вам будет преложено сохранить имеющиеся правила iptables. Согласитесь.
В консоле через редактор, например nano, отредактируйте файл
/etc/iptables/rules.v4. Привидите его к следующему виду.
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -i eth0 -s 192.168.1.11 -p udp -m multiport --dports 53,67,68,123 -j ACCEPT #разрешаем dhcp,dns,ntp
-A INPUT -i eth0 -s 192.168.1.11 -p tcp -m multiport --dports 110,143 -j ACCEPT #разрешаем pop imap
-A INPUT -i eth0 -s 192.168.2.22 -p udp --dport 53 -j ACCEPT #разрешаем dns
-A INPUT -i eth0 -s 192.168.2.22 -p tcp -m multiport --dports 110,143 -j ACCEPT #разрешаем pop imap

Также можно запретить доступ по протоколу ipv6
/etc/iptables/rules.v6
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]

По умолчанию, всё что не разрешено, к нам не попадет.

Вот и всё. Если остались вопросы по iptables пишите.
Спасибо сказали:

unior
Сообщения: 15

Re: закрыться от всех

Сообщение unior »

1) Arch Linux
2)Eth0
3)MS, забираю броузером через https c OWA
4)Через шлюз

Запретили все кроме win7 :( Ну вот если не тянет ноут семерку! А работать надо....

Я так понял этот нужно править /etc/iptables/simple_firewall.rules

Спасибо сказали:

unior
Сообщения: 15

Re: закрыться от всех

Сообщение unior »

Возможно это не совсем грамотно и очень радикально, но просто и работает.
-A INPUT -i lo -j ACCEPT
-A INPUT -i usb0 -j ACCEPT
-A INPUT -s 192.168.1.11 -i eth0 -p tcp -j ACCEPT
-A INPUT -s 192.168.2.22 -i eth0 -p tcp -j ACCEPT
-A INPUT -i eth0 -p tcp -j DROP
-A INPUT -i eth0 -p udp -j DROP
-A INPUT -i eth0 -p icmp -j DROP

Единственное почему то жутко начал тормозить при запуске FireFox (после запуска работает как обычно) и команда netstat -a.
Не подскажите почему ?
Спасибо сказали:

Аватара пользователя
Bizdelnick
Модератор
Сообщения: 18635
Статус: grammatikführer
ОС: Debian GNU/Linux

Re: закрыться от всех

Сообщение Bizdelnick »

Вы полностью зарезали UDP, в том числе и DNS. Просто уберите указание протокола из правил:

Код: Выделить всё

-A INPUT -s 192.168.1.11 -i eth0 -j ACCEPT
-A INPUT -s 192.168.2.22 -i eth0 -j ACCEPT
-A INTPUT -i eth0 -j DROP
Правила для других интерфейсов лишние, если для цепочки INPUT установлена политика ACCEPT. Имеет смысл добавить ещё такие правила:

Код: Выделить всё

-A OUTPUT -d 192.168.1.11 -i eth0 -j ACCEPT
-A OUTPUT -d 192.168.2.22 -i eth0 -j ACCEPT
-A OUTPUT -i eth0 -j REJECT
Это позволит избавиться от тормозов при обращении к заблокированным хостам.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:

unior
Сообщения: 15

Re: закрыться от всех

Сообщение unior »

Попробую вариации. Спасибо.
Спасибо сказали:

Institut
Сообщения: 281
ОС: mint

Re: закрыться от всех

Сообщение Institut »

unior
А Вы читали, что я написал, ведь там в коментах указано, что для чего?
Посмотрите ВНИМАТЕЛЬНО на политики для цепочек.
Должны быть следующиие правила
-A INPUT -i lo -j ACCEPT
-A INPUT -i eth0 -s 192.168.1.11 -p udp -m multiport --dports 53,67,68,123 -j ACCEPT #разрешаем dhcp,dns,ntp
-A INPUT -i eth0 -s 192.168.1.11 -p tcp -m multiport --dports 80,443 -j ACCEPT #разрешаем http https
-A INPUT -i usb0 -j ACCEPT
А как это првило может работать? Выведите ifconfig.
Этих трех правил вполне достаточно, если всё организовано так,как Вы написали.
Если не заработает - пишите.
Спасибо сказали:

unior
Сообщения: 15

Re: закрыться от всех

Сообщение unior »

Скажите, в этом случае "-A INPUT -i eth0 -s 192.168.1.11 -p udp -m multiport --dports 53,67,68,123 -j ACCEPT" будут разрешены только эти порты по udp протоколу, а остальные будут блокированы?

-A INPUT -i usb0 -j ACCEPT - не обращайте внимания, это побочный продукт экспериментов )

А Вы читали, что я написал, ведь там в коментах указано, что для чего?

Ну разумеется читал, просто пробую сначала в грубую настройку. Так сказать - от простого к сложному.
Спасибо сказали:

Institut
Сообщения: 281
ОС: mint

Re: закрыться от всех

Сообщение Institut »

unior
Скажите, в этом случае "-A INPUT -i eth0 -s 192.168.1.11 -p udp -m multiport --dports 53,67,68,123 -j ACCEPT" будут разрешены только эти порты по udp протоколу, а остальные будут блокированы?
Да если Вы используете указанные политики.

Сделайте вывод

Код: Выделить всё

ip6tables -L -v -n
и покажите.
Спасибо сказали:

Аватара пользователя
Bizdelnick
Модератор
Сообщения: 18635
Статус: grammatikführer
ОС: Debian GNU/Linux

Re: закрыться от всех

Сообщение Bizdelnick »

unior писал(а):
31.01.2018 08:00
пробую сначала в грубую настройку. Так сказать - от простого к сложному.

А нужно ли Вам сложное? Тех правил, которые я привёл выше, более чем достаточно для задачи, как она была Вами поставлена в исходном вопросе. Попытки ограничить что-то ещё требуют очень хорошего понимания работы сетевых сервисов. У нас тут, на форуме, ни у кого такого понимания нет и быть не может, потому что мы не знаем, как что в вашей сети организовано.
Так что мой совет остаётся прежним: не разграничивайте доступ по протоколам и портам, блокируйте или разрешайте всё.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:

unior
Сообщения: 15

Re: закрыться от всех

Сообщение unior »

Походу он у меня отсутствует.

:~$ ip6tables -L -v -n
modprobe: FATAL: Module ip6_tables not found.
ip6tables v1.4.21: can't initialize ip6tables table `filter': Table does not exist (do you need to insmod?)
Perhaps ip6tables or your kernel needs to be upgraded.


А нужно ли Вам сложное?

Да как Вам сказать, мне и этого не нужно было пару дней назад.
Но раз уж взялся, думаю что нужно поизучать данный предмет.


В любом случае спасибо, теперь имею примерное представление, в каком направлении двигаться.
Далее уже по наличию свободного времени и необходимости. Но это уже лирика... :)
Спасибо сказали: