Чат  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Затруднения в подключении телефонов Yealink к OpenVPN

Общие вопросы по операционной системе

Модератор: april22

Затруднения в подключении телефонов Yealink к OpenVPN

Сообщение Nursultan » 28 июн 2018, 23:45

Приветствую вас, коллеги господа и дамы. Стояла АТС Asterisk + FreePBX, с настроенным OpenVPN, к которому подключался телефон Yealink t21p. Но спустя полтора года АТС упала, починить так и не удалось, т.к. я не эксперт по Asterisk. Решил поднять по новой, скачал Distro Centos7 + FreePBX13(знаю, вариант для чайников, но этот вариант быстрее и проще). Все благополучно поднялось, логи без ошибок, красота. Но пришла пора Поднимать OpenVPN. На старом Астере OpenVPN поднимал не я, но похоже было сделано с помощью этой статьи https://2keep.net/openvpn-server-and-ip ... /#comments
Начал делать по инструкции, 1 с чем столкнулся, что через yum устанавливается e-asyrsa3, скачал easy-rsa 2.2.2 с GitHab, и скопировал фалы по инструкции(может его надо было объявить? я тупо скопировал, т.к. это сбор скриптов). Ничего не пошло, из-за того, что на телефоне не просмотришь логи, решил сначала проверить работоспособность, настроив OpenVPN client на пользовательском компе. Ничего не поперло, хоть и ifconfig показал новую сеть.
Начал изучать статьи по настройке OpenVPN с помощью easyrsa3. Настроил сначала по этой статье, https://www.dmosk.ru/miniinstruktions.p ... n-easyrsa3 , но тут так и не удалось сформировать ключ Диффи-Хеллмана 1024(т.е. телефон принимает ДХ 1024). Настроил по https://www.oslogic.ru/knowledge/605/so ... -easy-rsa/ , установил параметры примерно под первую статью. ключь ДХ 1024, в openssl-1.0.cnf поставил sha1(хз почему не sha256). Сгенерировал все необходимы ключи и сертификаты, и настроил OpenVPN client на Винде, все поднялось. Переписал конф файл клиента для Yealink, но снова тишина.
данные /etc/openvpn/easyrsa3/vars
Код: выделить все
set_var EASYRSA_REQ_COUNTRY   "KZ"
set_var EASYRSA_REQ_PROVINCE   "Almaty"
set_var EASYRSA_REQ_CITY   "Almaty"
set_var EASYRSA_REQ_ORG   "Company"
set_var EASYRSA_REQ_EMAIL   "it@mail.ru"
set_var EASYRSA_REQ_OU      "IT"
set_var EASYRSA_KEY_SIZE 1024

server.conf
Код: выделить все
local 192.168.x.x
port xxxx
proto udp
dev tun
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/issued/vpn-server.crt
key /etc/openvpn/keys/private/vpn-server.key
dh /etc/openvpn/keys/dh.pem
#tls-auth /etc/openvpn/keys/ta.key 0
server 172.16.10.0 255.255.255.0
ifconfig-pool-persist ipp.txt
keepalive 10 120
max-clients 32
client-to-client
persist-key
persist-tun
status /var/log/openvpn/openvpn-status.log
log-append /var/log/openvpn/openvpn.log
verb 4
mute 20
daemon
mode server
tls-server
comp-lzo

кусочек openssl-1.0.cnf
Код: выделить все
####################################################################
[ CA_default ]

dir      = $ENV::EASYRSA_PKI   # Where everything is kept
certs      = $dir         # Where the issued certs are kept
crl_dir      = $dir         # Where the issued crl are kept
database   = $dir/index.txt   # database index file.
new_certs_dir   = $dir/certs_by_serial   # default place for new certs.

certificate   = $dir/ca.crt       # The CA certificate
serial      = $dir/serial       # The current serial number
crl      = $dir/crl.pem       # The current CRL
private_key   = $dir/private/ca.key   # The private key
RANDFILE   = $dir/.rand      # private random number file

