synology.forum архив спільноти · 2005–2022
ai.synology.forum →
ГлавнаяДополнительные Приложения Synology › NAS + программируемый роутер (Mikrotik,...)

NAS + программируемый роутер (Mikrotik,...)

MaxoDroid · 06.07.2019

Это вопрос к тем, у кого хранилище подключено к такому программируемому роутеру, как Микротик или ему подобному.

Но интересно будет услышать всех.

 

1. Делали ли Вы защиту от перебора портов Synology, проброшенных в МикроТике? Или делали запреты адресов в Брандмауэре NAS?

 

2. Какого типа у Вас файервол в роутере? Нормального закрытого (есть только оговоренные разрешения) или нормально открытого типа (сделаны запреты превентивного типа на возможные атаки) ?

 

3. Какова статистика атак? И помогли ли Вам логи в роутере для анализа происходящего.

 

4. Какие изменения делали в плане безопасности.

 

 

kucher · 08.07.2019

1. На NAS. Блокировка по времени вполне достаточна.

2. Всё что не разрешено - запрещено.

3. Боты атакуют всегда, надо лишь дать им минимум возможностей в той степени, в какой информация представляет интерес. Я видел сервер биллинга, который несколько лет живёт с открытым RDP портом наружу. :)

4.

- ушёл от Drive на NAS (только для мобильников), пользователям его стараюсь не ставить, использую отдельный девайс для OVPN

- никаких лишних сервисов на NAS, используется только как файловое хранилище

- регулярное резервное копирование файлов с NAS в независимое хранилище

- все шары во вне с/на NAS - парольные, лучше временные; постоянные - с серьёзным паролем

- новый пользователь - новый лог/пасс, все увольняющиеся теряют доступ на NAS и вообще в сеть предприятия (VPN), с любых устройств

- не запускать неизвестное и не проверенное ПО, особенно на ПК с админ-правами к NAS. :)

- в электронном или печатном виде: не хранить пароли и их назначение целиком, в доке с паролями давать минимум инфы, а часть любого парольного слова лучше всегда держать в голове

 

Считаю правильным делиться здесь рекомендациями по безопасности, а не "где у меня дыра". :)

 

Генератор паролей в Excel, OpenOffice, LibreOffice таблицах, формула на 8 символов:

=СИМВОЛ(СЛУЧМЕЖДУ(33;126))&СИМВОЛ(СЛУЧМЕЖДУ(33;126))&СИМВОЛ(СЛУЧМЕЖДУ(33;126))&СИМВОЛ(СЛУЧМЕЖДУ(33;126))&СИМВОЛ(СЛУЧМЕЖДУ(33;126))&СИМВОЛ(СЛУЧМЕЖДУ(33;126))&СИМВОЛ(СЛУЧМЕЖДУ(33;126))&СИМВОЛ(СЛУЧМЕЖДУ(33;126))

Число генерируемых символов пароля - это кол-во частей формул "&СИМВОЛ(СЛУЧМЕЖДУ(33;126)", в которых задаётся диапазон генерируемых формулой символов. Для генерации нового пароля следует копировать ячейку "на саму себя".

MaxoDroid · 08.07.2019
1. На NAS. Блокировка по времени вполне достаточна.

2. Всё что не разрешено - запрещено.

Спасибо за ответ!

Всем будет интересно узнать чей-то опыт.

Я тоже колеблюсь в чью сторону отдать предпочтение защите.

Видимо, запущу приложение EZ-Internet чисто для того, что бы увидеть сводную таблицу портов и протоколов с тем, что бы в роутере поставить защиту на 3-5 попыток входа по проброшенным портам в запущенные службы.

Если кто не смог с пяти раз зайти в NAS - отправляется в блэк лист навсегда.

Интересно, такой защиты NAS будет достаточно?

 

У кого есть опыт борьбы с ботами? Поделитесь опытами. Плиз.

 

6EJlblu_4EJl0BEK · 02.08.2019

Как раз закончил настройку микротика для защиты от ботов.

Опишу свое видение ситуации.

В самой DSM включаем защиту учетной записи и автоматическую блокировку, двухфакторную авторизацию и встроенный брэндмауэр. В брэндмауэре на локальном интерфейсе разрешаем полный доступ из локальной сети и поднятых впн сетей, к нужным сервисам даем доступ только из своей страны (или из нужных стран). Если нет соответствующих правил - отказать в доступе.

