VPN ошибка 809 у Билайна: 4 способа решить проблему
VPN ошибка 809 у Билайна: 4 способа решить проблему
Всем привет! Сегодня мы будем разбирать, из-за чего возникает 809 ошибка при подключении к интернету (или VPN) и как её исправить. Данная проблема проявляется, когда компьютер не может связаться с конечным сервером через VPN тоннель L2TP подключения. Очень часто подобную ошибку замечают клиенты провайдера Билайн. Но также данный казус может возникать при подключении к частным или рабочим VPN серверам.
На самом деле косяк этой проблемы в операционной системе Windows. Дело в том, что VPN-клиент, который подключается к туннелю, не поддерживает L2TP/IPSec через NAT. И тут проблема кроется в IPSec при использовании шифрования ESP, а, насколько мы помним, ESP не поддерживает PAT, который и работает с адресацией через NAT.
NAT – это перевод внешних адресов во внутренние и наоборот. То есть при подключении к VPN-серверу клиент не может получить свой адрес, и получается дисконект. Но может быть проблема в закрытых портах или работе некоторых программ в винде. Далее я расскажу, как решить эту проблему.
Включение L2TP сервера
Будем ориентироваться на повышение безопасности аутентификации и отключим старые протоколы. Если у вас есть устройства не поддерживающие современные протоколы аутентификации, то не забудьте включить их обратно. Переходим в PPP – Interface – L2TP Server.
Выставляем следующее параметры:
- Enable – ставим галочку;
- Default Profile – L2TP-Server-General;
- mschapv1, chap, pap – снимаем галочки;
- Use IPsec – ничего не ставим, т.к. мы не будем использовать IPSEC.
Сохраняем и переходим далее.
CLI:
/interface l2tp-server server set authentication=mschap2 default-profile=L2TP-Server-General enabled=yes
Настройка firewall
Необходимо создать разрешающее правило входящего трафика L2TP на нашем mikrotik в firewall для UDP порта 1701. Приступим к реализации. IP – Firewall – Filter создаем новое правило.
В General нас интересует:
- Chain – input;
- Protocol – UDP;
- Dst. Port – 1701;
- Connection State – New.
На вкладке Action нас интересует accept.
Сохраняем.
CLI:
/ip firewall filter
add action=accept chain=input connection-state=new dst-port=1701 protocol=udp
add action=accept chain=input connection-state=established,related
На самом деле, данное правило будет работать только для новых пакетов пришедших на роутер, для остальных пакетов – нет, а значит сессия не оживет. Чтобы сессии жили и им было хорошо нужно еще одно правило, которое разрешает все устоявшиеся входящие соединения. Создаем еще одно правило.
- Chain – input;
- Connection State – established, related;
- Action – accept.
На этом, пожалуй, все. Настройка сервера L2TP завершена.
Несколько слов про блокировку L2TP – из практики, есть такие товарищи — провайдеры, которые блокируют L2TP. Допустим Билайн в некоторых регионах уже начал блокировать весь L2TP без IPSEC. Обращайте на это внимание, если вы сделали все правильно, но соединение не проходит, значит дело в провайдере.
Далее мы рассмотрим настройку L2TP-клиента и конечно же всеми любимый IPSEC.
Протоколы VPN — PPTP, L2TP, IKEv2, OpenVPN
В настоящее время существует довольно большое количество протоколов, применяемых для создания VPN-соединений. Какое решение выбрать и на что следует обратить внимание для правильной настройки подключения? Попробуем кратко ответить на эти вопросы.
Протокол туннелирования точка-точка (Point-to-Point Tunneling Protocol) – это протокол, изобретенный компанией Cisco Systems для организации VPN через сети коммутируемого доступа. PPTP является стандартным протоколом для построения VPN уже на протяжении многих лет — впервые его поддержка была реализована в операционных системах Windows NT 4.0 и Windows 95 OSR2.
В настоящее время PPTP доступен как стандартный протокол VPN почти во всех операционных системах и коммуникационных устройствах, что позволяет использовать его без необходимости установки дополнительного программного обеспечения. Его преимущество также в том, что он использует небольшое количество вычислительных ресурсов, следовательно, обладает высокой скоростью работы.
PPTP работает, устанавливая обычную PPP сессию с противоположной стороной с помощью протокола Generic Routing Encapsulation. Для инициации и управления GRE-соединением используется второе соединение на TCP-порте 1723. Из-за необходимости установления двух сетевых сессий, могут возникнуть сложности при настройке PPTP-соединения за сетевым экраном. Кроме того, некоторые Интернет-провайдеры блокируют GRE-протокол, что делает невозможным использование PPTP.
PPTP опирается на различные методы аутентификации для обеспечения безопасности соединения, наиболее часто среди которых используется MS-CHAP v.2. Данные, передаваемые через PPTP, шифруются с помощью протокола MPPE, включающего в себя алгоритм шифрования RSA RC4 с ключом длиной максимум 128 бит.
За время своего существования, в реализации протокола PPTP были обнаружены различные уязвимости, наиболее серьезной из которых явилась уязвимость протокола аутентификации MS-CHAP v.2, позволяющая в течение суток восстановить ключ шифрования. Из-за наличия проблем с безопасностью, протокол PPTP может применяться только в решениях построения VPN, где отсутствуют требования к обеспечению конфиденциальности передаваемых данных.
Плюсы:
- клиент PPTP встроен во все операционные системы (за исключением последних версий iOS)
- очень прост в настройке
- работает быстро
Минусы:
- небезопасен
Вывод
Протокол PPTP небезопасен, поэтому следует избегать его использования для передачи важных данных. Однако, если VPN применяется только для смены текущего географического местоположения и сокрытия реального IP-адреса, PPTP может быть хорошим решением благодаря своей кроссплатформенности и высокой скорости работы.
Протокол туннелирования 2 уровня (Layer 2 Tunnel Protocol) – сетевой протокол, в качестве основы использующий протокол PPP канального уровня. Cоздан в 1999 году компаниями Cisco и Microsoft как дальнейшее развитие протокола PPTP, в настоящее время является промышленным стандартом (RFC2661).
Так как сам по себе L2TP не обеспечивает шифрование и конфиденциальность трафика, при построении VPN на основе L2TP для обеспечения безопасности передаваемых данных, как правило, используется протокол шифрования IPSec (IP Security). Комбинацию L2TP и IPSec называют L2TP/IPSec (RFC3193).
Для L2TP/IPSec в качестве транспорта применяется протокол UDP, где порт 1701 используется в качестве порта отправителя и получателя для инициализации туннеля, порт UDP-500 применяется для обмена ключами шифрования, порт UDP-4500 для NAT-операций, протокол 50 (ESP) для передачи зашифрованных данных через IPSec.
L2TP/IPsec встроен во все современные операционные системы и коммуникационные устройства, и может быть настроен так же легко, как и PPTP. Некоторые сложности с настройкой могут возникнуть для операционных систем семейства Linux, где может потребоваться установка дополнительных пакетов из состава ОС.
С точки зрения безопасности, VPN-подключения по протоколу L2TP/IPSec являются достаточно надёжными, так как обеспечивают конфиденциальность, целостность и проверку подлинности данных.
По сравнению с другими VPN-протоколами, L2TP/IPSec более «капризный» в плане обеспечения стабильной и надежной работы. Так, если VPN-клиент находится за сетевым устройством, выполняющим преобразование сетевых адресов (NAT), либо не пропускающим пакеты на UDP-порт 500, сеанс L2TP/IPSec установить не удастся. Кроме того, так как L2TP/IPSec инкапсулирует передаваемые данные дважды, это делает его менее эффективным и более медленным, чем другие VPN-протоколы.
Плюсы:
- высокая безопасность
- легкость настройки
- доступен в современных операционных системах
Минусы:
- работает медленнее, чем другие VPN-протоколы
- может потребоваться дополнительная настройка роутера
Вывод
Протокол L2TP/IPSec позволяет обеспечить высокую безопасность передаваемых данных, прост в настройке и поддерживается всеми современными операционными системами. Однако, по сравнению с другими VPN-протоколами, является менее производительным и стабильным.
IKEv2
Протокол обмена ключами (Internet Key Exchange) версии 2 — входящий в набор IPSec протокол туннелирования, разработанный совместно компаниями Microsoft и Cisco. Входит в состав Windows 7 и более поздних версий, поддерживается мобильными устройствами Blackberry и Apple. Имеются решения с открытым исходным кодом для Linux.
Передача данных производится через UDP порты 500 и/или 4500, с шифрованием данных криптоалгоритмами 3DES и AES. Использование UDP обеспечивает хорошую скорость работы и не создает проблем для работы за NAT и межсетевыми экранами.
Благодаря ряду своих возможностей, IKEv2 особенно актуален для мобильных пользователей — IKEv2 позволяет автоматически переустанавливать VPN-туннель в случае временного обрыва Интернет-соединения, например во время поездки в метро. Также протокол хорошо восприимчив к частой смене сетей — например переключению между точками Wi-Fi, или между Wi-Fi и мобильной сетью. Это один из немногих протоколов, поддерживаемых устройствами Blackberry.
Плюсы:
- высокая безопасность и скорость
- повышенная стабильность работы
- хорошо подходит для пользователей мобильных устройств
- легок в настройке на стороне пользователя
Минусы:
- использует жестко определенные порты, что упрощает его блокировку
Вывод
Благодаря своей безопасности, стабильности и скорости работы, IKEv2 в настоящее время является лучшим решением VPN для мобильных пользователей.
OpenVPN
OpenVPN является полнофункциональным решением с открытым иcходным кодом для организации инфраструктуры VPN на основе библиотеки OpenSSL и протоколов SSL/TLS. Благодаря своей бесплатности и открытости, OpenVPN в настоящее время фактически является стандартом в VPN-технологиях, очень гибким в настройках и с богатыми функциональными возможностями.
В стандартной конфигурации OpenVPN использует для передачи данных UDP протокол и порт 1194. Однако, VPN-соединение может быть легко настроено для работы по протоколу TCP на любом порту, например на 443 TCP-порту, что позволяет маскировать трафик OpenVPN под обычный HTTPS, тем самым обходя блокировки на стороне межсетевых экранов.
Использование в качестве основы библиотеки OpenSSL позволяет обеспечить поддержку множества криптографических алгоритмов (например RSA, AES, Blowfish, 3DES и других) для надежной защиты передаваемых данных. Производительность OpenVPN зависит от выбранного алгоритма шифрования, но, как правило, работает быстрее, чем IPSec.
Возможность использования протокола TCP позволяет добиться стабильной и надежной работы в беспроводных, сотовых и других сетях с высокой общей нагрузкой и повышенным уровнем потери пакетов. Для увеличения скорости передачи, можно использовать сжатие данных на основе библиотеки LZO.
Для работы с технологией OpenVPN на стороне клиента требуется установка дополнительного программного обеспечения — в настоящий момент для всех современных операционных систем, в том числе и для мобильных платформ, существует большое количество приложений, как бесплатных, так и коммерческих.
Плюсы:
- гибкость настройки
- высокая безопасность
- повышенная стабильность и надежность работы
Минусы:
- необходима установка дополнительного программного обеспечения
Вывод
На сегодняшний день технология OpenVPN является наилучшим решением для организации VPN. Использование этого протокола позволит обеспечить надежное, быстрое и безопасное VPN-соединение. Настройка подключения не вызывает большой сложности, и фактически сводится к установке бесплатного приложения, доступного для любых платформ и операционных систем.
Подводя итог нашему обзору, коротко обобщим сделанные выводы:
- PPTP — небезопасный протокол, ваши данные можно перехватить и расшифровать. Можно применять только для смены текущего географического местоположения и сокрытия реального IP-адреса.
- L2TP/IPSec — имеет приемлемый уровень защиты, удобен в настройке, не требует установки дополнительного программного обеспечения (за исключением Linux), является хорошей альтернативой PPTP.
- IKEv2 — современный протокол VPN, обладает хорошей безопасностью и скоростью работы. Прекрасно подходит для пользователей мобильных устройств, особенно Blackberry.
- OpenVPN — имеет открытый исходный код, работает быстро и безопасно. Обладает гибкими настройками, обеспечивает хорошую стабильность работы. Даже несмотря на необходимость установки дополнительного программного обеспечения, на сегодняшний день является лучшим решением для VPN.
Иными словами — при возможности используйте OpenVPN, для мобильных устройств хорошо подойдет IKEv2. Для быстрых решений, когда нужно только скрыть свой IP-адрес — можно ограничиться L2TP/IPSec или PPTP.
How to Set up PPTP & L2TP VPN Server with Omada Gateway in Controller Mode?
When a remote user wants to access the LAN, it is recommended to establish a client-to-site VPN tunnel in which the Omada gateway serves as a VPN server. This kind of VPN tunnel is useful and practical for business travelers to access the network in headquarter from a remote location without compromising security and privacy.
To set up the Omada gateway as PPTP/L2TP server and establish a VPN tunnel, follow the steps below.
Note: If the gateway is behind a NAT device, in order to establish a VPN tunnel successfully, make sure that TCP port 1723 (for PPTP VPN) or UDP port 500/1701/4500 (for L2TP over IPsec VPN) is open on the NAT device in front of the Omada gateway.
Configuration
Step 1. Create a new VPN policy
Go to Settings > VPN and click + Create New VPN Policy.
Step 2. Configure the parameters to set up a PPTP/L2TP server
1) For PPTP Server: enter a name to identify the VPN policy, select the purpose for the new entry as Client-to-Site VPN, and the VPN Type as VPN Server-PPTP. Then configure the corresponding parameters, and click Create.
Check the box to enable the VPN tunnel.
Select Encrypted to enable MPPE (Microsoft Point-to-Point Encryption) for the VPN tunnel for security purpose.
Select the networks in headquarter. The VPN policy will be applied to the selected networks and the remote users can access the network with the created VPN tunnel.
Select the WAN port on which the VPN tunnel will be established. Each WAN port supports only one PPTP VPN tunnel when the gateway works as a PPTP server.
Specify the IP address and subnet, and the gateway will assign IP address from the pool to the remote users for them to access the local networks.
Note that the IP Pool cannot be in the same subnet with LAN IP.
2) For L2TP Server: enter a name to identify the VPN policy, select the purpose for the new entry as Client-to-Site VPN, and the VPN Type as VPN Server-L2TP. Then configure the corresponding parameters, and click Create.
Check the box to enable the VPN tunnel.
Select Encrypted to encrypt the VPN tunnel by IPsec for security purpose.
Select the networks in headquarter. The VPN policy will be applied to the selected networks and the remote users can access the network with the created VPN tunnel.
Specify the Pre-Shared Key (PSK) for IPsec encryption. Both the gateway in headquarter and the remote user should use the same PSK for authentication.
Select the WAN port on which the VPN tunnel will be established. Each WAN port supports only one L2TP VPN tunnel when the gateway works as a L2TP server.
Specify the IP address and subnet, and the gateway will assign IP address from the pool to the remote users for them to access the local networks.
Note that the IP Pool cannot be in the same subnet with LAN IP.
Step 3. Create a VPN user entry for the remote user
Go to Settings > VPN > VPN User. Click +Create New VPN User to add a new entry.
Step 4. Configure the parameters for the VPN user
Specify the username and password that the user will use for validation, and select the VPN server that has been created in Step 2.
Then, select Client as the Mode, and specify the maximum VPN connections that can use the specified username simultaneously. If you want to use a gateway as a PPTP/L2TP client, select Network Extension Mode as the Mode. Click Create.
Step 5. Configuring the PC/laptop of the remote user
On the remote PC/laptop, you can use the Windows built-in PPTP/L2TP software or software from the third party to connect to the PPTP/L2TP server. For detailed information, please refer to:
Verification of the L2TP/PPTP VPN Tunnel
Go to Insight > VPN Status > VPN Tunnel and check the entries. When a corresponding entry is displayed in the table, the VPN tunnel is successfully established.
Настройка
Настройка первого маршрутизатора
Через графический интерфейс
Включить L2TP-сервер. Не смотря на то, что L2TP не несет в себе нормального шифрования, лучше оставить только аутентификацию «mschap2» как наиболее надежную.
Создать новый аккаунт. Для дальнейшего удобства лучше задавать имена так, что бы сразу можно было определить к кому или чему они относятся. Т. е. имена типа user1, user2, user3 и т. д. не желательны в виду того, что в случае увеличения их количества будет тяжело сопоставить реальных пользователей аккаунтов и сами аккаунты.
Создать статическую запись L2TP сервера. Это действие не обязательно, т. к. если запись не создать вручную, то при каждом подключении она будет создаваться динамически. Но при этом наличие этой записи облегчает дальнейшую настройку и диагностику.
Через консоль
/interface l2tp-server server
set authentication=mschap2 enabled=yes
/ppp secret
add local-address=172.16.30.1 name=user1 password=user1-password profile=default-encryption remote-address=172.16.30.2 service=l2tp
/interface l2tp-server
add name=»L2TP Server for filial1″ user=user1
Настройка второго маршрутизатора
Через графический интерфейс
Создать интерфейс для подключения к первому маршрутизатору. Здесь так же оставляем только аутентификацию «mschap2«.
Через консоль
/interface l2tp-client
add allow=mschap2 connect-to=10.1.100.1 disabled=no name=»L2TP HQ connection» password=user1-password user=user1
Настройка маршрутизации
Если на предыдущих шагах все было сделано верно, то VPN-соединение между двумя офисами было установлено, но для того, что бы обе сети могли обмениваться информацией друг с другом они должны знать друг о друге, т. е. между ними должна быть настроена маршрутизация. Для этого надо выполнить следующие шаги:
На первом маршрутизаторе
Через графический интерфейс
Выполнить следующие настройки:
Dst. Address: 192.168.25.0/24 (адрес сети к которой указываем маршрут)
Gateway: 172.16.30.2 (интерфейс через который можно «добраться» до сети)
Pref. Source: 192.168.15.1 (интерфейс с которого будут идти запросы к сети)
Комментарий указать по нажатию кнопки «Comment» (не обязательно)
Через консоль
/ip route
add comment=»route to filial1 through VPN» dst-address=192.168.25.0/24 gateway=172.16.30.2 pref-src=192.168.15.1
На втором маршрутизаторе
Через графический интерфейс
Выполнить следующие настройки:
Dst. Address: 192.168.15.0/24 (адрес сети к которой указываем маршрут)
Gateway: 172.16.30.1 (интерфейс через который можно «добраться» до сети)
Pref. Source: 192.168.25.1 (интерфейс с которого будут идти запросы к сети)
Комментарий указать по нажатию кнопки «Comment» (не обязательно)
Через консоль
/ip route
add comment=»route to HQ through VPN» dst-address=192.168.15.0/24 gateway=172.16.30.1 pref-src=192.168.25.1
HQ — это аббревиатура от headquarter, что в переводе означает головной офис.
L2TP в сети Wi-Fi с открытым доступом
В нашем последнем примере рассматривается создание сетей в городских районах или крупном корпоративном кампусе, использование L2TP в качестве неотъемлемой части сети Wi-Fi общего доступа.
В конфигурации, показанной на рисунке 4, локальные точки доступа Wi-Fi предоставляют клиентским устройствам доступ к Интернету. Каждая точка доступа пересылает данные клиента через сеанс L2TP в централизованную сеть. Эта сеть управляет распределением IP-адресов и маршрутизацией в Интернет, как правило, с преобразованием сетевых адресов.
Использование L2TP в этой сети позволяет одному поставщику предоставлять доступ к Интернету широкому кругу клиентов без необходимости управлять подключением к Интернету в каждом месте точки доступа Wi-Fi. Выбор WiMax в качестве межсетевого соединения позволяет городским сетям предоставлять Wi-Fi доступ с использованием одного высокоскоростного интернет-соединения.
Хотя L2TP имеет историю, являющуюся довольно неясным протоколом, L2TPv3 обеспечивает огромную гибкость для всех видов использования. В любой ситуации, когда вам нужна плоская топология и конфигурация «второго уровня» сети Layer 2, L2TP — это зрелая технология, которая может работать хорошо. Как и в случае с любым установленным и открытым протоколом, L2TP широко поддерживается на различных целевых платформах, включая мобильные устройства. Более того, при использовании нескольких проектов, поддерживающих L2TP на платформах Linux или BSD, нет необходимости делать дорогостоящие инвестиции в оборудование для поддержки развертывания L2TP в вашей сети.