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


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Помогите проверить правильность настройки iptables  (Прочитано 796 раз)

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

Оффлайн opavlov

  • Автор темы
  • Новичок
  • *
  • Сообщений: 2
    • Просмотр профиля
Есть локальная сеть с  шлюзом. собственно пытаюсь настроить этот самый шлюз. раньше он был настроен при помощи ARNO_IPTABLES,но подумалось что лучше разобраться и настроить IPTABLES по нормальному. В результате прочтения огромного количества различных статей постарался набросать скриптик для настройки, хочется узнать мнение  более опытных пользователей правильно ли я все написал и  насколько данные настройки  безопасны в плане проникновения из вне.
 на шлюзе 2 сетевухи:
enp4s0 - смотрит в интернет.
enp2s0 - смотрит в  локалку.
в локалке 2 подсети, на шлюзе поднят openvpn сервер для удаленной работы , ssh сервер для администрирования и  DNS сервер.
сам скрипт:
#!/bin/bash
#очищаем  таблицу iptables
iptables -F
#сначала все все пакеты отбросим
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

# блокировка интернета для совсем обнаглевших сотрудников
#iptables -I FORWARD -s 192.168.1.14 -o enp4so -m conntrack --ctstate NEW -j DROP
#iptables -I FORWARD -s 192.168.1.43 -o enp4so -m conntrack --ctstate NEW -j DROP

# это  должно разрешить пакеты по локально петле
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
#это правило для ICMP пакетов, тоже нужно хорошенечко подумать , эти пакеты могут  показать ненужную информацию о сервере  наружу
iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT
iptables -A OUTPUT -p icmp -j ACCEPT
# это разрешает  динамические порты(список определен в /proc/sys/net/ipv4/ip_local_port_range) считается что это безопасно
iptables -A OUTPUT -p TCP --sport 32768:61000 -j ACCEPT
iptables -A OUTPUT -p UDP --sport 32768:61000 -j ACCEPT
# тут мы разрешаем попадание в сеть  тех  TCP и UDP пакетов которые были запрошены локальными  приложениями
iptables -A INPUT -p TCP -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p UDP -m state --state ESTABLISHED,RELATED -j ACCEPT
#открываем SSH во внутреннюю сеть и внешнюю сеть
iptables -A INPUT -i enp2s0 -p TCP --dport 22 -j ACCEPT
iptables -A OUTPUT -o enp2s0 -p TCP --sport 22 -j ACCEPT
iptables -A INPUT -i enp4so -p TCP --dport 2016 -j ACCEPT
iptables -A OUTPUT -o enp4so -p TCP --sport 2016 -j ACCEPT

iptables -A INPUT -i enp2s0 -p udp --dport 53 -j ACCEPT
iptables -A OUTPUT -o enp2s0  -p udp --sport 53 -j ACCEPT
#открываем порты наружу для  будущего  open-vpn сервера
iptables -A INPUT -i enp4so -p TCP --dport 2017 -j ACCEPT
iptables -A OUTPUT -o enp4so -p TCP --sport 2017 -j ACCEPT
iptables -A INPUT -i enp4so -p UDP --dport 2017 -j ACCEPT
iptables -A OUTPUT -o enp4so -p UDP --sport 2017 -j ACCEPT

iptables -A INPUT -i enp2s0 -p TCP --dport 80 -j ACCEPT
iptables -A OUTPUT -o enp2s0 -p TCP --sport 80 -j ACCEPT
#порт MYSQL
iptables -A INPUT -i enp2s0 -p TCP --dport 3306 -j ACCEPT
iptables -A OUTPUT -o enp2s0 -p TCP --sport 3306 -j ACCEPT

#это тут для того чтобы подключившись через  open-vpn можно было видеть локалную сеть, всю
iptables -A FORWARD -i tun0 -s 10.8.0.0/24 -d 192.168.1.0/24 -j ACCEPT
iptables -A FORWARD -i tun0 -s 10.8.0.0/24 -d 192.168.2.0/24 -j ACCEPT#чтобы машины из разных подсетей видели друг друга
iptables -A FORWARD -i enp2s0 -s 192.168.2.0/24 -d 192.168.1.0/24 -j ACCEPT
iptables -A FORWARD -i enp2s0 -s 192.168.2.0/24 -d 192.168.2.0/24 -j ACCEPT

# тут мы настраиваем маскарадинг
iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate NEW -i enp2s0 -s 192.168.1.0/24 -j ACCEPT
iptables -A FORWARD -m conntrack --ctstate NEW -i enp2s0 -s 192.168.2.0/24 -j ACCEPT
iptables -P FORWARD DROP
iptables -t nat -A POSTROUTING -o enp4so -j MASQUERADE

# и для клиентов на ВПН
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j MASQUERADE

# разрешаем трафик  rtcp между подсетями
iptables -A INPUT -i enp2s0 -p TCP --dport 554 -j ACCEPT
iptables -A OUTPUT -o enp2s0 -p TCP --sport 554 -j ACCEPT
#разрешаем NFS трафик межу подсетями
iptables -A INPUT -i enp2s0 -p TCP --dport 2049 -j ACCEPT
iptables -A OUTPUT -o enp2s0 -p TCP --sport 2049 -j ACCEPT

Рад буду любым комментариям, предложениям и культурной критике :)

Оффлайн opavlov

  • Автор темы
  • Новичок
  • *
  • Сообщений: 2
    • Просмотр профиля
 :( никто так и не ответил... очень жаль.

Вопросы по профильному ПО лучше задавать на форумах, посвященных этому ПО, или напрямую разработчику. К Ubuntu тема прямого отношения не имеет, в разделе "Для новичков" находиться по идее не должна (здесь уместнее Сети и интернет). Ввиду отсутствия ответов, по состоянию на 25.02.2020 модератором раздела принято решение топик закрыть.
--zg_nico
« Последнее редактирование: 25 Февраля 2020, 01:53:37 от zg_nico »

 

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