Меняем стандартные порты на нестандартные, где это возможно.

Настраиваем в портале приложений для каждого сервиса свой псевдоним, доступ по портам отключаем.

Получаем сертификат от Let's Encrypt.

В итоге имеем, в моем случае, что надо пробросить только 443 порт для доступа к сервисам по псевдониму. Остальное через впн (на микротике l2tp без шифрования, для снижения нагрузки, или другой туннель, кому как нравится), либо пробрасываем нужные порты, если без этого не обойтись, но исключаем их из списка (ниже).

На самом микротике настраиваем PSD ловушку (легко ищется в гугле). IP адрес сканирующего добавляется в черный список (не смысла добавлять адреса перманентно, они постоянно меняются, я делаю таймаут 30 дней), и в таблице RAW этому списку полностью запрещается доступ извне.

Также выбрал список стандартных портов, по которым злоумышленник может идентифицировать DSM:

 

5000-5001,9997-9999,5002,5004,9025-9040,65001,5005-5006,7001,8001,8801,9900-9901,19997-19998,50001-50002,3689,9002,3483,1234,9997-9999,6690

 

Соответственно, эти порты не должны быть проброшены.

Тех, кто стучится на эти порты, также отправляем все в тот же черный список.

Добавил к этим портам еще 80 и 8080, чтоб отсекать сканеры уязвимостей, которые по-умолчанию сканируют доступ к веб интерфейсам (они-то точно нам не нужны), у меня эти порты не используются в сети.

 

Фаервол, смотрящий в интернет (бест практиз) делается "нормально закрытым". Статистика сканирования стандартных портов DSM - за несколько часов (пока настраивал) около десятка обращений на порт 5000, при том, что микротик обслуживает 2 канала выхода в интернет со статическими адресами и разрешенным пингом из интернета. Для многих ботов достаточно запретить icmp пакеты из интернета, т.к. они определяют доступность хоста именно таким способом, за редким исключением некоторых, которые ломятся на заданный порт по всему заданному диапазону адресов без проверки доступности хоста. Но пинг я не запрещал, это необходимость в моем случае.

 

P.S. Забыл добавить, что во всем этом будет слабым звеном сам микротик, если не побеспокоиться о его защите и верной настройке, ведь атаки на эти устройства сейчас не редкость, а старые версии ОС имеют свои уязвимости, но это уже выходит за рамки этого форума ;)

Пока писал этот пост, прилетело несколько запросов с разных IP на порт 3689 (iTune).

Список портов, используемых DSM, я брал отсюда:

https://github.com/SynoCommunity/spksrc/wik...logy-Used-Ports

6EJlblu_4EJl0BEK · 02.08.2019
с тем, что бы в роутере поставить защиту на 3-5 попыток входа по проброшенным портам в запущенные службы.

Инетерсно, как вы будете это реализовывать на https подключении? Можно ловить http заголовки или содержимое http пакета, но это не тру - использовать http. А с https наврядли получится. Если вы хотите ловить по количеству пакетов, то блокироваться будут все, и валидные тоже, начиная с n-го пакета. Если хотите блокировать по new пакетам, то после первого пакета устанавливается соединение, и остальные пакеты не имеют маркера new, в рамках этого соединения можно хоть 100 раз пытаться ввести логин/пароль (брут). Может, я что-то упустил? Опишите реализацию.

MaxoDroid · 08.08.2019

Спасибо за отзыв по теме.

Критерии защиты могут быть от самого низкого "Ну и нафиг" до параноидального.

Сам пока ограничился файерволом в Микротике, снабдив его помимо стандартных правил по пробросу фасттрака, входных и форвардных проверок на валидность, защитой от брут-форса, защитой от Syn - флуда, защитой от сканирования портов, и проверка по количеству попыток входа в NAS.

По статистике вижу, что боты посещают и хакеры тоже иногда стучатся.

Важным является то, что бы при попытке пингования Вашего роутера он просто рвал соединение без ответа. Принцип такой: если на стук идет просто тишина, то там просто ничего не может быть.

На данный момент брандмауэр в Сино отключен.

Инетерсно, как вы будете это реализовывать на https подключении?
У меня нет служб и пакетов, использующих https подключение.

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

6EJlblu_4EJl0BEK · 08.08.2019
А как Вы используете его в Сино? для каких пакетов?

Эмм....вы по http подключаетесь с мобильных или к вебморде через интернет или у вас только самба шары в локальной сети?

