Official Android 4+ port of the popular strongSwan VPN solution.
# FEATURES AND LIMITATIONS #
* Uses the VpnService API featured by Android 4+. Devices by some manufacturers seem to lack support for this - strongSwan VPN Client won't work on these devices!
* Uses the IKEv2 key exchange protocol (IKEv1 is not supported)
* Uses IPsec for data traffic (L2TP is not supported)
* Full support for changed connectivity and mobility through MOBIKE (or reauthentication)
* Supports username/password EAP authentication (namely EAP-MSCHAPv2, EAP-MD5 and EAP-GTC) as well as RSA/ECDSA private key/certificate authentication to authenticate users, EAP-TLS with client certificates is also supported
* Combined RSA/ECDSA and EAP authentication is supported by using two authentication rounds as defined in RFC 4739
* VPN server certificates are verified against the CA certificates pre-installed or installed by the user on the system. The CA or server certificates used to authenticate the server can also be imported directly into the app.
* IKEv2 fragmentation is supported if the VPN server supports it (strongSwan does so since 5.2.1)
* Split-tunneling allows sending only certain traffic through the VPN and/or excluding specific traffic from it
* Per-app VPN allows limiting the VPN connection to specific apps, or exclude them from using it
* The IPsec implementation currently supports the AES-CBC, AES-GCM, ChaCha20/Poly1305 and SHA1/SHA2 algorithms
* Passwords are currently stored as cleartext in the database (only if stored with a profile)
* VPN profiles may be imported from files (this is the only reason why the app requests android.permission.READ_EXTERNAL_STORAGE)
Details and a changelog can be found on our wiki: https://wiki.strongswan.org/projects/strongswan/wiki/AndroidVPNClient
# EXAMPLE SERVER CONFIGURATION #
Example server configurations may be found on our wiki: https://wiki.strongswan.org/projects/strongswan/wiki/AndroidVPNClient#Server-Configuration
Please note that the host name (or IP address) configured with a VPN profile in the app *must be* contained in the server certificate as subjectAltName extension.
# FEEDBACK #
Please post bug reports and feature requests on our wiki: https://wiki.strongswan.org/projects/strongswan/issues
If you do so, please include information about your device (manufacturer, model, OS version etc.).
The log file written by the key exchange service can be sent directly from within the application.
مسؤول الروبوت 4+ ميناء الحل strongSwan VPN شعبية.
# المميزات والقيود #
* يستخدم API VpnService واردة من قبل الروبوت 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 لتطبيقات محددة، أو استبعادها من استخدامه
* تنفيذ أمن بروتوكول الإنترنت يدعم حاليا AES-CBC، AES-GCM، ChaCha20 / Poly1305 والخوارزميات SHA1 / SHA2
يتم تخزين كلمات السر * حاليا منصب نص واضح في قاعدة البيانات (فقط إذا كانت مخزنة مع صورة)
يجوز استيرادها * ملامح VPN من الملفات (وهذا هو السبب الوحيد لماذا يطلب التطبيق android.permission.READ_EXTERNAL_STORAGE)
تفاصيل والتغيير يمكن الاطلاع على الويكي: https://wiki.strongswan.org/projects/strongswan/wiki/AndroidVPNClient
# مثال الخادم التكوين #
ويمكن الاطلاع على تكوينات ملقم سبيل المثال على الويكي: https://wiki.strongswan.org/projects/strongswan/wiki/AndroidVPNClient#Server-Configuration
يرجى ملاحظة أن اسم المضيف (أو عنوان IP) تكوين مع لمحة VPN في التطبيق * يجب * وارد في شهادة الملقم امتدادا subjectAltName.
# ردود الفعل #
الرجاء نشر التقارير الشوائب وطلبات جديدة على موقعنا ويكي: https://wiki.strongswan.org/projects/strongswan/issues
إذا قمت بذلك، يرجى تضمين المعلومات حول جهازك (الصانع، نموذج، إصدار نظام التشغيل وما إلى ذلك).
ملف السجل الذي كتبه خدمة تبادل المفاتيح يمكن إرسالها مباشرة من داخل التطبيق.