x509_extensions   = basic_exts      # The extentions to add to the cert

# This allows a V2 CRL. Ancient browsers don't like it, but anything Easy-RSA
# is designed for will. In return, we get the Issuer attached to CRLs.
crl_extensions   = crl_ext

default_days   = $ENV::EASYRSA_CERT_EXPIRE   # how long to certify for
default_crl_days= $ENV::EASYRSA_CRL_DAYS   # how long before next CRL
default_md   = sha1      # use public key default MD
preserve   = no         # keep passed DN ordering

# A few difference way of specifying how similar the request should look
# For type CA, the listed attributes must be the same, and the optional
# and supplied fields are just that :-)
policy      = policy_anything

# For the 'anything' policy, which defines allowed DN fields
[ policy_anything ]
countryName      = optional
stateOrProvinceName   = optional
localityName      = optional
organizationName   = optional
organizationalUnitName   = optional
commonName      = supplied
name         = optional
emailAddress      = optional

####################################################################
# Easy-RSA request handling
# We key off $DN_MODE to determine how to format the DN
[ req ]
default_bits      = $ENV::EASYRSA_KEY_SIZE
default_keyfile    = privkey.pem
default_md      = sha1
distinguished_name   = $ENV::EASYRSA_DN
x509_extensions      = easyrsa_ca   # The extentions to add to the self signed cert

конф файл телефона vpn.cnf
Код: выделить все
setenv SERVER_POLL_TIMEOUT 4
reneg-sec 604800
sndbuf 100000
rcvbuf 100000
auth-retry nointeract
client
dev tun
dev-type tun
proto udp
remote it.compa.kz xxxx udp
nobind
ca /config/openvpn/keys/ca.crt
cert /config/openvpn/keys/yalink.crt
key  /config/openvpn/keys/yalink.key
ns-cert-type server
comp-lzo no
verb 3

Данные для server.conf и vpn.cnf брал с конф файлов из старой АТС.
При данных настройках OpenVPN client на Винде работает
настройки vpn.ovpn
Код: выделить все
client
resolv-retry infinite
remote it.comp.kz xxxx
proto udp
dev tun
comp-lzo
ca ca.crt
cert yealink.crt
key yealink.key
dh dh.pem
#tls-client
#tls-auth ta.key 1
float
keepalive 10 120
persist-key
persist-tun
verb 0

Но вот телефон гад не хочет подключаться к VPN.
В логах OpenVPNa данные по последнему успешному подключению через Винду, а на телефон логов не пишет.
Подскажите какие настройки я прописываю не так, или easy-rsa 2 я не так запустил, и можно ли каким-то чудом на телефоне проверить ошибки.
Извините за столь длинный текст, но пытался описать как можно яснее. Заранее всех благодарю.
Nursultan
 
Сообщений: 7
Зарегистрирован: 04 июн 2018, 07:39

Re: Затруднения в подключении телефонов Yealink к OpenVPN

Сообщение Nursultan » 29 июн 2018, 13:34

Забыл добавить конф фалй для телефона
Код: выделить все
setenv SERVER_POLL_TIMEOUT 4
reneg-sec 604800
sndbuf 100000
rcvbuf 100000
auth-retry nointeract
client
dev tun
dev-type tun
proto udp
remote it.comp.kz xxxx udp
nobind
ca /config/openvpn/keys/ca.crt
cert /config/openvpn/keys/yalink.crt
key  /config/openvpn/keys/yalink.key
ns-cert-type server
comp-lzo no
verb 3
Nursultan
 
Сообщений: 7
Зарегистрирован: 04 июн 2018, 07:39

Re: Затруднения в подключении телефонов Yealink к OpenVPN

Сообщение awsswa » 30 июн 2018, 11:16

На телефоне есть настройка - указать syslog сервер и уровень логгирования
Указываете свой сервер с asterisk - уровень DEBUG
и на сервере с asterisk ловите события
tcpdump -i any port 514 -v
если так не прокатит тогда по ip адресу телефона

