Написать на основе https://life.astralinux.ru/pages/viewpage.action?pageId=287700571 — УДАЛИТЬ ЭТУ СТРОКУ ПО ОКОНЧАНИИ!
Оглавление
Общие сведения
Функция быстрого запуска VPN позволяет запускать и останавливать VPN нажатием на соответствующую кнопку на панели быстрого запуска в режиме «Мобильный» ОС СН.
Якорь | ||||
---|---|---|---|---|
|
Настройки быстрого запуска VPN задаются в конфигурационном файле /etc/xdg/vpn-helperrc
.
...
Выполнение скриптов от учетной записи root
задается параметром AsRoot
. При значении true
запуск выполняется от от учетной записи root
, при значении false
— от имени текущего пользователя.
Скрипты по умолчанию
Скрипт запуска
Скрипт запуска VPN по умолчанию — /usr/lib/astra-mobile/astra-mobile-vpn-start
.
...
Секция Выбор реализации
содержит закомментированные вызовы этих функций.
Скрипт остановки
Скрипт остановки VPN по умолчанию — /usr/lib/astra-mobile/astra-mobile-vpn-stop
.
...
Порядок настройки быстрого запуска VPN
OpenConnect
- Отредактировать скрипт запуска VPN (
/usr/lib/astra-mobile/astra-mobile-vpn-start
):function main() {
disconnect
# connect_not_mpl
connect_openconnect_impl
# connect_vipnet_impl
# connect_continent_ap_impl
# connect_imitation_impl
return $?
}
- В скрипте запуска VPN (
/usr/lib/astra-mobile/astra-mobile-vpn-start
) указать параметры подключения:local URL="<URL-адрес сервера VPN>"
local GROUP="<Рабочая группа>"
local USERNAME="<Имя пользователя>"
local PASSWORD="<Пароль>"
ВНИМАНИЕ! Хранение логина и пароля в открытом виде небезопасно! Рекомендуется настроить подключение по сертификатам и доработать соответствующим образом скрипт запуска. - Отредактировать скрипт проверки статуса VPN (
/usr/lib/astra-mobile/astra-mobile-vpn-status
):function main() {
# status_not_mpl
status_openconnect_impl
# status_vipnet_impl
# status_continent_ap_impl
# status_imitation_impl
return $?
}
- Отредактировать скрипт остановки VPN (
/usr/lib/astra-mobile/astra-mobile-vpn-stop
):function main() {
# disconnec_not_mpl
disconnect_openconnect_impl
# disconnect_vipnet_impl
# disconnect_continent_ap_impl
# disconnect_imitation_impl
return $?
}
- В конфигурационном файле
/etc/xdg/vpn-helperrc
включить запуск от учетной записиroot
:AsRoot=true
ViPNet
- Отредактировать скрипт запуска VPN (
/usr/lib/astra-mobile/astra-mobile-vpn-start
):function main() {
disconnect
# connect_not_mpl
#
connect_openconnect_impl
connect_vipnet_impl
# connect_continent_ap_impl
# connect_imitation_impl
return $?
}
- Отредактировать скрипт проверки статуса VPN (
/usr/lib/astra-mobile/astra-mobile-vpn-status
):function main() {
# status_not_mpl
#
status_openconnect_impl
status_vipnet_impl
# status_continent_ap_impl
# status_imitation_impl
return $?
}
- Отредактировать скрипт остановки VPN (
/usr/lib/astra-mobile/astra-mobile-vpn-stop
):function main() {
# disconnec_not_mpl
#
disconnect_openconnect_impl
disconnect_vipnet_impl
# disconnect_continent_ap_impl
# disconnect_imitation_impl
return $?
}
- Если предполагается использование одного общего ключа (заданного учетной записи
root
), то включить запуск от учетной записиroot
, указав в конфигурационном файле/etc/xdg/vpn-helperrc
параметрAsRoot=true
. Если предполагается использование индивидуального ключа для каждого пользователя, то указатьAsRoot=false
.
Континент-АП
- Отредактировать скрипт запуска VPN (
/usr/lib/astra-mobile/astra-mobile-vpn-start
):function main() {
disconnect
# connect_not_mpl
#
connect_openconnect_impl
# connect_vipnet_impl
connect_continent_ap_impl
# connect_imitation_impl
return $?
}
- В скрипте запуска VPN (
/usr/lib/astra-mobile/astra-mobile-vpn-start
) указать параметры подключения:local NAME="<Имя пользователя>"
local PASS="<Пароль>"
ВНИМАНИЕ! Хранение логина и пароля в открытом виде небезопасно! Рекомендуется настроить подключение по сертификатам и доработать соответствующим образом скрипт запуска. - Отредактировать скрипт проверки статуса VPN (
/usr/lib/astra-mobile/astra-mobile-vpn-status
):function main() {
# status_not_mpl
#
status_openconnect_impl
# status_vipnet_impl
status_continent_ap_impl
# status_imitation_impl
return $?
}
- Отредактировать скрипт остановки VPN (
/usr/lib/astra-mobile/astra-mobile-vpn-stop
):function main() {
# disconnec_not_mpl
#
disconnect_openconnect_impl
# disconnect_vipnet_impl
disconnect_continent_ap_impl
# disconnect_imitation_impl
return $?
}
Использование других реализаций
Если используется реализация VPN, не поддерживаемая по умолчанию, необходимо либо доработать существующие скрипты, либо написать новые и указать их расположение в конфигурационном файле /etc/xdg/vpn-helperrc
(см. Конфигурационный файл).
...
- При успешном запуске VPN программа должна возвращать 0;
- При неудачном запуске VPN программа должна возвращать 1;
- Запуск VPN не должен блокировать программу, т. е. программа запускаетсявыполняется, запускает VPN и сразу закрываетсязавершается. Процесс VPN должен продолжать существовать;
- Данные из
stdout
иstderr
системой никак не обрабатываются. Можно использовать любой стандартный вывод по своему усмотрению.
...