Настройка IPSec VPN туннеля ZyXEL ZyWALL USG
Доброго времени суток! Много уважаемые читатели и гости, одного из крупнейших IT блогов России Pyatilistnik.org. В прошлый раз мы с вами разобрали, что делать если флешка защищена от записи и как снять эту защиту. Уверен, что у вас все получилось. Сегодня я хочу поговорить про настройку сетевого оборудования. У меня есть ZyXEL ZyWALL USG (в моем случае - USG 20). Требуется: Поднять IPSec VPN туннель между данной железкой и удаленным сервером. В моем частном случае ZyXEL выступал в роли маршрутизатора небольшого удаленного офиса, а в роли удаленного сервера - центральный шлюз.
Сетевые реквизиты, например, будут следующими:
- Белый IP ZyXEL: 22.33.44.55
- Белый IP-адрес удаленного шлюза: 11.22.33.44
- Подсеть офиса за ZyXEL: 10.0.40.0/24
- IP-адрес ZyXEL: 10.0.40.1
- Корпоративная подсеть: 10.0.0.0/8
- IP-адрес общего корп. шлюза: 10.0.0.1
- Авторизация на базе PSK (Pre-Shared Key)
Это все, конечно, исключительно пример. В данной раскладке мы имеем общую корпоративную подсеть 10/8 (10.0.0.0-10.255.255.255), частичкой которой будет выступать удаленный (относительно корпоративной подсети) офис за роутером ZyXEL.
Реализация IPSec VPN туннеля ZyXEL ZyWALL USG
- Роутер ZyXEL должен быть настроен и уже выпускать людей в интернет через NAT и все дела. Т.е. IP адреса должны быть настроены.
- Открываем веб-консоль управления ZyXEL и логинимся.
- Идем в Object->Address и создаем новый объект. Назовем его "CORP_NETWORK" и укажем следующие характеристики:
- Name: CORP_NETWORK
- Address Type: SUBNET
- Network: 10.0.0.0 (удаленная корпоративная подсеть)
- Netmask: 255.0.0.0 (маска корпоративной подсети)
4. Идем в VPN->IPSec VPN и переходим на вкладку VPN Gateway. Здесь создаем новый объект. В открывшемся окне сразу в верхней части нажимаем на "Show Advanced Settings" - нам понадобится вид всех опций. Заполняем следующие параметры:
- Enable: YES (ставим галочку)
- VPN Gateway Name: CORP_GATEWAY
- My Address: Interface = "wan1"
- Peer Gateway Address: Static Address = "11.22.33.44" (это белый IP-адрес корпоративного шлюза)
- Authentication: Pre-Shared Key = "mySuperKey" (это PSK ключ - он должен быть одинаковым на обоих концах)
- Phase 1, SA Life Time: 28800 (время в секундах - оно должно быть одинаковым на обоих сторонах... внимательно - здесь время задается только в секундах)
- Phase 1, Negotiation Mode: "Main"
- Phase 1, Proposal: DES + SHA1 (здесь указываются типы шифрования - тоже одинаковые с обоих сторон; к сожалению, AES128 или 3DES данные железки не поддерживают - соответствует K8 у Cisco)
- Key Group: DH2 (параметр, который еще называется DH Group - должен быть одинаковый с обоих сторон)
- NAT Traversal: NO (выключаем IPSec через NAT - нам он не нужен, ибо в интернет мы глядим напрямую - т.е. на порту WAN сразу виден шлюз провайдера ISP)
- Dead Peer Detection: YES
- Enable Extended Authentication: NO
5. Переключаемся на вкладку VPN Connection (здесь же - в VPN->IPSec VPN) и создаем новый объект. Назовем его "CORP_VPN_CONNECTION", снова нажмем на кнопочку "Show Advanced Settings" и зададим следующие параметры:
- Enable: YES
- Connection Name: CORP_VPN_CONNECTION
- Application Scenario: "Site-to-site"
- VPN Gateway: "CORP_GATEWAY"
- Local policy: "LAN1_SUBNET"
- Remote policy: "CORP_NET"
- Policy Enforcement: NO
- SA Life Time: "28800"
- Active Protocol: "ESP"
- Encapsulation: "Tunnel"
- Proposal: DES + SHA1
- Perfect Foward Secrecy (PFS): DH2
- Source NAT: NO (не включать ни для Outbound Traffic, ни для Inbound Traffic)
6. Теперь идем в "Network->Zone" и редактируем уже существующую зону "IPSec_VPN". Мы увидим, что в левой части "Member List" появилось наше подключение CORP_VPN_CONNECTION. Нажимаем на кнопочку "Вправо" так, чтобы это подключение переместилось в правую часть (из Available в Member). Также убедитесь, что установлен флажок напротив опции "Block intra-net traffic".
7. Помимо всего выше перечисленного - нам нужно разрешить трафик между внутренней сетью и общей корпоративной, через IPsec. Для этого идем в Firewall и создаем два объекта.
Объект 1:
- From: LAN1
- To: IPSec_VPN
- Access: allow
Объект 2:
- From: IPSec_VPN
- To: LAN1
- Access: allow
8. Проверяем. Не забываем, что с самих шлюзов, в общем случае, ничего не запингуется - нужно проверять с машинок, находящихся за шлюзами IPSec - т.е. либо с машинки за ZyXEL, либо с машинки, находящейся за центральным шлюзом. В случае с Linux-шлюзом есть возможность проверить вот таким образом:
где 10.0.40.1 - это внутренний IP-адрес ZyXEL, а 10.0.0.1 - это внутренний IP-адрес центрального Linux-шлюза (только если центральный шлюз построен на базе Linux).
Как видите все очень просто и настройка IPSec VPN туннеля ZyXEL ZyWALL USG не занимает много времени, а с вами был Иван Семин, автор и создатель IT портала Pyatilistnik.org.
Привет )
Рекомендую pfsense\opnsense. Оч гибкое baremetal-решение
forum.netgate.com/topic/120102/proxmox-ceph-zfs-pfsense/
Добрый день! Время будет постараюсь его посмотреть
Поженил таким образом железки Juniper srx и usg20vpn и получилась такая ситуация:
1) туннель поднят успешно
2) файрволы друг друга видят и видят свои машины
3) машины видят свой и чужой файрвол
4) машины не видят друг друга. Файрволлы также не видят машины за другим файрволлом.
Роуты прописаны статические. Правила срабатывают.
Что может быть?