из ошибок явных
в телефоне - без компресии - comp-lzo no
на сервере с компресией - comp-lzo
платный суппорт по мере возможностей
awsswa
 
Сообщений: 2313
Зарегистрирован: 09 июн 2012, 10:52
Откуда: Россия, Пермь skype: yarick_perm

Re: Затруднения в подключении телефонов Yealink к OpenVPN

Сообщение Vlad1983 » 02 июл 2018, 09:35

конфиг сервера (работает с Grandstream c Yealink не проверялось)
Код: выделить все
proto tcp-server
port 3501
dev tun1
mode server
tls-server
comp-lzo no
daemon
script-security 2
server 10.10.60.0 255.255.255.0
verb 2
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/server.crt
key /etc/openvpn/keys/server.key
dh /etc/openvpn/keys/dh1024.pem
crl-verify /etc/openvpn/keys/crl.pem
persist-key
persist-tun
keepalive 10 120
cipher BF-CBC
topology net30
status /dev/shm/openvpn-tel-status.log
log-append /var/log/openvpn-tel.log
max-clients 20
sndbuf 0
rcvbuf 0
Мобильные РФ 1.2 руб./мин. + НДС с посекундной тарификацией, CLI
Telegram: @rostel
Vlad1983
 
Сообщений: 4135
Зарегистрирован: 09 авг 2011, 11:51

Re: Затруднения в подключении телефонов Yealink к OpenVPN

Сообщение Nursultan » 03 июл 2018, 12:36

Похоже для Yealink не подходит, прописал, подогнал под свои данные, и ничего
Nursultan
 
Сообщений: 7
Зарегистрирован: 04 июн 2018, 07:39

Re: Затруднения в подключении телефонов Yealink к OpenVPN

Сообщение Vlad1983 » 03 июл 2018, 12:50

нужно смотреть что клиент сыпит в логи.
Grandstream вроде не могли подключиться пока не выставил явно "cipher".
Мобильные РФ 1.2 руб./мин. + НДС с посекундной тарификацией, CLI
Telegram: @rostel
Vlad1983
 
Сообщений: 4135
Зарегистрирован: 09 авг 2011, 11:51

Re: Затруднения в подключении телефонов Yealink к OpenVPN

Сообщение Nursultan » 03 июл 2018, 17:32

awsswa писал(а):На телефоне есть настройка - указать syslog сервер и уровень логгирования
Указываете свой сервер с asterisk - уровень DEBUG
и на сервере с asterisk ловите события
tcpdump -i any port 514 -v
если так не прокатит тогда по ip адресу телефона

из ошибок явных
в телефоне - без компресии - comp-lzo no
на сервере с компресией - comp-lzo


Да, не заметил компрессию, но это не помогло. tcpdump -i tun0 и port не выдают ничего, вообще тишина.
Nursultan
 
Сообщений: 7
Зарегистрирован: 04 июн 2018, 07:39

Re: Затруднения в подключении телефонов Yealink к OpenVPN

Сообщение awsswa » 03 июл 2018, 17:38

чудес не бывает - либо трафик от телефона идет не туда - либо его кто то режет
платный суппорт по мере возможностей
awsswa
 
Сообщений: 2313
Зарегистрирован: 09 июн 2012, 10:52
Откуда: Россия, Пермь skype: yarick_perm

Re: Затруднения в подключении телефонов Yealink к OpenVPN

Сообщение Nursultan » 04 июл 2018, 08:08

Методом тыка все же заработал, возможно после исправления компрессии, я не перезагружал телефон. В общем вчера вечером посидел, для проверки переименовал архив с ключами и конфигом с openvpn.tar в client.tar, загрузил этот архив на телефон, и перегрузил телефон. После он заработал. Поедее имя архива не должно же влиять, скорее всего перегрузка помогла
Nursultan
 
Сообщений: 7
Зарегистрирован: 04 июн 2018, 07:39


Вернуться в Linux

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

© 2008 — 2018 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH