VPN-подключение IP-устройств: различия между версиями
Alex (обсуждение | вклад) |
Alex (обсуждение | вклад) |
||
| Строка 17: | Строка 17: | ||
* а также технологии OpenVPN | * а также технологии OpenVPN | ||
=== Настройка и | === PPTP === | ||
==== Настройка ==== | |||
В самом простом случае в WEB-интерфейсе устройства достаточно указать | |||
* включить PPTP | |||
* имя пользователя | |||
* пароль | |||
* IP-адрес сервера | |||
* MTU = 1474 | |||
Будьте аккуратны с опцией Отключить локальный интерфейс - т.к. соединение будет разрешено только через защищенный канал. В противном случае доступ к устройству возможен и через VPN и по "исходному IP-адресу". Данную опцию рекомендуется включать после тестовой проверки VPN-подключения. | |||
==== Диагностика ==== | |||
Для диагностики подключения удобно использовать запрос [[КУН-IP8#CGI_.D0.B8.D0.BD.D1.82.D0.B5.D1.80.D1.84.D0.B5.D0.B9.D1.81|log.cgi]] | Для диагностики подключения удобно использовать запрос [[КУН-IP8#CGI_.D0.B8.D0.BD.D1.82.D0.B5.D1.80.D1.84.D0.B5.D0.B9.D1.81|log.cgi]] | ||
| Строка 24: | Строка 37: | ||
Корректное подключение выглядит следующим образом | Корректное подключение выглядит следующим образом | ||
<source lang="bash" line> | |||
Jan 1 00:00:02 IPCUn daemon.notice pppd[68]: pppd 2.4.7 started by root, uid 0 | |||
Jan 1 00:00:02 IPCUn daemon.info pppd[68]: Using interface ppp0 | |||
Jan 1 00:00:02 IPCUn daemon.notice pppd[68]: Connect: ppp0 <--> /dev/pts/0 | |||
Jan 1 00:00:02 IPCUn daemon.notice pptp[74]: anon log[main:pptp.c:333]: The synchronous pptp option is NOT activated | |||
Jan 1 00:00:03 IPCUn daemon.notice pptp[97]: anon log[ctrlp_rep:pptp_ctrl.c:258]: Sent control packet type is 1 'Start-Control-Connection-Request' | |||
Jan 1 00:00:03 IPCUn daemon.notice pptp[97]: anon log[ctrlp_disp:pptp_ctrl.c:758]: Received Start Control Connection Reply | |||
Jan 1 00:00:03 IPCUn daemon.notice pptp[97]: anon log[ctrlp_disp:pptp_ctrl.c:792]: Client connection established. | |||
Jan 1 00:00:04 IPCUn daemon.notice pptp[97]: anon log[ctrlp_rep:pptp_ctrl.c:258]: Sent control packet type is 7 'Outgoing-Call-Request' | |||
Jan 1 00:00:04 IPCUn daemon.notice pptp[97]: anon log[ctrlp_disp:pptp_ctrl.c:877]: Received Outgoing Call Reply. | |||
Jan 1 00:00:04 IPCUn daemon.notice pptp[97]: anon log[ctrlp_disp:pptp_ctrl.c:916]: Outgoing call established (call ID 0, peer's call ID 17002). | |||
Jan 1 00:00:06 IPCUn daemon.notice pptp[97]: anon log[ctrlp_disp:pptp_ctrl.c:980]: PPTP_SET_LINK_INFO received from peer_callid 0 | |||
Jan 1 00:00:06 IPCUn daemon.notice pptp[97]: anon log[ctrlp_disp:pptp_ctrl.c:983]: send_accm is 00000000, recv_accm is FFFFFFFF | |||
Jan 1 00:00:06 IPCUn daemon.warn pptp[97]: anon warn[ctrlp_disp:pptp_ctrl.c:986]: Non-zero Async Control Character Maps are not supported! | |||
Jan 1 00:00:06 IPCUn daemon.notice pppd[68]: CHAP authentication succeeded | |||
Jan 1 00:00:10 IPCUn daemon.notice pppd[68]: MPPE 128-bit stateless compression enabled | |||
Jan 1 00:00:11 IPCUn daemon.notice pppd[68]: local IP address 192.168.7.11 | |||
Jan 1 00:00:11 IPCUn daemon.notice pppd[68]: remote IP address 192.168.7.10 | |||
... | |||
</source> | |||
Где, | |||
* в 16 строке указан IP-адрес, полученный устройством | |||
* в 17 - IP-адрес VPN-сервера, к которому было осуществлено подключение | |||
И далее периодически в логе могут возникать сообщения | |||
<source lang="bash" line> | |||
Jan 1 00:01:03 IPCUn daemon.notice pptp[97]: anon log[logecho:pptp_ctrl.c:696]: Echo Request received. | |||
Jan 1 00:01:03 IPCUn daemon.notice pptp[97]: anon log[ctrlp_rep:pptp_ctrl.c:258]: Sent control packet type is 6 'Echo-Reply' | |||
Jan 1 00:02:03 IPCUn daemon.notice pptp[97]: anon log[logecho:pptp_ctrl.c:696]: Echo Request received. | |||
Jan 1 00:02:03 IPCUn daemon.notice pptp[97]: anon log[ctrlp_rep:pptp_ctrl.c:258]: Sent control packet type is 6 'Echo-Reply | |||
... | |||
</source> | |||
В случае проблем с подключением, будет отображена та или иная ошибка | В случае проблем с подключением, будет отображена та или иная ошибка | ||
Например: | Например: | ||
<source lang="bash" line> | <source lang="bash" line> | ||
May 23 14:33:16 unost pppd[165]: Using interface ppp0 | May 23 14:33:16 unost pppd[165]: Using interface ppp0 | ||
| Строка 50: | Строка 93: | ||
</source> | </source> | ||
Для диагностики проблем подключений по PPTP для новый концентраторов [[КУН-IP8]], [[КУН-IP4]] удобно поступать следующим образом: | |||
# отключить опцию PPTP | |||
# включить доступ по SHH в меню Контроль доступа | |||
# перезагрузить устройство | |||
# подключиться по SHH с помощью, например Putty | |||
(для [[КУН-IPM]] данный способ не работает). | |||
Далее в консоли набрать | |||
<nowiki> | |||
$ pppd call pptp debug nodetach | |||
</nowiki> | |||
И наблюдать более подробный лог, например: | |||
<source lang="bash" line> | |||
using channel 1 | |||
Using interface ppp0 | |||
Connect: ppp0 <--> /dev/pts/1 | |||
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xe38a189e> <pcomp> <accomp>] | |||
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xe38a189e> <pcomp> <accomp>] | |||
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xe38a189e> <pcomp> <accomp>] | |||
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xe38a189e> <pcomp> <accomp>] | |||
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xe38a189e> <pcomp> <accomp>] | |||
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xe38a189e> <pcomp> <accomp>] | |||
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xe38a189e> <pcomp> <accomp>] | |||
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xe38a189e> <pcomp> <accomp>] | |||
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xe38a189e> <pcomp> <accomp>] | |||
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xe38a189e> <pcomp> <accomp>] | |||
Script pptp 185.41.42.22 --nolaunchpppd finished (pid 543), status = 0x0 | |||
Modem hangup | |||
Connection terminated. | |||
</source> | |||
- ошибка, приведенная в примере, связана с отсутствием прохождения GRE-пакетов на маршрутизаторе, за которым установлен КУН-IP. | |||
Для остановки нажать Ctrl+z | |||
Далее можно по необходимости (в зависимости от отображаемой ошибки) можно поменять параметры, например: логин/пароль в WEB-интерфейсе, нажать сохранить, и не перегружая устройства повторить ввод команды | |||
pppd call ... | |||
Анализ возможных ошибок и их причины см. в статье: | |||
# PPTP Client Diagnosis HOWTO http://pptpclient.sourceforge.net/howto-diagnosis.phtml | # PPTP Client Diagnosis HOWTO http://pptpclient.sourceforge.net/howto-diagnosis.phtml | ||
=== PPPoE === | |||
==== Настройка ==== | |||
В самом простом случае в WEB-интерфейсе устройства достаточно указать | |||
* включить PPPoE | |||
* имя пользователя | |||
* пароль | |||
* IP-адрес сервера | |||
* MTU = 1492 | |||
==== Диагностика ==== | |||
Практического тестирование работы PPPoE подключений на объектах нашими специалистами на данный момент не проводилось. | |||
=== Настройка и диагностика OpenVPN === | === Настройка и диагностика OpenVPN === | ||
Версия от 09:30, 30 июня 2017
Введение
В данной статье рассматриваются вопросы настройки VPN-подключения следующих IP-устройств:
Настройка VPN-подключения осуществляется через WEB-интерфейс устройств.
Устройство при этом выполняет роль VPN-клиента и подключается к удаленному VPN-серверу.
В настоящее время поддерживается работа следующих типов протоколов:
- PPPTP
- PPPoE
- а также технологии OpenVPN
PPTP
Настройка
В самом простом случае в WEB-интерфейсе устройства достаточно указать
- включить PPTP
- имя пользователя
- пароль
- IP-адрес сервера
- MTU = 1474
Будьте аккуратны с опцией Отключить локальный интерфейс - т.к. соединение будет разрешено только через защищенный канал. В противном случае доступ к устройству возможен и через VPN и по "исходному IP-адресу". Данную опцию рекомендуется включать после тестовой проверки VPN-подключения.
Диагностика
Для диагностики подключения удобно использовать запрос log.cgi
В открывшемся логе нас интересуют только строки, содержащие pptp [xxx]:.
Корректное подключение выглядит следующим образом
Jan 1 00:00:02 IPCUn daemon.notice pppd[68]: pppd 2.4.7 started by root, uid 0
Jan 1 00:00:02 IPCUn daemon.info pppd[68]: Using interface ppp0
Jan 1 00:00:02 IPCUn daemon.notice pppd[68]: Connect: ppp0 <--> /dev/pts/0
Jan 1 00:00:02 IPCUn daemon.notice pptp[74]: anon log[main:pptp.c:333]: The synchronous pptp option is NOT activated
Jan 1 00:00:03 IPCUn daemon.notice pptp[97]: anon log[ctrlp_rep:pptp_ctrl.c:258]: Sent control packet type is 1 'Start-Control-Connection-Request'
Jan 1 00:00:03 IPCUn daemon.notice pptp[97]: anon log[ctrlp_disp:pptp_ctrl.c:758]: Received Start Control Connection Reply
Jan 1 00:00:03 IPCUn daemon.notice pptp[97]: anon log[ctrlp_disp:pptp_ctrl.c:792]: Client connection established.
Jan 1 00:00:04 IPCUn daemon.notice pptp[97]: anon log[ctrlp_rep:pptp_ctrl.c:258]: Sent control packet type is 7 'Outgoing-Call-Request'
Jan 1 00:00:04 IPCUn daemon.notice pptp[97]: anon log[ctrlp_disp:pptp_ctrl.c:877]: Received Outgoing Call Reply.
Jan 1 00:00:04 IPCUn daemon.notice pptp[97]: anon log[ctrlp_disp:pptp_ctrl.c:916]: Outgoing call established (call ID 0, peer's call ID 17002).
Jan 1 00:00:06 IPCUn daemon.notice pptp[97]: anon log[ctrlp_disp:pptp_ctrl.c:980]: PPTP_SET_LINK_INFO received from peer_callid 0
Jan 1 00:00:06 IPCUn daemon.notice pptp[97]: anon log[ctrlp_disp:pptp_ctrl.c:983]: send_accm is 00000000, recv_accm is FFFFFFFF
Jan 1 00:00:06 IPCUn daemon.warn pptp[97]: anon warn[ctrlp_disp:pptp_ctrl.c:986]: Non-zero Async Control Character Maps are not supported!
Jan 1 00:00:06 IPCUn daemon.notice pppd[68]: CHAP authentication succeeded
Jan 1 00:00:10 IPCUn daemon.notice pppd[68]: MPPE 128-bit stateless compression enabled
Jan 1 00:00:11 IPCUn daemon.notice pppd[68]: local IP address 192.168.7.11
Jan 1 00:00:11 IPCUn daemon.notice pppd[68]: remote IP address 192.168.7.10
...
Где,
- в 16 строке указан IP-адрес, полученный устройством
- в 17 - IP-адрес VPN-сервера, к которому было осуществлено подключение
И далее периодически в логе могут возникать сообщения
Jan 1 00:01:03 IPCUn daemon.notice pptp[97]: anon log[logecho:pptp_ctrl.c:696]: Echo Request received.
Jan 1 00:01:03 IPCUn daemon.notice pptp[97]: anon log[ctrlp_rep:pptp_ctrl.c:258]: Sent control packet type is 6 'Echo-Reply'
Jan 1 00:02:03 IPCUn daemon.notice pptp[97]: anon log[logecho:pptp_ctrl.c:696]: Echo Request received.
Jan 1 00:02:03 IPCUn daemon.notice pptp[97]: anon log[ctrlp_rep:pptp_ctrl.c:258]: Sent control packet type is 6 'Echo-Reply
...
В случае проблем с подключением, будет отображена та или иная ошибка
Например:
May 23 14:33:16 unost pppd[165]: Using interface ppp0
May 23 14:33:16 unost pppd[165]: Connect: ppp0 <--> /dev/pts/0
May 23 14:33:16 unost pptp[303]: anon log[main:pptp.c:333]: The synchronous pptp option is NOT activated
May 23 14:33:16 unost pptp[309]: anon log[ctrlp_rep:pptp_ctrl.c:258]: Sent control packet type is 1 'Start-Control-Connection-Request'
May 23 14:33:16 unost pptp[309]: anon log[ctrlp_disp:pptp_ctrl.c:758]: Received Start Control Connection Reply
May 23 14:33:16 unost pptp[309]: anon log[ctrlp_disp:pptp_ctrl.c:792]: Client connection established.
May 23 14:33:17 unost pptp[309]: anon log[ctrlp_rep:pptp_ctrl.c:258]: Sent control packet type is 7 'Outgoing-Call-Request'
May 23 14:33:17 unost pptp[309]: anon log[ctrlp_disp:pptp_ctrl.c:877]: Received Outgoing Call Reply.
May 23 14:33:17 unost pptp[309]: anon log[ctrlp_disp:pptp_ctrl.c:916]: Outgoing call established (call ID 0, peer's call ID 0).
May 23 14:33:11 unost pptp[220]: anon log[ctrlp_disp:pptp_ctrl.c:952]: Call disconnect notification received (call id 0)
May 23 14:33:11 unost pptp[220]: anon log[ctrlp_error:pptp_ctrl.c:206]: Result code is 1 'Lost Carrier'. Error code is 0, Cause code is 0
May 23 14:33:11 unost pptp[220]: anon log[call_callback:pptp_callmgr.c:84]: Closing connection (call state)
May 23 14:33:11 unost pppd[165]: Modem hangup
May 23 14:33:11 unost pppd[165]: Connection terminated.
...
Для диагностики проблем подключений по PPTP для новый концентраторов КУН-IP8, КУН-IP4 удобно поступать следующим образом:
- отключить опцию PPTP
- включить доступ по SHH в меню Контроль доступа
- перезагрузить устройство
- подключиться по SHH с помощью, например Putty
(для КУН-IPM данный способ не работает).
Далее в консоли набрать
$ pppd call pptp debug nodetach
И наблюдать более подробный лог, например:
using channel 1
Using interface ppp0
Connect: ppp0 <--> /dev/pts/1
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xe38a189e> <pcomp> <accomp>]
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xe38a189e> <pcomp> <accomp>]
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xe38a189e> <pcomp> <accomp>]
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xe38a189e> <pcomp> <accomp>]
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xe38a189e> <pcomp> <accomp>]
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xe38a189e> <pcomp> <accomp>]
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xe38a189e> <pcomp> <accomp>]
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xe38a189e> <pcomp> <accomp>]
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xe38a189e> <pcomp> <accomp>]
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xe38a189e> <pcomp> <accomp>]
Script pptp 185.41.42.22 --nolaunchpppd finished (pid 543), status = 0x0
Modem hangup
Connection terminated.
- ошибка, приведенная в примере, связана с отсутствием прохождения GRE-пакетов на маршрутизаторе, за которым установлен КУН-IP.
Для остановки нажать Ctrl+z
Далее можно по необходимости (в зависимости от отображаемой ошибки) можно поменять параметры, например: логин/пароль в WEB-интерфейсе, нажать сохранить, и не перегружая устройства повторить ввод команды pppd call ...
Анализ возможных ошибок и их причины см. в статье:
- PPTP Client Diagnosis HOWTO http://pptpclient.sourceforge.net/howto-diagnosis.phtml
PPPoE
Настройка
В самом простом случае в WEB-интерфейсе устройства достаточно указать
- включить PPPoE
- имя пользователя
- пароль
- IP-адрес сервера
- MTU = 1492
Диагностика
Практического тестирование работы PPPoE подключений на объектах нашими специалистами на данный момент не проводилось.