Авторизация

ВНИМАНИЕ!
В связи с реализацией отказоустойчивой схемы просим убедиться, что ваши туннели подключаются с использованием доменного имени msk.vpnki.ru
Подключение туннелей на адрес vpnki.ru больше не работает

Topic-icon Персональная телефонная станция Астериск+Centos+OpenVPN

Больше
19 июль 2017 22:18 #481 от devid2017
devid2017 создал эту тему: Персональная телефонная станция Астериск+Centos+OpenVPN
Здравствуйте, товарищи...

В прологе к этому сайту автор умело заметил, что можно использовать все "вкусности" Asterisk телефонии, пользуясь микшером VPN каналов. В итоге хотелось бы получить городской номер из своей квартиры у себя в кармане, в смартфон. Для этого, как я понял будет достаточно "прикрутить" 2 VPN канала - один для смартфона (который, кстати, будет работать на 3G, получая интернет различных операторов, то на любом подвернувшемся Wi-Fi), - с Андроидом вроде всё подробно написано, хотя пока не пробовал, а второй канал, следует прикрутить к Centos... Я, как телефонист (нифига не разу, не линуксоид, но приходится вникать ;-) ) вижу, что в большинстве случаев Астер ставят, почему-то, на Centos (ранее 6, а сейчас уже и на 7 - логика одна). Телефонисты - народ бедный, поэтому работаем мы на том, что спи... списали. А это чаще всего старый pc, на который встаёт 6 Centos - 32 бита (реже 7 - он же 64 бита), без графической оболочки... Тут довольно подробно расписано, как это сделать на Linux Rasberi с помощью автоподгрузки файла настроек vpnki-ZXY.ovpn, и всё же Centos отличается. Первое, что бросается в глаза: это импорт 3-х ключей\сертификатов:
/etc/openvpn/easy-rsa/keys/ca.crt
/etc/openvpn/easy-rsa/keys/client.crt
/etc/openvpn/easy-rsa/keys/client.key
Если вам по какой-то причине не хочется возиться с ключами (как тут предлагается в личном кабинете) можно сделать client.ovpn файл, но только сами ключи запихнул внутрь. Это удобно по двум причинам:

1) Не нужно возиться с копированием целой стопки файлов
2) Лихо работает на мобильных устройствах
Вот как должен выглядеть файл

client
dev tun
dev-type tun
server-poll-timeout 4
ns-cert-type server
reneg-sec 604800
sndbuf 100000
rcvbuf 100000
auth-user-pass
proto udp
remote ams.vpnki.ru 1194 (сервер и порт?)
resolv-retry infinite
nobind

persist-key
persist-tun

mute-replay-warnings

<ca>
BEGIN CERTIFICATE
тело файла
END CERTIFICATE
</ca>

<cert>
BEGIN CERTIFICATE
тело файла
END CERTIFICATE
</cert>

<key>
BEGIN PRIVATE KEY
тело файла
END PRIVATE KEY
</key>

key-direction 1
remote-cert-tls server
cipher AES-128-CBC

comp-lzo
verb 3

Вот тут-то я и запутался ;-) если посмотреть на скаченный файл, для импорта настроек, то в нём, как буд-то бы лежит первый - сертификат файл - ca.crt? Не так ли? И Второй - ключ - соответствует файлу client.key
<ca>
BEGIN CERTIFICATE
ZXYXZXYXZXYXZXYXZXYXZXYX
END CERTIFICATE

BEGIN OpenVPN Static key V1
abcd10abcd10abcd10abcd10abcd10
END OpenVPN Static key V1
Вопрос, правильно ли "угадан"-ы файлы, которые требует Centos? И где найти ещё один...