Я использую https во всех службах, к которым должен быть доступ из интернета, например photo station, video station, cloud station server и т.д. Иначе, смысл в защите, если пароли и данные передаются в открытом виде? Тогда лучше вообще закрыть доступ из интернета к NAS, или осавить только впн порт и использовать ресурсы только внутри тоннеля.

 

И да, не единым брутфорсом страшен интернет, также многочисленными уязвимостями синолоджи и его пакетов, использование которых микротик не обнаружит в данном случае.

Дабы не быть голословным, вот что есть из общедоступного:

https://exploits.shodan.io/?q=synology

6EJlblu_4EJl0BEK · 08.08.2019
Важным является то, что бы при попытке пингования Вашего роутера он просто рвал соединение без ответа. Принцип такой: если на стук идет просто тишина, то там просто ничего не может быть.

Это не совсем верно, почему, я описал постом выше, повторюсь более развернуто. Сканеры часто не сканируют по пингу, а ломятся по заданным портам, посылая не icmp а syn/ack пакет. Защита от syn-флуда от таких запросов не защитит, т.к. самого флуда не происходит по-сути, но злоумышленник получает ответ на готовность установки соединения, что и является индикатором того, что этот порт открыт и на нем запущена какая-то служба, а некоторые сканеры еще и могут определить, какая именно служба запущена, вплоть до версии (по отпечатку в ответе), поэтому просто замена порта на нестандартный тоже редко помогает защититься. Профит )

MaxoDroid · 25.08.2019

При создании конфига своего Микрота я пользовался статьями Григория и лекциями МикроТика В Ютубе

Пока Слава Богу проблем нет. По статистике имелись место Син-флуда, попытки сканеров портов.

Ни одной попытки пролома по портам 5000,5001,6690,80,443,5005,5006 не было.

freewind · 26.08.2019
При создании конфига своего Микрота я пользовался статьями Григория и лекциями МикроТика В Ютубе

Пока Слава Богу проблем нет. По статистике имелись место Син-флуда, попытки сканеров портов.

Ни одной попытки пролома по портам 5000,5001,6690,80,443,5005,5006 не было.

 

У вас в логах, попыток сканирования портов не будет (если вы конечно специально не делали систему обнаружения атак)... там идет 1 обращение на 1 порт с 1 IP потом меняется связка порт адрес обращения (включая mac). Совсем продвинутые еще и время делают рандомным, чтобы цепочки блокировок по частоте обращения не срабатывали

enzain · 28.08.2019
У вас в логах, попыток сканирования портов не будет (если вы конечно специально не делали систему обнаружения атак)... там идет 1 обращение на 1 порт с 1 IP потом меняется связка порт адрес обращения (включая mac). Совсем продвинутые еще и время делают рандомным, чтобы цепочки блокировок по частоте обращения не срабатывали

 

У меня это реализовано проще, порты сипа и так далее - т.е. то, чего у меня в принципе нет - блокируются ИПы по первой же попытке подключения.

 

Порты используемые типа винбокса, и т.д. - то, что используется для управления - по белому списку. если не в белом списке, то тоже сразу в баню.

 

Ну а попытки логина в ДСМ сама ДСМ блочит ИПы после 5 попыток за 10 минут по стандартной настройке.

MaxoDroid · 29.08.2019
Совсем продвинутые еще и время делают рандомным, чтобы цепочки блокировок по частоте обращения не срабатывали

Спасибо за совет! Может быть так оно и есть.

Поделитесь своим конфигом, плиз, по Вами сказанному замечанию. Может быть это и есть причина того, что у меня диски в сон не уходят?

6EJlblu_4EJl0BEK · 31.08.2019
Ну а попытки логина в ДСМ сама ДСМ блочит ИПы после 5 попыток за 10 минут по стандартной настройке.

 

На fail2ban надейся, а дыры в прошивке в интернет не открывай )

 

Каждый сам решает, насколько он параноик )

MaxoDroid · 01.09.2019
Каждый сам решает, насколько он параноик )

Я сам чуть в паранойю не впал.

Radiohead · 02.10.2019
Ни одной попытки пролома по портам 5000,5001,6690,80,443,5005,5006 не было.

 

Файрвол - это пакетный фильтр. Фильтрует пакеты но совершенно не смотрит что ВНУТРИ валидных пакетов)

А там много чего интересного может быть)

 

