PfSense: Доступ к ADSL модему из-за файрвола

Материал из wiki.lissyara.su
Перейти к: навигация, поиск

Источник: официальный Wiki PFSense

Некоторые DSL или кабельные модемы имеют веб-интерфейс с приватным IP адресом со стороны LAN. Поскольку это находится за Вашим файрволом и не имеет внешнего IP, получить доступ к нему не так просто, как может показаться. Вашему файрволу, как правило, присваивается внешний IP адрес, и он отправляет весь исходящий трафик в сторону провайдера. Ваш провайдер не будет маршрутизировать частные подсети обратно к модему, оставляя его недоступным. В этой статье описываются настройкхи, необходимые для доступа к интерфейсу управления вашего модема с локальной сети LAN.

Замечание: Внутренний IP адрес Вашего модема должен быть из другой подсети, чем ваша локальная сеть LAN. Если это не так, то все ваши попытки подключиться к модему будут безуспешными. Файрвол не сможет перенаправить запрос из вашей локальной сети к модему.

Настройка псевдонима IP

Здесь псевдоним к соответствующему разделу Alias меню PFSense отношения не имеет.

В примере, показанном здесь, WAN интерфейс брандмауэра имеет присвоенный публичный IP адрес, и модем использует IP 192.168.1.254 с маской /24 (255.255.255.0). Для того, чтобы модем стал доступен, сначала необходимо присвоить WAN интерфейсу PFSense приватный IP адрес из подсети LAN модема. В этом примере будет использоваться адрес 192.168.1.1/24. В этом случае ваша локальная сеть не должны использовать 192.168.1.x по причине, описанной выше. Чтобы присвоить этот IP, выполните следующиее через SSH сессию, или меню Diagnostics > Command.

ifconfig em0 inet 192.168.1.1 netmask 255.255.255.0 alias

Здесь em0 является интерфейсом Ethernet вашей WAN. Теперь вы должны быть в состоянии пинговать IP вашего модема, но не через меню Diagnostics > Ping, так как источник IP пакетов в этом случае публичный IP, а не псевдоним IP. Необходимо войти через SSH и выбрать опцию 8. Вы можете проверить, запустив нормальный пинг, например, как ниже:

# ping 192.168.1.254
PING 192.168.1.254 (192.168.1.254): 56 data bytes
64 bytes from 192.168.1.254: icmp_seq=0 ttl=64 time=2.296 ms

Как только будет получен ответ, вы будете готовы продолжить...

Сделать псевдонимный IP постоянным

Настроенный выше псевдоним IP будет сохраняться только до перезагрузки. Это удобно для тестирования, но после завершения установки, вы можете захотеть, чтобы IP остается после перезагрузки. Чтобы это сделать, скачать резервную копию конфигурации через меню Diagnostics > Backup/restore, и откройте его в текстовом редакторе. Перед </ System>, добавьте следующую строку:

<shellcmd>ifconfig em0 inet 192.168.1.1 netmask 255.255.255.0 alias</shellcmd>

Настройка Virtual IP

Теперь вам нужно добавить Virtual IP для ранее созданного псевдонима IP, чтобы он появился в конфигурации NAT, которая будет завершена в следующем шаге. Откройте меню Firewall > Virtual IP и нажмите плюс '+'. Выберите тип Other, и введите псевдоним IP в поле IP-адрес.

Смотреть скриншот

Затем щелкните Save и Apply Changes.

Настройка NAT

Теперь нужно настроить NAT на перенаправление трафика, предназначенного вашему модему, к псевдониму IP. Это необходимо для того, чтобы модем видел трафик от источников IP в своей локальной подсети. Без этого NAT, вам придется настроить маршрут к модему, чтобы он знал, как добраться до вашей внутренней подсети. В некоторых модемах это невозможно, и в большинстве случаев проще настроить NAT трафик, так что маршрутизация не имеет значения. Чтобы добавить правило NAT, откройте меню Firewall > NAT, и щелкните закладку Outbound. Переключите режим на Manual Outbound NAT и щелкните Save. Правила файрвола Lan > Wan будут автоматически добавлены. Если у вас более одной внутренней подсети, убедитесь, что соответствующие правила добавлены для этих подсетей также. Вы можете найти самую подробную информацию по исходящим NAT в книге pfSense.

Щелкните плюс '+' для добавления нового Outbound NAT правила. Интерфейс выберите Wan. Для Source выберите Network и введите подсеть вашей LAN. Значение Destination установите IP подсети вашего модема. В поле Translation выберите Virtual IP, созданный для вашего псевдонимного IP.

Смотреть скриншот.

Затем щелкните Save и Apply changes.

Проверка подключения

Теперь вы можете пинговать модем из вашей локальной подсети.

C:\>ping 192.168.1.254

Pinging 192.168.1.254 with 32 bytes of data:
Reply from 192.168.1.254: bytes=32 time=2ms TTL=62
Reply from 192.168.1.254: bytes=32 time=2ms TTL=62

А также использовать веб-интерфейс модема для управления.