В дальнейшем, настройка vpnki-Centos, конечно, займёт своё место в разделе - "как настроить", а класс системы определит поток телефонистов, как наиболее часто пользующих, почему-то Centos. В любых проявлениях - сервис очень нужный. Спасибо!

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
20 июль 2017 12:58 #484 от admin
admin ответил в теме Персональная телефонная станция Астериск+Centos+OpenVPN
Телефонисты - народ бедный? :) Ну уж позвольте ....
Касательно сертификатов.
Честно говоря, я и сам забыл что и чему там соответствует, а вот мой коллега, который это помнит сейчас в отпуске и будет только только в понедельник.
Лично мне казалось, что:
между <key> и </key> действительно client.key,
между <cert> и </cert> это сертификат клиента, но у нас не используется авторизация по сертификату, а используется имя и пароль,
между <ca> и </ca> это центр сертификации, который, на самом деле и не сервер и не клиент, а центр сертификации, но в вашем случае это будет сертификат сервера ca.cert
Если я не напутал что-то то вы можете попробовать подключиться без client.cert - это должна быть рабочая конфигурация для openvpn
Но могу и ошибаться...

если все заработало - нажмите на баннеры!

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
20 июль 2017 13:00 #485 от admin
admin ответил в теме Персональная телефонная станция Астериск+Centos+OpenVPN

если все заработало - нажмите на баннеры!

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
20 июль 2017 17:01 #486 от admin
admin ответил в теме Персональная телефонная станция Астериск+Centos+OpenVPN
Все почти так как я написал, но вот ответ моего коллеги (который в отпуске)

В нашем ovpn-файле имеется ca.crt и ta.key (опция tls-auth).

Мы не используем аутентификацию клиентов по сертификатам и потому нам не нужен client.crt или client.key. Вместо этого у нас логин/пароль. Мы могли бы сделать и то и другое, т.е. клиентские сертификаты + логин/пароль, но это было бы надругательством над здравым смыслом.

Если какой-то клиент OpenVPN зачем-то требует в конфигурации клиентский сертификат и отказывается принимать конфигурацию без него, то надо посмотреть на этого клиента. Но это сильно вряд ли.

Важно, что ta.key обязателен.

Если вы не можете влить готовый ovpn-файл и не можете сделать по инструкции для дебиана, то вам предстоит не только отговорить своего OpenVPN-клиента использовать клиентский сертификат, но и еще обучить его использовать tls-auth.

если все заработало - нажмите на баннеры!

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
21 июль 2017 01:34 #487 от devid2017
devid2017 ответил в теме Персональная телефонная станция Астериск+Centos+OpenVPN

admin пишет: Телефонисты - народ бедный? :) Ну уж позвольте ....

- Грешно смеяться, над больными людьми (С) Увы, не всем так везёт - есть ещё люди, которые работаю в такой конторе - как МГТС ("лично я хожу на работу, только потому что, она меня облагораживает..."(C) )
Так вот, зато мне терять нечего...;-) Что касается сабжа - я слишком зачитался умных книг и статей - всё должно быть просто - импорт настроек должен происходить с Вашего файла - и точка. Но есть некие "нюансы", которые я сейчас опишу (сам для себя или в faq можно класть - проверив предварительно):

Centos 7 (можно было бы и 6 - думаю похоже будет)
Подключаем репозиторий EPEL
Для того чтобы установить OpenVPN – необходимо подключить EPEL-репозиторий (Extra Packages for Enterprise Linux):
1 $ yum -y install epel-release

Устанавливаем OpenVPN
1 $ yum -y install openvpn
Скачиваем файл-профиля из Л.К. - vpnki_name.ovpn, переименовываем его в client.conf и кладём по адресу /etc/openvpn. Туда же кладём файл credentials.txt – текстовый файл, я делал UTF8, в котором всего 2 строчки:
user1234
password
Сохраняем файл, он лежит в той же дир, что и client.conf. В client.conf редактируем строку «auth-user-pass»\ заменяем на «auth-user-pass credentials.txt». Теперь можно протестить:
openvpn /etc/openvpn
И если всё «ок», о чём можно будет убедится в л.к. «статистика» - появится подключение, (посмотреть статус подключения из Centos можно - systemctl status Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.)
Добавим OpenVPN в автозагрузку
теперь добавим это чудо в автозагрузку - systemctl enable Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.. Всё гасим – через 10 минут убеждаемся, в статистика – пропадает подключение – снова стартуем – должно появится…

