Всем привет! Ищу, как настроить простой IPsec VPN в Azure через USG. Надеюсь, этот пост кому-то поможет... Я мучился с этим целую неделю, когда поставил новое оборудование Ubiquiti UniFi в своём домашнем лабораторном сетапе, и после множества проб и ошибок вот что у меня получилось.
Вот что у меня есть:
- UniFi Cloud Key
- UniFi USG
- UniFi Switch PoE 24 port
- UniFi AP AC LR
Внутреннюю конфигурацию описывать не буду, она довольно простая — у меня несколько VLAN и сетей для домашней лаборатории.
Но снаружи я хотел получить две вещи:
- VPN до дома друга (тоже с USG)
- VPN до Azure
CIDR:
мой дом — 172.16.0.0/20
Azure — 172.16.16.0/20
друг — 10.100.0.0/16
Начните с прочтения этих ссылок:
Первая ссылка (автор cchristian) отлично объясняет, что и как нужно делать — это крутой туториал. Я опирался именно на неё.
Я долго не мог настроить эти простые VPN’ы... Помните, я в душе системщик, и для меня сетевые «прибамбасики» — это иногда проблема, если не считать того, к какому VLAN подключаюсь 😀
Основная задача VPN — S2S с Azure и S2S с другим USG. Обе туннели тяжело настраивались через GUI. По инструкции с поста cchristian я немного модифицировал конфигурацию под свои задачи и теперь VPN работает. Спасибо огромное!
Основная идея такая:
1. Создайте в Azure VNet/subnet/gateway — я взял самый простой и дешевый вариант, на всякий случай.
2. В этой сети разместите что-то, к чему можно «постучаться» — я быстро создал виртуалку, чтобы был IP, по которому можно проверить связь.
3. На своей стороне прошёл стандартную настройку всего UniFi — у меня тоже несколько VLAN’ов, ничего особенного. Но обязательно убедитесь, что у вашего USG публичный IP — у меня это решил вопрос с настройкой через проксирование провайдера. Не хочу вдаваться в NAT, думаю, это была причина моих изначальных проблем с USG.
4. Вот моя конфигурация для Azure site-to-site VPN (всю эту информацию я тоже подчерпнул из разных постов на форуме, много перепробовал, и сейчас она работает, по крайней мере последние 4 часа точно 😀):
```
set vpn ipsec auto-firewall-nat-exclude enable
set vpn ipsec esp-group esp-azure-dynamic compression disable
set vpn ipsec esp-group esp-azure-dynamic lifetime 3600
set vpn ipsec esp-group esp-azure-dynamic mode tunnel
set vpn ipsec esp-group esp-azure-dynamic pfs disable
set vpn ipsec esp-group esp-azure-dynamic proposal 1 encryption aes256
set vpn ipsec esp-group esp-azure-dynamic proposal 1 hash sha1
set vpn ipsec ike-group ike-azure-dynamic key-exchange ikev2
set vpn ipsec ike-group ike-azure-dynamic lifetime 28800
set vpn ipsec ike-group ike-azure-dynamic proposal 1 dh-group 2
set vpn ipsec ike-group ike-azure-dynamic proposal 1 encryption aes256
set vpn ipsec ike-group ike-azure-dynamic proposal 1 hash sha1
set vpn ipsec site-to-site peer <Your Azure GW PIP (x.x.x.x)> authentication mode pre-shared-secret
set vpn ipsec site-to-site peer <Your Azure GW PIP (x.x.x.x)> authentication pre-shared-secret <**your secret here**>
set vpn ipsec site-to-site peer <Your Azure GW PIP (x.x.x.x)> connection-type initiate
set vpn ipsec site-to-site peer <Your Azure GW PIP (x.x.x.x)> description MyAzureVPN
set vpn ipsec site-to-site peer <Your Azure GW PIP (x.x.x.x)> ike-group ike-azure-dynamic
set vpn ipsec site-to-site peer <Your Azure GW PIP (x.x.x.x)> local-address <Your USG PIP (x.x.x.x)>
set vpn ipsec site-to-site peer <Your Azure GW PIP (x.x.x.x)> tunnel 1 allow-nat-networks disable
set vpn ipsec site-to-site peer <Your Azure GW PIP (x.x.x.x)> tunnel 1 allow-public-networks disable
set vpn ipsec site-to-site peer <Your Azure GW PIP (x.x.x.x)> tunnel 1 esp-group esp-azure-dynamic
set vpn ipsec site-to-site peer <Your Azure GW PIP (x.x.x.x)> tunnel 1 local prefix 172.16.0.0/20
set vpn ipsec site-to-site peer <Your Azure GW PIP (x.x.x.x)> tunnel 1 remote prefix 172.16.16.0/20
set vpn ipsec ipsec-interfaces interface eth0
```
5. По инструкции cchristian теперь нужно закоммитить, сохранить, выйти из режима конфигурации, экспортировать конфиг.
6. Открыть JSON-экспорт и убрать всё лишнее, оставив только нужные строки — мне нужно просто добавить инфу по VPN, остальное хочу делать через GUI.
Ubiquiti — люблю вашу технику и даю должное, как сказал cchristian, вот бы получше документацию и более понятные туториалы, которые бы помогли с такими вещами... Немного внимания и заботы к гайдам сильно бы поспособствовало масштабу распространения и простоте пользования, даже для новых или бета-функций.
Теперь по поводу VPN USG к USG, который, казалось бы, должен быть простым, но пока мы его так и не смогли поднять.
Удачи всем!
Вот что у меня есть:
- UniFi Cloud Key
- UniFi USG
- UniFi Switch PoE 24 port
- UniFi AP AC LR
Внутреннюю конфигурацию описывать не буду, она довольно простая — у меня несколько VLAN и сетей для домашней лаборатории.
Но снаружи я хотел получить две вещи:
- VPN до дома друга (тоже с USG)
- VPN до Azure
CIDR:
мой дом — 172.16.0.0/20
Azure — 172.16.16.0/20
друг — 10.100.0.0/16
Начните с прочтения этих ссылок:
Первая ссылка (автор cchristian) отлично объясняет, что и как нужно делать — это крутой туториал. Я опирался именно на неё.
Я долго не мог настроить эти простые VPN’ы... Помните, я в душе системщик, и для меня сетевые «прибамбасики» — это иногда проблема, если не считать того, к какому VLAN подключаюсь 😀
Основная задача VPN — S2S с Azure и S2S с другим USG. Обе туннели тяжело настраивались через GUI. По инструкции с поста cchristian я немного модифицировал конфигурацию под свои задачи и теперь VPN работает. Спасибо огромное!
Основная идея такая:
1. Создайте в Azure VNet/subnet/gateway — я взял самый простой и дешевый вариант, на всякий случай.
2. В этой сети разместите что-то, к чему можно «постучаться» — я быстро создал виртуалку, чтобы был IP, по которому можно проверить связь.
3. На своей стороне прошёл стандартную настройку всего UniFi — у меня тоже несколько VLAN’ов, ничего особенного. Но обязательно убедитесь, что у вашего USG публичный IP — у меня это решил вопрос с настройкой через проксирование провайдера. Не хочу вдаваться в NAT, думаю, это была причина моих изначальных проблем с USG.
4. Вот моя конфигурация для Azure site-to-site VPN (всю эту информацию я тоже подчерпнул из разных постов на форуме, много перепробовал, и сейчас она работает, по крайней мере последние 4 часа точно 😀):
```
set vpn ipsec auto-firewall-nat-exclude enable
set vpn ipsec esp-group esp-azure-dynamic compression disable
set vpn ipsec esp-group esp-azure-dynamic lifetime 3600
set vpn ipsec esp-group esp-azure-dynamic mode tunnel
set vpn ipsec esp-group esp-azure-dynamic pfs disable
set vpn ipsec esp-group esp-azure-dynamic proposal 1 encryption aes256
set vpn ipsec esp-group esp-azure-dynamic proposal 1 hash sha1
set vpn ipsec ike-group ike-azure-dynamic key-exchange ikev2
set vpn ipsec ike-group ike-azure-dynamic lifetime 28800
set vpn ipsec ike-group ike-azure-dynamic proposal 1 dh-group 2
set vpn ipsec ike-group ike-azure-dynamic proposal 1 encryption aes256
set vpn ipsec ike-group ike-azure-dynamic proposal 1 hash sha1
set vpn ipsec site-to-site peer <Your Azure GW PIP (x.x.x.x)> authentication mode pre-shared-secret
set vpn ipsec site-to-site peer <Your Azure GW PIP (x.x.x.x)> authentication pre-shared-secret <**your secret here**>
set vpn ipsec site-to-site peer <Your Azure GW PIP (x.x.x.x)> connection-type initiate
set vpn ipsec site-to-site peer <Your Azure GW PIP (x.x.x.x)> description MyAzureVPN
set vpn ipsec site-to-site peer <Your Azure GW PIP (x.x.x.x)> ike-group ike-azure-dynamic
set vpn ipsec site-to-site peer <Your Azure GW PIP (x.x.x.x)> local-address <Your USG PIP (x.x.x.x)>
set vpn ipsec site-to-site peer <Your Azure GW PIP (x.x.x.x)> tunnel 1 allow-nat-networks disable
set vpn ipsec site-to-site peer <Your Azure GW PIP (x.x.x.x)> tunnel 1 allow-public-networks disable
set vpn ipsec site-to-site peer <Your Azure GW PIP (x.x.x.x)> tunnel 1 esp-group esp-azure-dynamic
set vpn ipsec site-to-site peer <Your Azure GW PIP (x.x.x.x)> tunnel 1 local prefix 172.16.0.0/20
set vpn ipsec site-to-site peer <Your Azure GW PIP (x.x.x.x)> tunnel 1 remote prefix 172.16.16.0/20
set vpn ipsec ipsec-interfaces interface eth0
```
5. По инструкции cchristian теперь нужно закоммитить, сохранить, выйти из режима конфигурации, экспортировать конфиг.
6. Открыть JSON-экспорт и убрать всё лишнее, оставив только нужные строки — мне нужно просто добавить инфу по VPN, остальное хочу делать через GUI.
Ubiquiti — люблю вашу технику и даю должное, как сказал cchristian, вот бы получше документацию и более понятные туториалы, которые бы помогли с такими вещами... Немного внимания и заботы к гайдам сильно бы поспособствовало масштабу распространения и простоте пользования, даже для новых или бета-функций.
Теперь по поводу VPN USG к USG, который, казалось бы, должен быть простым, но пока мы его так и не смогли поднять.
Удачи всем!