У меня стоит роутер от Synology. RT2600AC. Я его взял на попробовать только потому что в него встроен IDS. Система обнаружения вторжений. Ума не приложу как они смогли запихнуть IDS Suricatta в такую маленькую коробочку, но оно работает! IDS анализирует СОДЕРЖИМОЕ пакетов. Вы даже не представляете сколько всякого дерьма пытается пройти) 90% конечно не опасно но попадаются интересные экземпляры.

MaxoDroid · 02.10.2019
Файрвол - это пакетный фильтр. Фильтрует пакеты но совершенно не смотрит что ВНУТРИ валидных пакетов)

Это не относится к роутерам профессионального типа, как то MikroTik Cisco и тому подобных.

Они могут смотреть в пакет как Вы сами пожелаете.

А если пакет относится к dst-nat и он валидный, и к тому же прошел проверку соединения на пароль, то зачем в него лезть?

Radiohead · 03.10.2019

Если-б все было так просто, такие вещи как IDS/IPS типа Snort и Suricata никогда-б не появились)

Кстати сурикату можно даже к микротику прикрутить. Правда для этого нужен будет еще и внешний сервер)))

https://habr.com/ru/post/431600/

 

PS

Я вот сейчас зашел на свой домашний роутер на котором стоит Threat Prevention от Synology (Суриката только сбоку) и что я вижу?

 

A Network Trojan was Detected

Уровень серьезности:Высокое

Состояние:Перетащить

Исходный IP-адрес:192.168.0.34 (MacBook-Admin)

IP-адрес места назначения:195.22.26.248

Время:2019-10-03 20:55:00

Имя сигнатуры:ET CNC Ransomware Tracker Reported CnC Server group 59

 

Т.е. возможно на макбуке (который ВНУТРИ моей сети) сидит какой-то троян и пытается сконнектится наружу со своим сервером CnC для получения дальнейших инструкций)

С точки зрения обычного файрвола - это вполне себе легитимное событие)

Все что идет изнутри сети - обычному фаеру не очень интересно)

ishtvan · 04.10.2019
Т.е. возможно на макбуке (который ВНУТРИ моей сети) сидит какой-то троян и пытается сконнектится наружу со своим сервером CnC для получения дальнейших инструкций)
Проверить макбук, хотя-бы бесплатным ClamXav - что за троян поселился.

Я недавно без всякой задней мысли решил проверить йМак, и был сильно удивлён количеством найденной вирусной дряни, писишных в основном malware agent.

MaxoDroid · 05.10.2019
возможно на макбуке (который ВНУТРИ моей сети) сидит какой-то троян и пытается сконнектится наружу

А вот это мысль дельная! Мы думаем, что только из вне нам может угрожать опасность, а то,что у нас внутри может сидеть что-то, что может мешать ка нам, так и представлять угрозу внешнему миру, мы подчас и забываем!

6EJlblu_4EJl0BEK · 26.10.2019

Жаль, что мои сообщения вначале темы как-то обошли стороной.

За три месяца использования описанного в начале темы метода, в логировании правил - тысячи попыток подключения по стандартным портам синолоджи. Тысячи заблокированных адресов с ботами.

Добавил запрещающее правило форварда из локальной сети к адресам, которые попадались на сканировании портов - отловил несколько зловредов, которые загружались на компьютеры и сканировали локалку изнутри.

Кстати, хороший инструмент для просмотра сервисов на ПК, в том числе, кто и куда ломится в интернет, Process Explorer от Microsoft Sysinternals.

 

Но, меньше знаешь - лучше спишь...пока шуршат головки дисков )

 

MaxoDroid, в https они смотреть не будут все равно.

MaxoDroid · 28.10.2019
Жаль, что мои сообщения вначале темы как-то обошли стороной.

Я переосмысливаю все сказанное Вами выше.

Одно скажу, что не думал, что если открыта сессия к порту, а кто-то будет стучаться в тот же порт, то эта ловушка не работает, если мы работаем с chain=input connection state=new. А второй пользователь будет стучаться в порт на законных основаниях.

Тогда нужно защищаться способом, изложенным Вот Здесь

Sergey_w · 24.12.2019

Давно использую микротики у себя.Задача была поставлена - отсечь любопытных, сканирующие порты не предназначенные им и защита периметра сети..Адреса белые.

Применяю политику автоблокировок на группы адресов, ip портов и протоколов,которые должны быть защищены из вне или не используются.

