Официален Android порт на популярното VPN решение strongSwan.
# ХАРАКТЕРИСТИКИ И ОГРАНИЧЕНИЯ #
* Използва API на VpnService, включен в Android 4+. Устройства от някои производители изглежда нямат поддръжка за това - strongSwan VPN клиент няма да работи на тези устройства!
* Използва протокола за обмен на ключове IKEv2 (IKEv1 *не* се поддържа)
* Използва IPsec за трафик на данни (L2TP *не* се поддържа)
* Пълна поддръжка за променена свързаност и мобилност чрез MOBIKE (или повторно удостоверяване)
* Поддържа EAP удостоверяване на потребителско име/парола (а именно EAP-MSCHAPv2, EAP-MD5 и EAP-GTC), както и RSA/ECDSA удостоверяване на частен ключ/сертификат за удостоверяване на потребители, EAP-TLS с клиентски сертификати също се поддържа
* Комбинираното RSA/ECDSA и EAP удостоверяване се поддържа чрез използване на два кръга за удостоверяване, както е дефинирано в RFC 4739
* Сертификатите на VPN сървъра се проверяват спрямо CA сертификатите, предварително инсталирани или инсталирани от потребителя в системата. CA или сървърните сертификати, използвани за удостоверяване на сървъра, също могат да бъдат импортирани директно в приложението.
* IKEv2 фрагментацията се поддържа, ако VPN сървърът го поддържа (strongSwan го прави от 5.2.1)
* Разделеното тунелиране позволява изпращане само на определен трафик през VPN и/или изключване на конкретен трафик от него
* VPN за приложение позволява ограничаване на VPN връзката до конкретни приложения или изключване от използването им
* Внедряването на IPsec в момента поддържа алгоритмите AES-CBC, AES-GCM, ChaCha20/Poly1305 и SHA1/SHA2
* Паролите в момента се съхраняват като чист текст в базата данни (само ако се съхраняват с профил)
* VPN профилите могат да бъдат импортирани от файлове
* Поддържа управлявани конфигурации чрез корпоративно управление на мобилността (EMM)
Подробности и регистър на промените можете да намерите в нашите документи: https://docs.strongswan.org/docs/5.9/os/androidVpnClient.html
# РАЗРЕШЕНИЯ #
* READ_EXTERNAL_STORAGE: Позволява импортиране на VPN профили и CA сертификати от външно хранилище на някои версии на Android
* QUERY_ALL_PACKAGES: Изисква се на Android 11+ за избор на приложения за изключване/включване във VPN профили и опционалния случай на използване на EAP-TNC
# ПРИМЕРНА КОНФИГУРАЦИЯ НА СЪРВЪР #
Примерни сървърни конфигурации могат да бъдат намерени в нашите документи: https://docs.strongswan.org/docs/5.9/os/androidVpnClient.html#_server_configuration
Моля, имайте предвид, че името на хоста (или IP адресът), конфигуриран с VPN профил в приложението *трябва да се съдържа* в сертификата на сървъра като разширение subjectAltName.
# ОБРАТНА ВРЪЗКА #
Моля, публикувайте доклади за грешки и заявки за функции чрез GitHub: https://github.com/strongswan/strongswan/issues/new/choose
Ако го направите, моля, включете информация за вашето устройство (производител, модел, версия на операционната система и т.н.).
Регистрационният файл, написан от услугата за обмен на ключове, може да бъде изпратен директно от приложението.