Сами вопросы:
Всё делалось на машине с отстреленным IP-Tables, FirewallD и SELinux – со всем эти «барахлом», надо будет как-то жить (в л.к. указан адрес и порт UDP) – видимо в IP-Tables пойдёт этот порт, открытый на исходящие… Интересно, только его надо будет открыть?
Теперь ещё веселуха – когда тестировал с Windows соединением всё, со свистом, подцепилось из того же файлика профиля и в статистике «забегали» байты, при подключении… При подключении Centos – даже и не булькнуло – соединение есть, байты не движутся, даже когда Ваш сервер пингую… Может байты начнут расти, когда второе плечо соберу – VPN на мобильном телефоне, и их вместе смикширую? Возможно, также, Centos потребует настроить маршрутизацию к новому соединению (лес тёмный). В ifconfig теперь появился новый девайс - "tun0" - это наш туннель. Непонятно также, почему он кажет IP адрес такой же, как и у Вашего сервера - inet 172.1.....

Поскольку мой Centos уже «наелся» кривых патчей и я накидал разных версий софта, которые на нём конфликтуют, то буду его скоро переставлять – на новою систему попробую следовать своей же инструкции (например, при установке сдуру, я ещё и OPENVPN Server поднял – и он теперь в логах воняет сильно…).

P.S. Надеюсь опыт настройки такой схемы будет полезен - телефона всё-таки...

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
21 июль 2017 14:18 #491 от admin
admin ответил в теме Персональная телефонная станция Астериск+Centos+OpenVPN
МГТС это жеж флагман... (правда, по-моему, идущий под воду из-за отношения к клиентам, ну да ладно) ... не об этом речь
Мои мысли по поводу ответов:
1. На исходящий трафик UDP, скорее всего, никаких специальных правил городить не нужно. Включайте свои фаерволы - все должно работать.
2. Насчет байтов в статистике. Статистика с интерфейсов снимается и публикуется после окончания пользовательской сессии. Это нормальная практика. Снимать ее в момент работы канала можно, но не имеет особенного смысла, так как биллинг нужен один раз и по факту. Думаю вы немного ошиблись строками когда смотрели на страницу статистики
3. Насчет адреса устройства TUN мне нужно посмотреть что там у меня, но сейчас нет возможности. Посмотрю чуть позже
4. Вот сервер openvpn лучше уберите, а то многое будет непонятным - где клиент, а где сервер и что они хотят

если все заработало - нажмите на баннеры!

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
21 июль 2017 18:04 #492 от devid2017
devid2017 ответил в теме Персональная телефонная станция Астериск+Centos+OpenVPN

admin пишет: МГТС это жеж флагман...

- Я, как бывший держатель Fido-nod-ы ругаю МГТС с их модемными скоростями, не более 9600 бод... С их координатными АТС (ещё недавно с декадно-шаговыми динозаврами)... Как платят, так и работают. ;-) "Флагман" им в зад, как говорится...

