Er der fejl eller mangler på siden? Så skriv gerne til hacker(snabel-a)matfystutor.dk

Forskel mellem versioner af "VPN"

Fra Hackerwiki
Spring til navigation Spring til søgning
 
(25 mellemliggende versioner af 9 andre brugere ikke vist)
Linje 1: Linje 1:
VPN står for Virtual Private Network og er en teknik der muliggør oprettelse af en sikker forbindelse ind på et netværk. De forskellige institutter på AU har en VPN-server stående, hvilket vil sige, at du med din egen computer kan oprette en sikker forbindelse, så din computer tror, at den er direkte på AU's netværk.
VPN står for Virtual Private Network og er en teknik der muliggør oprettelse af en sikker forbindelse ind på et netværk.  
Man kan også bruge VPN til nem og sikker brug af [[Kom på nettet|AU-Gadget]] netværket, samt for at kunne udskrive fra sin egen bærbare.
De forskellige institutter på AU har en VPN-server stående, hvilket vil sige, at du med din egen computer kan oprette en sikker forbindelse, så din computer tror, at den er direkte på AU's netværk.
Man kan også bruge VPN til at kunne udskrive fra sin egen bærbare, selvom dette i nogle tilfælde ikke er påkrævet, hvis man er forbundet til eduroam.
 
VPN er nyttigt til at tilgå tjenester som Universitetet har betalt for adgang til selvom man ikke er på uni. Dette gælder f.eks. ordbøger og videnskabelige artikler.  


