OpenVPN som fungerer med Android (uten root) OG Windows (også 64 bits)

OBS! Informasjonen her kan være utdatert!

Denne artikkelen er mange år gammel, og mye kan ha endret seg siden den ble skrevet. Vær kritisk, og sjekk også andre kilder.

Du har muligens tidligere lest mitt tidligere innlegg, som bl. annet forklarer hvordan du kan sette opp din egen filserver (Samba), og hvordan du kan få tilgang til denne via Internett (OpenVPN).

Det er lenge siden det ble skrevet, men det er fremdeles gyldig. Det vil si; oppsettet skissert i artikkelen er korrekt, så lenge du kun har behov for å logge deg på serveren fra pc-klienter. I disse tider, hvor smartmobiler og nettbrett er blitt allemannseie er det derimot et par justeringer som må gjøres, for å kunne aksessere serveren også fra disse enhetene (samtidig som man beholder tilgangen fra pc-klientene). Her skal jeg kort forklare hvilke endringer som må gjøres, og hvilke apper man trenger på Android (>4.0) for å kunne koble seg til å se filserveren og dens innhold.

Dette innlegget forutsetter at du allerede har en kjørende filserver med OpenVPN.

Serveren

server.conf

OpenVPN på Android fungerer helt perfekt, forutsatt at du kjører en rutet, og ikke bridged tilkobling. I den gamle posten var OpenVPN satt opp med brotilkobling, og det må vi dermed endre på. Dette gjøres i filen (på serveren) /etc/openvpn/server.conf, og her er det essensielle oppsettet: (Husk å ta en sikkerhetskopi av den eksisterende (og fungerende) server.conf-filen. Skulle dette av en eller annen grunn ikke fungere for deg så kan du alltids gå tilbake til det gamle oppsettet...)

port 1194
proto udp
dev tun
ca /path/to/ca.crt
cert /path/to/server.cert
key /path/to/server.key
dh /path/to/dhxxxx.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "route 192.168.x.0 255.255.255.0"
push "dhcp-option DNS 10.8.0.1"
push "dhcp-option WINS 10.8.0.1"
client-to-client
keepalive 10 120
tls-auth /path/to/ta.key
cipher AES-128-CBC
comp-lzo
persist-key
persist-tun
status openvpn-status.log
verb 3
plugin /path/to/openvpn-auth-pam.so login

Merk
/path/to/ må naturligvis endres til riktig adresse til filen det pekes på.

Der det står push «route 192.168.x.0 255.255.255.0» må x (og eventuelt resten av ip-adressen) byttes ut med riktig tall i henhold til lokalnettverket ditt der serveren står. (F.eks 192.168.1.0 eller 10.0.1.0 osv…)

dhxxxx.pem må erstatts med riktig betegnelse (f.eks dh1024.pem).

Du kan nå ta en restart av OpenVPN:

sudo /etc/init.d/openvpn restart

smb.conf

Også i Samba (filserveren) måtte jeg gjøre noen endringer. Dette gjøres i /etc/samba/smb.conf på serveren hvor Samba er installert. (Igjen; husk å ta en sikkerhetskopi av den eksisterende (og fungerende) smb.conf-filen. Skulle dette av en eller annen grunn ikke fungere for deg så kan du alltids gå tilbake til det gamle oppsettet...) Dette er mitt fungerende oppsett:

[global]
 workgroup = TEST
 server string = %h server (Samba, Ubuntu)
 wins support = yes
 dns proxy = no
 interfaces = 192.168.100.0/24 10.8.0.0/24 127.0.0.0/8 eth0
 log file = /var/log/samba/log.%m
 max log size = 1000
 syslog = 0
 panic action = /usr/share/samba/panic-action %d
 security = user
 encrypt passwords = true 
 passdb backend = tdbsam
 obey pam restrictions = yes
 unix password sync = yes
 passwd program = /usr/bin/passwd %u
 passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
 pam password change = yes
 map to guest = bad user
 usershare allow guests = yes

[printers]
 comment = All Printers
 browseable = no
 path = /var/spool/samba
 printable = yes
 guest ok = no
 read only = yes
 create mask = 0700

[print$]
 comment = Printer Drivers
 path = /var/lib/samba/printers
 browseable = yes
 read only = yes
 guest ok = no

[Felles]
comment = Felles for alle brukerne
path = /home/shares/Felles
valid users = @users
force group = users
create mask = 0660
directory mask = 0771

[homes]
comment = Private mapper
browseable = no
valid users = %S
writable = yes
create mask = 0700
directory mask = 0700

Merk
Det som er viktig her er interfaces = 192.168.100.0/24 10.8.0.0/24 127.0.0.0/8 eth0

