1.0. Отображение статуса работы системы VPNKI
1.1. Список всех туннелей пользователя
1.2. Список активных туннелей пользователя
1.3. Статус туннелей пользователя
1.4. Статистика подключений всех туннелей пользователя
1.5. Статистика подключений определенного туннеля пользователя за указанный период времени
1.6. Отображение основных данных учетной записи пользователя
1.7. Отображение активных дополнительных услуг пользователя
1.8. Отображение данных по последним платежам
2.1. Добавление нового туннеля в пользовательский аккаунт
2.2. Удаление туннеля из пользовательского аккаунта
2.3. Старт процесса OpenVPN (UDP) в пользовательской сети и получение файла настроек .ovpn
--
2.4. Добавление записи в Публикации URL
2.5. Удаление ВСЕХ записей в Публикации URL
--
2.6. Добавление Проброса TCP порта
2.7. Удаление Проброса TCP порта
2.8. Добавление / обновление адреса "Белого списка" в услуге Проброс TCP порта
--
2.9. Добавление Проброса UDP порта
2.10. Удаление Проброса UDP порта
2.11. Добавление / обновление адреса "Белого списка" в услуге Проброс UDP порта
--
2.12. Отключение туннеля на стороне сервера
2.13. Перезапуск процесса OpenVPN на сервере
--
2.14. Просмотр маршрута к сети пользователя
2.15. Добавление маршрута к сети пользователя
2.16. Удаление маршрута к сети пользователя
API 0.4 системы VPNKI предназначен для автоматизированной работы различных приложений с нашей системой.
Обращение пользователя к ресурсам API осуществляется путем web-запроса с использованием ключа, полученного на личной странице пользователя. API системы отображает информацию в ответ на запрос пользователя в формате JSON.
Личный ключ вы можете получить внизу любой странице "Личного кабинета". Выглядит ключ приблизительно так:
Эта часть предназначена для сбора статистики о туннелях пользователя. Доступна любому пользователю. Все запросы осуществляются методом HTTP GET
1.0. Актуальный статус работы системы VPNKI
Отображает актуальную информацию о работе системы VPNKI в целом с указанием протоколов и временем последней проверки (московское время). Аналог страницы https://vpnki.ru/status
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=system&action=status&key=<ключ пользователя>
1.1. Список всех туннелей пользователя
Отображает все туннели пользователя, ранее созданные через web-интерфейс системы или API.
Формат запроса:
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=tunnels&key=<ключ пользователя>
Отображает список активных туннелей пользователя.
Формат запроса:
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=active&key=<ключ пользователя>
Отображает все туннели пользователя и их статус. status=0 - туннель отключен, status=1 - туннель подключен
Формат запроса:
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=stat&key=<ключ пользователя>
Отображает статистику всех подключений туннелей пользователя за указанный период времени.
Формат запроса:
Где,
Пример: 2015-12-31%2023-59-59
Примечание: Разделить %20 может не использоваться при обращении через браузер, а использоваться обычный пробел
Отображает статистику подключений указанного туннеля пользователя за выбранный период времени.
Формат запроса:
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=stat_tunnel&key=<ключ пользователя>&tunnel=<имя туннеля>&ts=2016-10-10%2000-00-00&te=2016-10-18%2000-00-00
Где,
Пример: 2015-12-31%2023-59-59
Примечание: Разделить %20 может не использоваться при обращении через браузер, а использоваться обычный пробел
Отображает основные данные пользователя.
Формат запроса:
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=account&action=main&key=<ключ пользователя>
Отображает основные данные пользователя.
Формат запроса:
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=account&action=service&key=<ключ пользователя>
Отображает последние 50 записей.
Формат запроса:
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=log&action=payments&key=<ключ пользователя>
Эта часть предназначена для автоматизированного управления туннелями. Доступна только привилегированным пользователям.
Использует метод HTTP GET. Добавляет новый туннель в пользовательский аккаунт. В ответном сообщении пользователь получит автоматически созданное имя туннеля и пароль.
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=add_tunnel&key=<ключ пользователя>
Использует метод HTTP GET. Удаляет указанный пользователем туннель. В ответном сообщении пользователь получает сообщение об успехе операции.
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=del_tunnel&tunnel=<имя туннеля>&key=<ключ пользователя>
Использует метод HTTP GET. Запускает процесс OpenVPN (UDP), в ответ пользователь получает: имя_файла.ovpn и его содержимое в качестве переменных JSON
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=ovpn&action=add&key=<ключ пользователя>
Использует метод HTTP GET. Добавляет указанное пользователем доменное имя. В ответном сообщении пользователь получает сообщение об успехе операции.
Важно! Перед использованием API пользователь должен согласиться с условиями работы Публикации URL через сайт.
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=url&action=add&exname=<внешнее имя>&inip=<внутренний ip>&inport=<внутренний порт>&key=<ключ пользователя>
Где:
Важно, настройки будут применены в течении 5 минут после успешного выполнения команды!
Использует метод HTTP GET. Удаляет все записи пользователя в Публикации URL. В ответном сообщении пользователь получает сообщение об успехе операции.
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=url&action=remove&key=<ключ пользователя>
Важно, настройки будут применены в течении 5 минут после успешного выполнения команды!
Использует метод HTTP GET. Создает соответствие внешнего TCP порта системы vpnki и внутреннего порта и IP адреса пользовательского устройства.
В ответном сообщении пользователь получает сообщение об успехе операции, а также выданный системой порт.
Важно! Перед использованием API пользователь должен согласиться с условиями работы Публикации URL через сайт.
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=port&action=add&inip=<внутренний ip>&inport=<внутренний порт>&key=<ключ пользователя>
Где:
Важно, настройки будут применены в течении 5 минут после успешного выполнения команды!
Использует метод HTTP GET. Удаляет соответствие внешнего TCP порта системы vpnki и внутреннего порта и IP адреса пользовательского устройства.
В ответном сообщении пользователь получает сообщение об успехе операции.
Важно! Перед использованием API пользователь должен согласиться с условиями работы Публикации URL через сайт.
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=port&action=delete&port=<внешний TCP порт системы vpnki>&key=<ключ пользователя>
Где:
Важно, настройки будут применены в течении 5 минут после успешного выполнения команды!
2.8.1. Использует метод HTTP GET. Добавляет указанный пользователем адрес сети и маску в качестве адреса "Белого списка" для указанного порта TCP.
В ответном сообщении пользователь получает сообщение об успехе операции.
Важно! Перед использованием API пользователь должен согласиться с условиями работы Публикации порта / URL через сайт.
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=tcpport&action=update&port=<внешний TCP порт системы vpnki>&whitelist_ip=<адрес сети белого списка>&whitelist_mask=<маска сети белого списка>&key=<ключ пользователя>
Где:
Важно, настройки будут применены в течении 5 минут после успешного выполнения команды!
2.8.2. Использует метод HTTP GET. Добавляет адрес сети Интернет пользователя, который произвел данный запрос в белый список для указанного порта.
В ответном сообщении пользователь получает сообщение об успехе операции.
Важно! Перед использованием API пользователь должен согласиться с условиями работы Публикации порта / URL через сайт.
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=tcpport&action=update&port=<внешний TCP порт системы vpnki>&my_address=yes&key=<ключ пользователя>
Где:
Важно, настройки будут применены в течении 5 минут после успешного выполнения команды!
Использует метод HTTP GET. Создает соответствие внешнего UDP порта системы vpnki и внутреннего порта и IP адреса пользовательского устройства.
В ответном сообщении пользователь получает сообщение об успехе операции, а также выданный системой порт.
Важно! Перед использованием API пользователь должен согласиться с условиями работы Публикации URL через сайт.
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=udpport&action=add&inip=<внутренний ip>&inport=<внутренний порт>&key=<ключ пользователя>
Где:
Важно, настройки будут применены в течении 5 минут после успешного выполнения команды!
Использует метод HTTP GET. Удаляет соответствие внешнего TCP порта системы vpnki и внутреннего порта и IP адреса пользовательского устройства.
В ответном сообщении пользователь получает сообщение об успехе операции.
Важно! Перед использованием API пользователь должен согласиться с условиями работы Публикации URL через сайт.
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=port&action=delete&port=<внешний TCP порт системы vpnki>&key=<ключ пользователя>
Где:
Важно, настройки будут применены в течении 5 минут после успешного выполнения команды!
2.11.1. Использует метод HTTP GET. Добавляет указанный пользователем адрес сети и маску в качестве адреса "Белого списка" для указанного порта UDP.
В ответном сообщении пользователь получает сообщение об успехе операции.
Важно! Перед использованием API пользователь должен согласиться с условиями работы Публикации порта / URL через сайт.
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=udpport&action=update&port=<внешний UDP порт системы vpnki>&whitelist_ip=<адрес сети белого списка>&whitelist_mask=<маска сети белого списка>&key=<ключ пользователя>
Где:
Важно, настройки будут применены в течении 5 минут после успешного выполнения команды!
2.11.2. Использует метод HTTP GET. Добавляет адрес сети Интернет пользователя, который произвел данный запрос в белый список для указанного порта.
В ответном сообщении пользователь получает сообщение об успехе операции.
Важно! Перед использованием API пользователь должен согласиться с условиями работы Публикации порта / URL через сайт.
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=udpport&action=update&port=<внешний UDP порт системы vpnki>&my_address=yes&key=<ключ пользователя>
Где:
Важно, настройки будут применены в течении 5 минут после успешного выполнения команды!
Использует метод HTTP GET. Обрывает указанный туннель со стороны сервера, если туннель подключен по протоколам PPTP, L2TP, L2TP/IPsec. В случае подкючения туннеля по протоколу OpenVPN используйте перезапуск процесса OpenVPN на сервере (см. следующий пункт API)
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=manage&target=tun&action=restart&tun=<имя туннеля>&key=<ключ пользователя>
Где:
Выдает ошибки в случаях: наличие ошибки в имени туннеля, туннель не подключен, туннель подключен с использованием протокола OpenVPN
Использует метод HTTP GET. Посылает команду перезапуска процессу OpenVPN пользователя на сервере системы.
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=ovpn&action=restart&key=<ключ пользователя>
Использует метод HTTP GET. Отображает маршрут к сети, расположенной за туннелем указанным туннелем пользователя. В ответном сообщении пользователь получает сообщение в формате сеть, маска (в укороченном формате, например /24).
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=manage&target=route&action=show&tun=<имя туннеля>&key=<ключ пользователя>
Использует метод HTTP GET. Добавляет маршрут к сети, расположенной за туннелем указанным туннелем пользователя. В ответном сообщении пользователь получает сообщение об успехе добавления.
Сеть записыватся в формате адреса сети, например 192.168.1.0
Маска сети записывается в укороченном формате, например 24 или 16
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=manage&target=route&action=add&tun=<имя туннеля>&route=<сеть>&mask=<маска сети>&key=<ключ пользователя>
Использует метод HTTP GET. Удаляет маршрут к сети, расположенной за туннелем указанным туннелем пользователя. В ответном сообщении пользователь получает сообщение об успехе добавления.
Сеть записыватся в формате адреса сети, например 192.168.1.0
Маска сети записывается в укороченном формате, например 24 или 16
https://vpnki.ru/index.php?option=com_api&format=raw&app=webservices&resource=manage&target=route&action=del&tun=<имя туннеля>&route=<сеть>&mask=<маска сети>&key=<ключ пользователя>
--------------------------------------------------------------------------------------
Дополнение к пункту 1.3. Пользоваться статусами в MajorDoMo можно считывая их с помощью Веб переменной, для этого в ссылке указываем ссылку с ключом, а в шаблоне поиска:
[b]userХХХ","status":"(.+?)"[/b] где ХХХ номер вашего тоннеля.
Далее, просто, привязываем Веб переменную к свойству ну, а далее уже на ваше усмотрение, можно сделать оповещение и/или рестарт тоннеля. В ближайшее время я собираюсь в блоге сделать подробный мануал.
Обещанная статья: http://ovcher.com/umnyj-dom/kontrol-za-vpn-tonnelyami-vpnki-iz-majordomo.html
Если вы не планируете передачу видео трафика, то мы рекомендуем вам начинать с выбора тарифа PLAN-MYDEV. Если передача видео будет осуществляться, то стоит сразу начинать с PLAN-VIDEO. Если скорости хватать не будет, то в любое время вы можете изменить тариф на более скоростной.
Если вы используете нашу систему для решения бизнес задач, то начинайте с аналогичных тарифов с приставкой BUSINESS-.
Контролировать объем переданного трафика вы можете на странице с графиками использования.
Узнать реальную скорость своего VPN соединения вы можете утилитой iperf3 на странице "Инструменты". Стоит отметить, что вопрос скорости передачи полезных данных будет зависеть от трех факторов:
Худшим вариантом по скорости окажется вариант, когда в качестве транспортного протокола для VPN соединения используется TCP. При этом ваше устройство размещено далеко от сервера VPNKI. В этом случае, реальная скорость передачи данных будет определяться необходимостью подтверждения передачи каждого пакета в протоколе TCP.
Кроме настройки по этой инструкции вам могут пригодиться другие примеры конфигурации и использования системы.
По ссылкам ниже вы можете ознакомиться с информацией, связанной с темой VPN соединений.