Переадресация портов на сам роутер на Edgerouter

Недавно я перевел одного из своих клиентов на Ubiquiti EdgeRouter Lite, что является значительным улучшением по сравнению с их старым маршрутизатором, поставляемым провайдером.

Чтобы снизить частоту атак на веб-интерфейс маршрутизатора при одновременном разрешении удаленного администрирования, одна вещь, которую мы сделали на старом маршрутизаторе, заключалась в переносе удаленного управления на нестандартный порт, скажем, 8642. На старом маршрутизаторе, поставляемом провайдером Для этого было простое текстовое поле, но на Edgerouter это должно быть сделано вручную.

Я добавил простое правило переадресации портов на Edgerouter для пересылки PUBLIC_IP:8642 на LOCAL_LAN_IP:443, а также соответствующее правило брандмауэра:

name WAN_LOCAL {
     default-action drop
     description "WAN to router"
     ...
     rule 2 {
         action accept
         description "Allow remote management"
         destination {
             group {
                 port-group ManagementPorts
             }
         }
         log disable
         protocol tcp
         state {
             established enable
             invalid disable
             new enable
             related enable
         }
     }
     ...
 }

где port-group ManagementPorts содержащиеся 8642,

Однако я все еще не мог получить доступ к веб-интерфейсу. Единственный способ решить проблему - разрешить внешний доступ к порту. 443 как хорошо - тогда и доступ к порту 8642 работал. Тем не менее, это означает, что веб-интерфейс теперь доступен снаружи на двух портах, по умолчанию и тот, который я хочу.

Какова правильная конфигурация для этого, чтобы веб-интерфейс был доступен внутри 443 и внешне на 8642?

2 ответа

Решение

Ваш port-group ManagementPorts В конфигурации следует указать номер внутреннего порта (443), а не номер внешнего порта (8642). Правила трансляции NAT применяются до правил брандмауэра, поэтому к моменту, когда оно попадает в правило брандмауэра, оно запрашивает доступ через порт 443, Вот почему добавление 443 фиксированные вещи.

Я согласен, что VPN является более безопасным решением. Однако то, что вы просите, все еще можно сделать. Если вы согласитесь с предлагаемым решением, я настоятельно рекомендую вам также заменить сертификат HTTPS действительным сертификатом, подписанным корневым центром сертификации. В противном случае вы подвергаетесь риску атаки "человек посередине", потому что самоподписанный сертификат, который поставляется с EdgeRouter, является общественным достоянием. С VPN вы также захотите установить действующий сертификат.

Чтобы выставить EdgeRouter из глобальной сети, используя альтернативный порт, я думаю, вам нужно сначала изменить порт веб-интерфейса. †

  1. Войдите в роутер через ssh/console
  2. Войдите в режим настройки

    configure
    
  3. Установите порт веб-интерфейса; измените 8443 на то, что вы хотите

    set service gui https-port 8443
    
  4. Зафиксировать и сохранить

    commit
    save
    

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

  1. Создайте правило брандмауэра, чтобы разрешить входящий трафик через порт 8443

    edit firewall name WAN_LOCAL rule 50
    set description "Inbound traffic to WEB GUI"
    set action  accept
    set log disable
    set protocol tcp_udp
    set destination port 8443
    

† Атрибуция: Дейв Лейсли

Другие вопросы по тегам