Den første ip-adressen er lokalnettverket der serveren står, den andre er til OpenVPN og den siste er lokal. De siste lar du være som de er, den første endrer du så den stemmer med ditt nettverk.

Restart Samba etter at du har gjort endringene:

sudo service smbd restart

Pc-klienten

Vi må gjøre noen endringer her også. Men aller først; ta en kopi av det du har liggende enten i C:/Program Files/OpenVPN/Config/ eller C:/Program Files (x86)/OpenVPN/Config/, avhengig av operativsystem og tidligere installert versjon av OpenVPN. Filene her skal vi nemlig gjenbruke senere.

Når kopien er tatt; avinstaller OpenVPN, og slett følgende mapper etter avinstalleringen (det er ikke sikkert du har alle):

  • C:/Program Files/OpenVPN
  • C:/Program Files/Tap-Windows
  • C:/Program Files (x86)/OpenVPN
  • C:/Program Files (x86)/Tap-Windows

Last ned og installer siste versjon av OpenVPN-klienten herfra.

.ovpn

Du må gjøre noen endringer i .ovpn-filen din (Den ligger i Config-mappen du kopierte i sted.) Husk å beholde en sikkerhetskopi av den slik den ser ut nå, i tilfelle ting skjærer seg. Det nye oppsettet i .ovpn-filen skal være som følger:

client
 dev tun
 proto udp
 # Det under skal være OpenVPN-serverens OFFENTLIGE ip-adresse!
 remote xxx.xxx.xxx.xxx 1194
 resolv-retry infinite
 nobind
 persist-key
 persist-tun
 mute-replay-warnings
 ca ca.crt
 cert nils.hansen.crt
 key nils.hansen.key
 ns-cert-type server
 tls-auth ta.key 1
 cipher AES-128-CBC
 comp-lzo
 verb 3
 auth-user-pass

Kopiér deretter  innholdet i Config-mappen tilbake til C:/Program Files/OpenVPN/Config/.

OpenVPN Gui

Nå kan du starte OpenVPN Gui på pc'en, og forsøke å logge deg inn.

OBS!
Du  kjøre OpenVPN Gui som administrator. Hvis ikke klarer ikke programmet å opprette ruter som trengs for å nå filserveren.

Dette gjelder 64 bits versjonen. Om du også må gjøre det med 32 bits versjonen er jeg usikker på.

Koble til nettverksstasjon

Hvis du allerede hadde en tilkobling til filserveren kan du slette den nå, da du har fått ny adresse.

Den nye adressen du skal mappe opp (hvis du har fulgt det jeg har skrevet her til punkt og prikke) er \\10.8.0.1\Felles .

Android >4.0

For at OpenVPN skal fungere trenger du for det første Android versjon 4.0 eller nyere. I tillegg trenger du følgende to programmer (som begge er gratis):

Når disse programmene er installert gjør du følgende: (Jeg skriver nettbrett, men du kan like gjerne gjøre det på mobilen, så lenge den har Android 4.0 eller nyere.)

  1. Kopierer Config-mappen du jobbet med tidligere, og lagre den på sd-kortet på nettbrettet. Bruk f.eks AirDroid til denne oppgaven.
  2. i OpenVPN for Android, klikk på VPN Profiles, og klikk på mappe-ikonet oppe til høyre.
  3. Naviger deg frem til filene du pakket ut, og klikk på .ovpn-filen din (f.eks nils.hansen.ovpn). Nå skal den dukke opp i listen over vpn-profiler.
  4. Til høyre for der du ser det står nils.hansen , klikk på ikonet som indikerer at du kan gjøre endringer (ser ut som skyvebrytere). Klikk på Basic, og scroll deg ned til brukernavn og passord, som skal fylles ut med det samme du bruker når du kobler deg til via OpenVPN på pc'en.
  5. Trykk tilbaketast og trykk deretter på profilnavnet nils.hansen. Du kobles nå til.
  6. I ES File Explorer trykker du "local" oppe til venstre, og bytter til LAN.
  7. Klikk New og Server
  8. Fyll ut: Server: 10.8.0.1/Felles og samme brukernavn og passord som til OpenVPN. Display as f.eks Felles på Server.
  9. OK.
  10. Du kan og bør slette Config-mappen fra nettbrettet igjen nå.
  11. That's it. 🙂

OBS! OpenVPN bruker MYE strøm på nettbrettet!!!

1 kommentar

  1. Erlend på 6. mai 2013 kl 09:22

    Kjempe bra artikkel.
    Dette blir mer og mer gjeldene nå som android mini pc-er er i full fart på vei inn på det Norske markedet.

    Hilsen Erlend
    http://www.androidminipc.no

Legg igjen en kommentar