Для адресов внутри сети траффик разрешен (local,real)

Запросы на не используемые адреса блокируется, исключая общедоступные порты для поисковиков, включая icmp на некоторое время.

Поднят впн для видеокамер на даче.

Процесс добавления в local адреса из интернета (дача, камеры), мной немного усовершенствован.

Сначала удаленный динамический адрес стучится на назначенный порт и src address добавляется в local-ftp на 10 секунд!

Дале на фтп (микротик или др.) c измененным портом посылается файл, название которого есть в правиле добавления в локальный лист ,src list= local-ftp, dst port=?65530, в опции content. При совпадении удаленный хост добавляется в local и впн открыт для этого адреса на 1 час.

Процедура на удаленном микротике по шедулеру повторяется с частотой < 60 минут.Это нужно, так как удаленный адрес может меняться.( там ppoe).

На сервере synology само-собой закрыты регионы, которые вообщемто не нужны с точки зрения коммуникации. Например, Африка, Бразилия и т.п.

Сейчас на микротике в дропах более 40 тыс уникальных адресов, обычно доходит до 100 тыс с чем то ( после ребута они удаляются) и порядка 3 тыс адресов в статике от сервера и около 1 тыс. подсетей с различных общедоступных BL сервисов.

Микротик должен быть достаточн мощным, использовал 2011, сейчас 4011.

 

6EJlblu_4EJl0BEK · 10.01.2020

Port knocking конечно хорошо, пока ты сам пользуешься этой сетью. Если к сино имеют доступ куча родни, всем не объяснить...

Защита от перебора портов тоже штука хорошая, но не отрабатывает на все 100, как выяснилось. Поделюсь опытом и своим решением.

Если прочитать начало темы, вы узнаете, как я защищал свой сино от вездесущих ботов путем выставления нестандартных портов, установкой ловушки на стандартные и т.д.

И это работало до определенного момента...

Пока я не решил настроить Zabbix сервер на виртуалке в синолоджи, который помимо прочего, собирает логи с микротика.

И заметил при анализе логов, что в последнее время на мой нестандартный порт иногда пытаются подключиться с левых адресов - вычислили-таки.

Как я понял, менять порт большого смысла нет, рано или поздно он все же станет известен, и попытки авторизации продолжатся, а значит при появлении какой-либо уязвимости злоумышленники смогут ее использовать, имея доступ к странице авторизации. Стал вопрос, как спрятать страницу авторизации.

На помощь пришел очень простой способ, спрятать все открытые порты синолоджи за Nginx, используя его как фронтенд обратный прокси и настроив на нем "первичную" авторизацию. Из этого способа вытекает другая проблема - использование мобильных приложений, которые не умею двойную авторизацию, но обо всем по порядку...

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

Тут пришло в голову - для определенных User agent не запрашивать авторизацию на Nginx, благо у всех мобильных приложений Синолоджи свой уникальный User agent.

В итоге, немного подшаманив конфиги Nginx, получилось, что все боты, которые обращаются к серверу по IP адресу сразу получают 403 Access denied. Обратиться к серверу можно только зная доменное имя и ссылку (типа https://www.mynas.ru/photo). Доменное имя нигде не светится при запросах, а ссылки вообще можно придумать типа "iowhdtj", тогда наугад никто не подберет точно.

Если по доменному имени кто-то заходит - сначала выскочит безликое окно авторизации Nginx, а уже потом запрос авторизации к самому сино - удобно, теперь потенциальные уязвимости синолоджи не страшны, эксплоит к хранилищу не применить.

А вот если прилетит запрос на доступ именно от мобильных приложений, то Nginx свою авторизацию не запрашивает, пропуская такой запрос напрямую к сино.

Еще огромный плюс такой схемы - очень удобно фильтровать на прикладном уровне доступ из определенных стран или даже городов по IP, также Nginx умеет фильтровать запросы от поисковых, рекламных и прочих ботов (того же гугла, яндекса и т.д.), и еще много чего он умеет.

Есть идеи, как эту схему еще улучшить, сделав сквозную авторизацию для мобильных приложений через http авторизацию Nginx, но пока тестирую то, что получилось.

 

Этот способ, конечно, выходит за рамки данной темы, но дополняет настроенную защиту на микротике, что сводит к минимуму попытки любого доступа третьих лиц. Да и область применения Nginx намного обширнее.