Ну а у меня победа: канал с Centos, я написал, как я поднимал вчера. Канал с Андроидом завёлся с пол оборота (OpenVPN Connect схватил профиль из файлика) и sip телефон успешно зарегился на Астере... Удивила топология сети: я думал там будет присутствовать 2 IP адреса с одной стороны (1-Адрес VPNKI, 2-Адрес виртуального адаптера туннеля Centos - и такое же "плёчо" с другой стороны: 1-Адрес VPNKI, 2-Адрес самого смартфона) - но нет, всё проще: только по одному адресу, 172.16.X.1 на каждое "плечо" (соответственно, на другое "плечо" будет адрес 172.16.X.2). Ничего лишнего! Порадовало... В Centos, соответственно, никаких маршрутов не вписывал - как только "подрубил" мобилу - всё сразу зарегистрировалось... Теперь, значит, на каждый новый мобильный, который хочет зарегится на Астере, надо по 1 новому VPN заводить... (в регистрации, в soft-sip в мобиле, указывается не адрес сервера, а адрес VPN-KI, глядящей на Астериск.). Круто! Голос слышу, но как оно будет в бою - неизвестно. Ping 200 мс, от мобилы, до Астериска - видимо это мой 3G...

Теперь остаётся переставить Centos (так как сам его запорол накатами сервера и кривых патчей) и заново всё настроить, теперь уже с IP-Tables - гложет меня сомнение, что надо будет порт на соединение (то, что в л.к. указано) в udp открывать... А так, работает всё, на "голеньком" сервере, без защиты... Предстоит танец с бубном и Fire-Wall-ами Centos...

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
21 июль 2017 18:20 #493 от admin
admin ответил в теме Персональная телефонная станция Астериск+Centos+OpenVPN
Да, с адресами все не сложно. Хорошо, что все получилось быстро с Астером.
Кстати, мы тут недавно какой-то сип-клиент тестировали, он умеет совершать прямые вызовы по IP адресу (без Астера). Забавно - набираешь айпишник другого своего туннеля и устанавливаешь голосовое соединение. Не помню как этот сип-клиент называется (для андроида, начинается на букву С...).

Не думаю, что с фаероволом будут сложности.

А кто будет пользоваться вашим Астером?

если все заработало - нажмите на баннеры!

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
22 июль 2017 00:24 #494 от devid2017
devid2017 ответил в теме Персональная телефонная станция Астериск+Centos+OpenVPN
Да, интересно, как этот sip клиент называется... Напишите, если несложно...
Астериск делал, для себя, для семьи, так сказать: плюшек множество:
У всех членов семьи мобильник, только с интернетом. Так ещё и оператора можешь менять (у меня на даче хорошо берёт Мегафон, а в деревне МТС, а на работе - Билайн. Начальнику - привет! У нас нет на работе интернета!!!) Все звонят друг\другу бесплатно, все используют, для звонков по городу стационарный номер - за что домашний номер - безлимит простаивает... Если ты не ответил на звонок от ребёнка, это сделает жена через минуту или дед... В магазине легко потеряться - общий вызов-конференция всем где встретимся... Плюшек очень много!Так-то уже давно всё настроено, только адрес у Астериска был прямой, за 5$\месяц и все логинились на его прямой адрес, пока сервер не повалили... Теперь можно за NAT-ом сидеть и через VPN подключаться... Только что-то я в печали: не пойму почему такой пинг далёкий - 200 мс. Голос затестил только в одну сторону. Надо будет с живым человеком поговорить, а я просто время узнавал. ;-) Вспомнил прикол: друг заморочился, при звонке на его Астериск проговаривается IVR - нажмите 1-Хозяина голым увидите, 2-его жену и т.п. и вот один из п-п. 7, по-моему, просит код ввести, в тоне - ввёл и попадаешь в меню "умный дом", которое прикручено скриптами к ардуинкам - пока только кондиционер включает и воду в ванну наливает (электроклапан от стиральной машины) - стрёмно это всё, соседа залить... Но идея неплохая. На городской телефон такую лабуду прикрутить...

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
24 июль 2017 16:28 #501 от admin
admin ответил в теме Персональная телефонная станция Астериск+Centos+OpenVPN
Вспомнил название приложения для Android - CSipSimple
Пинг не должен быть такой длинный. У меня здесь по Москве 7 мс.
Если с дачи, то 30-40 мс
Но 200 ... это ненормально

если все заработало - нажмите на баннеры!

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.