==Kom på VPN ==
==Kom på VPN ==
For at benytte VPN kræves dels en [https://vpn.au.dk/ VPN-klient] (der opretter forbindelsen til VPN-serveren), og dels at it-staff har godkendt dit NFIT-brugernavn til VPN. Alle nye brugere bliver automatisk oprettet som VPN-brugere. Hvis du mod forventning ikke er VPN-bruger kan man kontakte [http://nfit.au.dk/for-users/nfit-support/ NFIT helpdesk ].


VPN til Windows, OS X og Linux (Cisco AnyConnect) kan installeres direkte herfra:  [https://vpn.au.dk VPN]
Fra den 1. maj 2020 skal alle benytte sig af totrinsbekræftelse. Du kan opsætte godkendelse via SMS eller Microsofts Authenticator app via:<br>
https://account.activedirectory.windowsazure.com<br>
Log in med <auid>@uni.au.dk samt dit password
 
===Cisco AnyConnect===
 
Til Windows, OS X og Linux kan man installere Cisco AnyConnect for at forbinde sig til VPN.
Programmet kan downloades fra https://remote.au.dk/ ved at logge ind med:<br>
'''GROUP:''' AU-ACCESS<br>
'''USERNAME:''' <auid>@uni.au.dk<br>
'''PASSWORD:''' <dit password til mit.au.dk><br>


=== Tips til VPN på Windows 8 ===
For at installere programmet på Linux kan det være nødvendigt at downloade filen <code>vpnsetup.sh</code>. Efter dette skal man køre <code>sudo bash ./vpnsetup.sh</code> for at installere Cisco AnyConnect.
For at få Cisco AnyConnect til at virke under windows 8 kræves der pt. en ændring i registreringsdatabasen. Start regedit ved skrive "regedit" i "Kør". Gå herefter til følgende mappe "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\vpnva". Dobbelt-klik på "DisplayName" og fjern "@oem10.inf,%vpnva_Desc%;" fra teksten. Tryk OK og du kan nu starte klienten op og forbinde som normalt.


Efter man har installeret programmet skal man køre programmet "Cisco AnyConnect Secure Mobility Client". Inde i programmet skal man indtaste <code>remote.au.dk/au-access</code> som adressen og trykke Connect.
Derefter skal man indtaste det samme brugernavn og password som man brugte til at downloade programmet.


=== Tips til VPN på Linux ===
For mere information, se guiden til [http://medarbejdere.au.dk/fileadmin/www.asb.dk/servicekatalog/IT/Mine_Indstillinger/VPN/VPN_Manual_-_Windows_-_English.pdf Windows] og [http://medarbejdere.au.dk/fileadmin/www.asb.dk/servicekatalog/IT/Mine_Indstillinger/VPN/VPN_Manual_-_OSX_-_English.pdf OS X].
Vi anbefaler altid at bruge openconnect klienten.  


Her er den korte guide til Ubuntu (testet med 11.10) og lignende (Debian, Linux Mint, etc.):
===OpenConnect===
Installer openconnect plugin til network manager:
<pre>sudo apt-get install network-manager-openconnect</pre>
Start '''Network connections''' og tilføj en '''VPN forbindelse'''. Vælg '''Cisco Anyconnect compatible (Openconnect)''' og tast '''vpn.au.dk''' som gateway. Tryk Ok og vælg derefter VPN-forbindelsen i Network-manager oppe i højre hjørne. Du bliver derefter spurgt efter gruppe. Her vælger du din gruppe (fx Ifavpn for Fysikere) og udfylder brugernavn og adgangskode. Tryk herefter på connect knappen. Du er nu forbundet!


Flere oplysninger kan også findes [http://nfit.au.dk/for-users/network/vpn/vpn-linux/ hos NFIT].
Som et alternativ til det Cisco's propertiære AnyConnect klient kan man bruge Infradead's open source klient [[https://www.infradead.org/openconnect/contribute.html|OpenConnect]] der også virker til Windows, Linux og Mac.
Det kan installeres på Linux med<br>
<br>
apt-get install openconnect
<br>
Og det kan anvendes ved at skrive<br>
<br>
openconnect -u <auid>@uni.au.dk <nowiki />https://remote.au.dk/AU-ACCESS
<br>
Kommadoen skal køres med superbrugerprivilegier, så der kan med fordel tilføjes et '''sudo''' foran kommadoen.


=== Tips til VPN på OS X ===
===NetworkManager===
Nøjagtigt som med Linux, er Cisco-klienten heller ikke optimal til OS X. Man kan derimod opsætte VPN direkte i OS X uden brug af Cisco-klienten, hvis man bruger OS X '''10.6 eller nyere'''.


====Guide ====
Hvis du bruger NetworkManager (på Linux), kan du i stedet for ovenstående bruge nm-connection-editor (Network Connections) eller Gnome control panel til at sætte AU's VPN op med.
Gå ind i '''Systemindstillinger''' (højreklik æble-logoet i øverste venstre hjørne). Herefter ind i '''Netværk'''. I bunden af listen til venstre trykkes på plus'et. Herefter vælges '''Interface: VPN''', '''VPN-type: Cisco IPSec''' og et Servicenavn indtastes (fx VPN AU). Tryk '''Opret'''. Efterfølgende udfyldes '''Serveradresse: vpn.au.dk''', '''Brugernavn: <dit NFIT>''' og '''Adgangskode: <dit NFIT>'''. Tryk på '''Autentificeringsindstillinger''' og vælg gruppenavn.


Hvis du læser Datalogi skal du vælge '''DAIMI_RADIUS som gruppenavn'''. I så fald mangler du også en '''Delt adgangskode'''. Denne kan du finde ved at [https://www.cs.au.dk/~staff/VPN/clients-ssl/params.html logge ind med dit NFIT login her] (det er ordet, der står efter 'IPSec secret').
Tilføj en ny Cisco AnyConnect Compatible VPN (openconnect) forbindelse og indtast  https://remote.au.dk/AU-ACCESS under gateway og gem. Når du forbinder skal du indtaste følgende login oplysninger:
 
'''USERNAME:''' <auid>@uni.au.dk<br>
'''PASSWORD:''' <dit password til mit.au.dk><br>


Nu kan du logge nemt på VPN!


==Fordele ved VPN ==
==Fordele ved VPN ==
Linje 38: Linje 56:
Hvis du sidder på Universitetet kan du desuden undgå at skulle logge på netværket separat for at komme ud på internettet med det [[Kom på nettet|trådløse netværk]]. Derudover er kommunikationen krypteret når man er på VPN, så man sikkert kan benytte det trådløse netværk.
Hvis du sidder på Universitetet kan du desuden undgå at skulle logge på netværket separat for at komme ud på internettet med det [[Kom på nettet|trådløse netværk]]. Derudover er kommunikationen krypteret når man er på VPN, så man sikkert kan benytte det trådløse netværk.


===Log nettet med VPN ===
==SSH over VPN med openconnect og ocproxy==
Ved at bruge VPN som login til det trådløse netværk, slipper du for browser-loginsider. For at gøre det, skal du først tilslutte til AU-Gadget eller AUWLAN. Herefter skal du blot åbne din VPN-forbindelse som beskrevet ovenfor.
''FUNO, 20. april 2024''
På Ubuntu skal man for nedenstående kommandoer fjerne flaget '--no-external-auth', da det ikke længere findes. Ligeledes er server-certifikatet uddatet, Ubuntu så lykkedes det for openconnect selv at finde ud af certifikatet, hvorfor man kan fjerne '--servercert sha256:c131461ac8f287a8b2af6a5d887ddb568dc8a5d6dcd1c57c2552b2e979b2ea7b \'-flaget.
 
OpenConnect har nogle problemer med AU's nye to-faktor system, så man kan risikere at prøve et par gange før, at det går igennem.
 
=== For studerende ===
''Rav, 26. maj 2017''
 
''Opdateret 29. okt 2023: Tilføjet nye nødvendige parametre ([https://gitlab.com/openconnect/openconnect/-/issues/618#note_1412365715 ref])''
 
Hvis du bruger Linux og openconnect, kan du nøjes med at køre visse programmer (f.eks. SSH eller din webbrowser) over VPN ved at køre openconnect i SOCKS proxy modus. (Tak til [https://www.monperrus.net/martin/ssh-over-vpn-with-openconnect Monperrus' side om emnet].)
 
Installér openconnect og [https://github.com/cernekee/ocproxy ocproxy]. Det kan gøres med:
 
sudo apt install ocproxy
 
Kør derefter følgende shell-script for at starte en SOCKS-server på localhost:9052.
 
#!/bin/sh
# server[/group]
SERVER=https://remote.au.dk/AU-ACCESS
# VPN username
USERNAME=au306325@uni.au.dk
SOCKS_PORT=9052
/usr/sbin/openconnect \
  --useragent=AnyConnect \
  --no-external-auth \
--servercert sha256:9c67c12687405c0300ecef3099aba63facbf0d823e2f3c0e2c549bf6036f37d1 \
--reconnect-timeout 60 \
--script-tun \
--script "ocproxy -D $SOCKS_PORT" \
-u "$USERNAME" \
"$SERVER"
 
Du vil blive bedt om at indtaste dit VPN-kodeord (dvs. samme som til mit.au.dk). (Hvis du har en kommando eller en fil med dit AU-kodeord, kan du tilføje <code>--passwd-on-stdin</code> til openconnect-kaldet for at pipe kodeordet ind.)
 
Hvis du får en fejl der indeholder <code>Server SSL certificate didn't match:</code>, så skyldes det at AU IT har ændret public key for certifikatet på remote.au.dk, og så skal du fjerne <code>--servercert</code>-linjen. (Du kan finde den nye public key med <code>gnutls-cli --insecure remote.au.dk</code>.) Certifikatet 9c67c1268... er fra 2020-03-10 og er lavet med Let's Encrypt.
 
For at køre [[SSH]] til f.eks. fh.cs.au.dk kan du installere netcat (BSD-variant, ikke GNU) og tilføje følgende i din .ssh/config:
 
Host fh-socks
HostName fh.cs.au.dk
ProxyCommand nc -X 5 -x 127.0.0.1:9052 %h %p
 
Derefter vil <code>ssh fh-socks</code> forbinde via VPN så længe ovenstående shell-script kører.
 
=== For medarbejdere ===
 
''Rav, 24. september 2018''
 
''Opdateret 29. okt 2023: Tilføjet nye nødvendige parametre ([https://gitlab.com/openconnect/openconnect/-/issues/618#note_1412365715 ref])''
 
Fra 4. februar 2019 kan medarbejdere ikke længere benytte AU-ACCESS til VPN, men skal i stedet logge på STs medarbejder-VPN hvor man skal bruge 2FA (totrinsbekræftelse). Det kræver at man følger [https://medarbejdere.au.dk/administration/it/vpn-remoteaudk/ AU ITs guide] til at installere en bestemt 2FA app på sin smartphone. (Oprindeligt var udmeldingen at ændringen ville ske pr. 22. oktober 2018, men jeg kunne fortsat bruge AU-ACCESS indtil for nylig. --[[Bruger:Rav|Rav]] ([[Brugerdiskussion:Rav|diskussion]]) 11. feb 2019, 21:46 (CET))
 
Ovenstående shell-script kan stadig anvendes hvis man laver følgende rettelser:
 
* <code>SERVER=https://remote.au.dk/st</code>
* Når man skriver sit kodeord, skal man tilføje et og-tegn '&' efterfulgt af den nuværende sekscifrede TOTP-kode fra app'en.
 
Hvis man ønsker at benytte <code>--passwd-on-stdin</code> kan man benytte følgende script:
 
#!/bin/sh
# https://server[:port][/group]
SERVER=https://remote.au.dk/st
# VPN username
USERNAME=au306325@uni.au.dk
# Command outputting your VPN password
PASSWORD=`pass au | head -1`
read -p "TOTP: " TOTP
SOCKS_PORT=9052
echo "$PASSWORD&$TOTP" | /usr/sbin/openconnect \
  --useragent=AnyConnect \
  --no-external-auth \
--servercert sha256:c131461ac8f287a8b2af6a5d887ddb568dc8a5d6dcd1c57c2552b2e979b2ea7b \
--reconnect-timeout 60 \
--script-tun \
--script "ocproxy -D $SOCKS_PORT" \
-u "$USERNAME" \
--passwd-on-stdin \
"$SERVER"


Du er nu på nettet uden brug af browser-loginsider, og din forbindelse er krypteret!


[[Category:IFA]]
[[Category:IFA]]
[[Category:IM]]
[[Category:IM]]
[[Category:CS]]
[[Category:CS]]

Nuværende version fra 20. apr. 2024, 10:01

VPN står for Virtual Private Network og er en teknik der muliggør oprettelse af en sikker forbindelse ind på et netværk. De forskellige institutter på AU har en VPN-server stående, hvilket vil sige, at du med din egen computer kan oprette en sikker forbindelse, så din computer tror, at den er direkte på AU's netværk. Man kan også bruge VPN til at kunne udskrive fra sin egen bærbare, selvom dette i nogle tilfælde ikke er påkrævet, hvis man er forbundet til eduroam.

VPN er nyttigt til at tilgå tjenester som Universitetet har betalt for adgang til selvom man ikke er på uni. Dette gælder f.eks. ordbøger og videnskabelige artikler.

Kom på VPN

Fra den 1. maj 2020 skal alle benytte sig af totrinsbekræftelse. Du kan opsætte godkendelse via SMS eller Microsofts Authenticator app via:
https://account.activedirectory.windowsazure.com
Log in med <auid>@uni.au.dk samt dit password

Cisco AnyConnect

Til Windows, OS X og Linux kan man installere Cisco AnyConnect for at forbinde sig til VPN. Programmet kan downloades fra https://remote.au.dk/ ved at logge ind med:
GROUP: AU-ACCESS
USERNAME: <auid>@uni.au.dk
PASSWORD: <dit password til mit.au.dk>

For at installere programmet på Linux kan det være nødvendigt at downloade filen vpnsetup.sh. Efter dette skal man køre sudo bash ./vpnsetup.sh for at installere Cisco AnyConnect.

Efter man har installeret programmet skal man køre programmet "Cisco AnyConnect Secure Mobility Client". Inde i programmet skal man indtaste remote.au.dk/au-access som adressen og trykke Connect. Derefter skal man indtaste det samme brugernavn og password som man brugte til at downloade programmet.

For mere information, se guiden til Windows og OS X.

OpenConnect

Som et alternativ til det Cisco's propertiære AnyConnect klient kan man bruge Infradead's open source klient [[1]] der også virker til Windows, Linux og Mac. Det kan installeres på Linux med

apt-get install openconnect


Og det kan anvendes ved at skrive

openconnect -u <auid>@uni.au.dk https://remote.au.dk/AU-ACCESS


Kommadoen skal køres med superbrugerprivilegier, så der kan med fordel tilføjes et sudo foran kommadoen.

NetworkManager

Hvis du bruger NetworkManager (på Linux), kan du i stedet for ovenstående bruge nm-connection-editor (Network Connections) eller Gnome control panel til at sætte AU's VPN op med.

Tilføj en ny Cisco AnyConnect Compatible VPN (openconnect) forbindelse og indtast https://remote.au.dk/AU-ACCESS under gateway og gem. Når du forbinder skal du indtaste følgende login oplysninger:

USERNAME: <auid>@uni.au.dk
PASSWORD: <dit password til mit.au.dk>


Fordele ved VPN

Når du er koblet på VPN er du på nettet gennem AU's linje og kan dermed tilgå en lang række sider som ordbøger, tidsskrifter mm. som Universitetet har betalt for adgang til.

Derudover kan man printe ud fra instituttets printere og tilgå sit personlige drev.

Hvis du sidder på Universitetet kan du desuden undgå at skulle logge på netværket separat for at komme ud på internettet med det trådløse netværk. Derudover er kommunikationen krypteret når man er på VPN, så man sikkert kan benytte det trådløse netværk.

SSH over VPN med openconnect og ocproxy

FUNO, 20. april 2024 På Ubuntu skal man for nedenstående kommandoer fjerne flaget '--no-external-auth', da det ikke længere findes. Ligeledes er server-certifikatet uddatet, på Ubuntu så lykkedes det for openconnect selv at finde ud af certifikatet, hvorfor man kan fjerne '--servercert sha256:c131461ac8f287a8b2af6a5d887ddb568dc8a5d6dcd1c57c2552b2e979b2ea7b \'-flaget.

OpenConnect har nogle problemer med AU's nye to-faktor system, så man kan risikere at prøve et par gange før, at det går igennem.

For studerende

Rav, 26. maj 2017

Opdateret 29. okt 2023: Tilføjet nye nødvendige parametre (ref)

Hvis du bruger Linux og openconnect, kan du nøjes med at køre visse programmer (f.eks. SSH eller din webbrowser) over VPN ved at køre openconnect i SOCKS proxy modus. (Tak til Monperrus' side om emnet.)

Installér openconnect og ocproxy. Det kan gøres med:

sudo apt install ocproxy

Kør derefter følgende shell-script for at starte en SOCKS-server på localhost:9052.

#!/bin/sh

# server[/group]
SERVER=https://remote.au.dk/AU-ACCESS
# VPN username
USERNAME=au306325@uni.au.dk

SOCKS_PORT=9052
/usr/sbin/openconnect \
 	--useragent=AnyConnect \
 	--no-external-auth \
	--servercert sha256:9c67c12687405c0300ecef3099aba63facbf0d823e2f3c0e2c549bf6036f37d1 \
	--reconnect-timeout 60 \
	--script-tun \
	--script "ocproxy -D $SOCKS_PORT" \
	-u "$USERNAME" \
	"$SERVER"

Du vil blive bedt om at indtaste dit VPN-kodeord (dvs. samme som til mit.au.dk). (Hvis du har en kommando eller en fil med dit AU-kodeord, kan du tilføje --passwd-on-stdin til openconnect-kaldet for at pipe kodeordet ind.)

Hvis du får en fejl der indeholder Server SSL certificate didn't match:, så skyldes det at AU IT har ændret public key for certifikatet på remote.au.dk, og så skal du fjerne --servercert-linjen. (Du kan finde den nye public key med gnutls-cli --insecure remote.au.dk.) Certifikatet 9c67c1268... er fra 2020-03-10 og er lavet med Let's Encrypt.

For at køre SSH til f.eks. fh.cs.au.dk kan du installere netcat (BSD-variant, ikke GNU) og tilføje følgende i din .ssh/config:

Host fh-socks
HostName fh.cs.au.dk
ProxyCommand nc -X 5 -x 127.0.0.1:9052 %h %p

Derefter vil ssh fh-socks forbinde via VPN så længe ovenstående shell-script kører.

For medarbejdere

Rav, 24. september 2018

Opdateret 29. okt 2023: Tilføjet nye nødvendige parametre (ref)

Fra 4. februar 2019 kan medarbejdere ikke længere benytte AU-ACCESS til VPN, men skal i stedet logge på STs medarbejder-VPN hvor man skal bruge 2FA (totrinsbekræftelse). Det kræver at man følger AU ITs guide til at installere en bestemt 2FA app på sin smartphone. (Oprindeligt var udmeldingen at ændringen ville ske pr. 22. oktober 2018, men jeg kunne fortsat bruge AU-ACCESS indtil for nylig. --Rav (diskussion) 11. feb 2019, 21:46 (CET))

Ovenstående shell-script kan stadig anvendes hvis man laver følgende rettelser:

  • SERVER=https://remote.au.dk/st
  • Når man skriver sit kodeord, skal man tilføje et og-tegn '&' efterfulgt af den nuværende sekscifrede TOTP-kode fra app'en.

Hvis man ønsker at benytte --passwd-on-stdin kan man benytte følgende script:

#!/bin/sh

# https://server[:port][/group]
SERVER=https://remote.au.dk/st
# VPN username
USERNAME=au306325@uni.au.dk

# Command outputting your VPN password
PASSWORD=`pass au | head -1`

read -p "TOTP: " TOTP
SOCKS_PORT=9052
echo "$PASSWORD&$TOTP" | /usr/sbin/openconnect \
 	--useragent=AnyConnect \
 	--no-external-auth \
	--servercert sha256:c131461ac8f287a8b2af6a5d887ddb568dc8a5d6dcd1c57c2552b2e979b2ea7b \
	--reconnect-timeout 60 \
	--script-tun \
	--script "ocproxy -D $SOCKS_PORT" \
	-u "$USERNAME" \
	--passwd-on-stdin \
	"$SERVER"