Chifth
Постоялец
- Регистрация
- 28 Фев 2016
- Сообщения
- 160
- Реакции
- 101
- Автор темы
- #1
Не нашёл на форуме подобной темы, где бы можно было спросить\поделиться способами защиты своей сети. Предлагаю сдесь (Если модераторы не против).
Вообщем начну с того, что я в своих задачах использую OpenWRT. Отличная система, которую можно поставить на все самые ходовые роутеры (и даже на ПК). Ну и так как она заточена именно под Gateway - для нее есть все необходимые модули и плагины. И удобно админить через веб морду. Одним словом - Супер. Debian у меня теперь только если под сервер, и то, не всегда.
Теперь непосредственно к защите. (извините что не слишком красиво оформлено)
1. Защита от рекламы
Тут всё просто - ставим плагин Adblock и настраиваем списки. Если у вас роутер с 4МБ памяти - нужно собрать прошивку с блокировщиком, и вырезать что-то ненужное. Ресурсов блокировщик жрёт немного (в основном ОЗУ). Оказалось очень удобное решение для резки рекламы прямо "на входе". Настроить не сложно, домашняя сеть или офис облегченно вздохнут (но всё-же это не панацея).
2. Защита от DDoS.
Тут ещё проще: ставим плагин NODDOS и всё. Настроек там мало. работает сразу после ребута. (кстати если вы перезагрузите фаерволл из веб-морды, то он перестаёт работать т.к. правило для NODDOS добавляются во время загрузки системы (а не рестарта фаервола). обидно.
3. Защита от брутфорса.
Со временем рано или поздно вас начнут брутфорсить (особенно если вы светите наружу SSH или не дай бог проброшенный RDP). Долго пробовал разные способы, но ИМХО самый простой и эффективный - блокировать тоже прямо на входе с помощью нескольких правил iptables:
(вот мой конфиг, правьте под себя и вставляйте в веб-морде в Network->Firewall->вкладка-Custom Rules). Комментарии нужно удалить
iptables -t nat -I PREROUTING -p tcp --dport 1246 -j DNAT --to-destination 192.168.1.3:22 #проброс SSH
iptables -t nat -I PREROUTING -p tcp --dport 1247 -j DNAT --to-destination 192.168.1.218:22 #проброс SSH
iptables -t nat -I PREROUTING -p tcp --dport 1232 -j DNAT --to-destination 192.168.1.2:3389 #проброс RDP
iptables -t nat -I PREROUTING -p tcp --dport 1234 -j DNAT --to-destination 192.168.1.4:3389 #проброс RDP
#Правило проверки брутфорса SSH
iptables -N ssh_brute_check
iptables -A ssh_brute_check -m conntrack --ctstate NEW -m recent --name BLOCK --rcheck --seconds 3600 -j DROP
iptables -A ssh_brute_check -m conntrack --ctstate NEW -m hashlimit --hashlimit-name BLOCK --hashlimit-mode srcip --hashlimit-above 2/h --hashlimit-burst 2 -m recent --name BLOCK --set -j DROP
iptables -A ssh_brute_check -p tcp --syn -j ACCEPT
#Правило проверки брутфорса RDP
iptables -N rdp_brute_check
iptables -A rdp_brute_check -m conntrack --ctstate NEW -m recent --name BLOCKRDP --rcheck --seconds 3600 -j DROP
iptables -A rdp_brute_check -m conntrack --ctstate NEW -m hashlimit --hashlimit-name BLOCKRDP --hashlimit-mode srcip --hashlimit-above 2/h --hashlimit-burst 2 -m recent --name BLOCKRDP --set -j DROP
iptables -A rdp_brute_check -p tcp --syn -j ACCEPT
#Заворачиваем трафик на правила фильтрации
iptables -I INPUT -m conntrack --ctstate NEW -p tcp --dport 1245 -j ssh_brute_check #INPUT-фильтр для SSH на роутере. У меня нестандартный порт.
iptables -I FORWARD -m conntrack --ctstate NEW -p tcp --dport 22 -j ssh_brute_check #FORWARD - фильтр проброшенного траффика. порты тут уже указывать те, которые открыты на серверах
iptables -I FORWARD -m conntrack --ctstate NEW -p tcp --dport 3389 -j rdp_brute_check
4. Открытие доступа по "стуку" (Port Knocking)
======= извините, пока не осилил. буду рад если поможете ==========
//Из полезных фишек OpenWRT которые я использую:
- Wake on Lan
- Роутинг траффика на сайты на разных серверах в локалке (через nginx)
- Zaborona VPN для всей сети. (дома - через собственный VDS)
- Можно "слить" несколько сетей и админить через Radmin (но надо баловаться с маршрутизацией. использую редко).
Вообщем начну с того, что я в своих задачах использую OpenWRT. Отличная система, которую можно поставить на все самые ходовые роутеры (и даже на ПК). Ну и так как она заточена именно под Gateway - для нее есть все необходимые модули и плагины. И удобно админить через веб морду. Одним словом - Супер. Debian у меня теперь только если под сервер, и то, не всегда.
Теперь непосредственно к защите. (извините что не слишком красиво оформлено)
1. Защита от рекламы
Тут всё просто - ставим плагин Adblock и настраиваем списки. Если у вас роутер с 4МБ памяти - нужно собрать прошивку с блокировщиком, и вырезать что-то ненужное. Ресурсов блокировщик жрёт немного (в основном ОЗУ). Оказалось очень удобное решение для резки рекламы прямо "на входе". Настроить не сложно, домашняя сеть или офис облегченно вздохнут (но всё-же это не панацея).
2. Защита от DDoS.
Тут ещё проще: ставим плагин NODDOS и всё. Настроек там мало. работает сразу после ребута. (кстати если вы перезагрузите фаерволл из веб-морды, то он перестаёт работать т.к. правило для NODDOS добавляются во время загрузки системы (а не рестарта фаервола). обидно.
3. Защита от брутфорса.
Со временем рано или поздно вас начнут брутфорсить (особенно если вы светите наружу SSH или не дай бог проброшенный RDP). Долго пробовал разные способы, но ИМХО самый простой и эффективный - блокировать тоже прямо на входе с помощью нескольких правил iptables:
(вот мой конфиг, правьте под себя и вставляйте в веб-морде в Network->Firewall->вкладка-Custom Rules). Комментарии нужно удалить
iptables -t nat -I PREROUTING -p tcp --dport 1246 -j DNAT --to-destination 192.168.1.3:22 #проброс SSH
iptables -t nat -I PREROUTING -p tcp --dport 1247 -j DNAT --to-destination 192.168.1.218:22 #проброс SSH
iptables -t nat -I PREROUTING -p tcp --dport 1232 -j DNAT --to-destination 192.168.1.2:3389 #проброс RDP
iptables -t nat -I PREROUTING -p tcp --dport 1234 -j DNAT --to-destination 192.168.1.4:3389 #проброс RDP
#Правило проверки брутфорса SSH
iptables -N ssh_brute_check
iptables -A ssh_brute_check -m conntrack --ctstate NEW -m recent --name BLOCK --rcheck --seconds 3600 -j DROP
iptables -A ssh_brute_check -m conntrack --ctstate NEW -m hashlimit --hashlimit-name BLOCK --hashlimit-mode srcip --hashlimit-above 2/h --hashlimit-burst 2 -m recent --name BLOCK --set -j DROP
iptables -A ssh_brute_check -p tcp --syn -j ACCEPT
#Правило проверки брутфорса RDP
iptables -N rdp_brute_check
iptables -A rdp_brute_check -m conntrack --ctstate NEW -m recent --name BLOCKRDP --rcheck --seconds 3600 -j DROP
iptables -A rdp_brute_check -m conntrack --ctstate NEW -m hashlimit --hashlimit-name BLOCKRDP --hashlimit-mode srcip --hashlimit-above 2/h --hashlimit-burst 2 -m recent --name BLOCKRDP --set -j DROP
iptables -A rdp_brute_check -p tcp --syn -j ACCEPT
#Заворачиваем трафик на правила фильтрации
iptables -I INPUT -m conntrack --ctstate NEW -p tcp --dport 1245 -j ssh_brute_check #INPUT-фильтр для SSH на роутере. У меня нестандартный порт.
iptables -I FORWARD -m conntrack --ctstate NEW -p tcp --dport 22 -j ssh_brute_check #FORWARD - фильтр проброшенного траффика. порты тут уже указывать те, которые открыты на серверах
iptables -I FORWARD -m conntrack --ctstate NEW -p tcp --dport 3389 -j rdp_brute_check
4. Открытие доступа по "стуку" (Port Knocking)
======= извините, пока не осилил. буду рад если поможете ==========
//Из полезных фишек OpenWRT которые я использую:
- Wake on Lan
- Роутинг траффика на сайты на разных серверах в локалке (через nginx)
- Zaborona VPN для всей сети. (дома - через собственный VDS)
- Можно "слить" несколько сетей и админить через Radmin (но надо баловаться с маршрутизацией. использую редко).