User Tools

Site Tools


doc:appunti:linux:sa:openvpn_android

OpenVPN su terminale Android

Semplice configurazione di una VPN con file di configurazione statici, tra host GNU/Linux con OpenVPN e un terminale Android con la app OpenVPN for Android. La VPN viene usata solo per accedere ad alcune reti locali raggiungibili del server, la navigazione internet del teminale Android avviene sulla sua normale connessione.

Alcune limitazioni riscontrate:

  • L'opzione --pull sul client pare non funzionare. Le opzioni --route e --ifconfig devono essere contenute nel file di configurazione caricato su Android, non funzionano se vengono passate con --push dal server.
  • Alcune richieste DNS relative alla normale attività del terminale Android vengono instradate nel tunnel. Tali richieste in generale falliscono, a meno che il server non ne faccia il corretto instradamento. Tuttavia questo non compromette il normale accesso ad internet del terminale Android.

Configurazione del server

Si crea un file di configurazione opportuno /etc/openvpn/android.conf:

verb 3
mute 3
proto udp
lport 5011
dev tun11
tun-mtu 1500
ifconfig 172.16.11.1 172.16.11.2
secret android.key
ping 20
persist-tun
persist-key
user nobody
group nogroup

Si deve creare anche il file con la preshared key /etc/openvpn/android.key:

openvpn --genkey --secret android.key

Configurazione del terminale Android

Tutta la configurazione viene salvata in un unico file di testo LinuxVPN.ovpn:

resolv-retry infinite
proto udp
remote server.linux.rigacci.org
rport 5011
dev tun
tun-mtu 1500
ifconfig 172.16.11.2 255.255.255.255
route 192.168.1.0 255.255.255.0 vpn_gateway
route 10.7.64.0 255.255.255.0 vpn_gateway
ping 20
ping-restart 180
<secret>
#
# 2048 bit OpenVPN static key
#
-----BEGIN OpenVPN Static key V1-----
d4c50c36657da74c317d8ac6fa55f77b
bb4d497b7a84b9522d7ed52c921de232
e28ead562b7584146d074a7cdd7f0686
...
e3dc536106296ed376e81b28517933fe
eab6c244bfcff7bd9fb4e033a75910e0
936dae26b432478fd300082c36d7658f
-----END OpenVPN Static key V1-----
</secret>

Il file va trasferito sul terminale android, quindi dall'APP si provvede ad importare il file:

Importazione configurazione Risultato dell'importazione

È possibile verificare la configurazione che viene generata a seguito dell'importazione del file. Dopo il parsing del file .ovpn, questo può essere rimosso dalla cartella Android.

Modifica configurazione esistente Configurazione generata dall'importazione

Facendo tap sul nome della VPN, questa viene avviata ed è possibile leggere il log:

Log di una sessione OpenVPN

doc/appunti/linux/sa/openvpn_android.txt · Last modified: 2023/10/18 10:38 by niccolo