pfSense Support Subscription

Author Topic: Guide till en OpenVPN klient mot ovpn.se under pfSense 2.1.5  (Read 15245 times)

0 Members and 1 Guest are viewing this topic.

Offline nialc

  • Newbie
  • *
  • Posts: 16
  • Karma: +8/-0
    • View Profile
Guide till en OpenVPN klient mot ovpn.se under pfSense 2.1.5
« on: November 15, 2014, 06:16:12 pm »
Här är en guide till hur jag fick OpenVPN via ovpn.se att fungera med pfSense.
(Uppdaterat 2015-12-17, med rättelser & förenklingar efter förslag i tråden)

Mycket av denna information kommer från andra guider som jag använt mig av för att få till en fungerande konfiguration av ovpn.se i pfSense.
Jag har sammanställt, översatt och kompletterat med det som behövts för att få denna konfiguration att fungera tillfredsställande.
Tanken med detta var även för min egen skull, så att jag skulle ha en "dummie" att falla tillbaka på ifall jag behöver göra om processen nån gång när minnet börjat svikta.  ::)

Hittar ni felaktigheter eller har tips på förbättringar så mottages dessa tacksamt.



Jag utgår från att:

Det finns en fungerande grundinstallation av pfSense (i mitt fall version 2.1.5)
En WAN anslutning till din ISP
En LAN (Local Area Network) anslutning.
Ett konto hos ovpn.se.


Först av allt bör du ladda ner konfigurationsfilerna från ovpn.se.
Dessa kommer inte i sig att behöva importeras i pfSense, men med en textredigerare kan du öppna dem för att få fram de uppgifter som används i guiden.


Börja därefter med att logga in i pfSenses webbgränssnitt genom att ange dess IP (normalt sett 192.168.0.1) i din webbläsare.
Därefter kan vi köra igång med inställningarna.


1. Byt DNS-servrar (OBS! Uppdaterade servrar men gammal exempelbild)

1. Navigera till menyn: "System" > "General Setup"
2. Skriv följande i första rutan under DNS Servers: 46.227.67.134
3. Skriv följande i andra rutan under DNS Servers: 46.227.67.135
4. Ändra sedan Use Gateway i drop-down-listen till höger om varje server till OVPNOPENVPN_VPNV4


(I mitt exempel ovan heter gateway OVPNOPENVPN_VPNV4 OPT6, medan det sannolikt heter OPT1 i normala fall)

5. Klicka på "Save"



2. Skapa CA Certifikat

1. Navigera till menyn: "System" > "Cert Manager"
2. Se till att du står under "CAs" fliken.
3. Klicka på plus "+" symbolen för "Add or Import CA".
4. Konfigurera som följande:

Descriptive name = OVPN
Method = Import an existing Certificate Authority
Certificate data = (klistra in texten från den ovpn-ca.crt fil du laddade hem tidigare)
—–BEGIN CERTIFICATE—–
.
.
.
—–END CERTIFICATE—–

Certificate Private Key = (lämna tomt)
Serial for next certificate = (lämna tomt)

5. Klicka på "Save"




Så här bör det se ut när certifikatet är skapat:




3. Skapa fil med inloggningsuppgifter

1. Navigera till menyn: "Diagnostics" > "Edit file"
2. Skriv följande i rutan "Save / Load from path": /conf/openvpn-auth.conf
3. I textrutan under skriver du ditt användarnamn & lösenord hos ovpn.se, på en varsin rad.
4. Klicka på "Save"





4. Skapa fil med nyckel för TLS Autentisering

1. För att inte röra till det, navigera återigen till menyn: "Diagnostics" > "Edit file"
2. Skriv följande i rutan "Save /Load from path": /conf/ovpn-tls.key
3. I textrutan under, klistra in texten från den ovpn-tls.key fil du laddade hem tidigare.
-----BEGIN OpenVPN Static key V1-----
.
.
.
-----END OpenVPN Static key V1-----


4. Klicka på "Save"





5. Skapa OpenVPN Klient

1. Navigera till menyn: "VPN: > "OpenVPN"
2. Välj fliken "Client"
3. Klicka på plus "+" symbolen för "Add client".
4. Konfigurera som följande:

Disabled = Ska EJ klickas för
Server Mode = Peer To Peer (SSL/TLS)
Protocol = UDP
Device Mode = tun
Interface = WAN
Local Port  = (Lämna tomt)
Server host or address = pool.prd.se.ovpn.se
Server Port = 1194
Proxy host or address = (Lämna tomt)
Proxy port = (Lämna tomt)
Proxy authentication extra options = none
Server host name resolution = Klicka för, "Infinitely resolve server"
Description = OVPN OpenVPN (Valfritt enligt din smak)
TLS Authentication = Ska EJ klickas för, "Enable authentication of TLS packets"
Peer Certificate Authority = OVPN
Client Certificate = webConfigurator default *In use
Encryption algorithm = AES-256-CBC (256-bit)
Hardware Crypto = No Hardware Crypto Acceleration
IPv4 Tunnel Network = (Lämna tomt)
IPv6 Tunnel Network = (Lämna tomt)
IPv4 Remote Network/s = (Lämna tomt)
IPv6 Remote Network/s = (Lämna tomt)
Limit outgoing bandwidth = (Lämna tomt)
Compression = Klicka för, "Compress tunnel packets using the LZO algorithm"
Type-of-Service = Ska EJ klickas för

Advanced = (Fyll i följande i textrutan, med ett semi-kolon som separerar varje rad)
auth-user-pass /conf/openvpn-auth.conf;
tls-auth /conf/ovpn-tls.key 1;
remote-cert-tls server;

remote vpn02.prd.kista.ovpn.se 1195; (Bortredigerat efter diskussion i tråden nedan =)
remote-random;
reneg-sec 432000;
persist-key;
persist-tun;
pull;
verb 3;
route-nopull;
(Detta är ett extra alternativ, som standard behöver du EJ skriva dit det, men det är valfritt och jag förklarar mer under avsnitt 8-9).

5. Klicka på "Save"





6. Skapa OpenVPN Interface

1. Navigera till menyn: "Interfaces" > "assign"
2. Se till att du står på fliken "Interfaces assignment"
3. Klicka på plus "+" symbolen för "Add interface"
4. Det kommer skapa ett nytt interface med namnet OPT1 och nätverks port ovpnc1(Den beskrivning du gav din OpenVPN Klient)
5. Klicka på OPT1 för att redigera ditt nya interface
6. Konfigurera enligt följande:

Enabled = Klicka för
Description = OVPN
IPv4 Configuration Type = none
IPv6 Configuration Type = none
MAC address = (Lämna tomt)
MTU = (Lämna tomt)
MSS = (Lämna tomt)
Block private networks = Ska EJ klickas för
Block bogon networks = Ska EJ klickas för

7. Klicka på "Save"
8. På nästa sida klicka på "Apply changes"





7. Konfigurera "NAT Rules"

1. Navigera till menyn: "Firewall" > "NAT"
2. Välj fliken "Outbound"
3. Om du inte sedan tidigare haft det valt, klicka då för "Manual Outbound NAT rule generation (AON – Advanced Outbound NAT)"
4. Klicka på "Save"
5. Det skall då automatiskt skapas regler för dig (med uppgifter som matchar ditt LAN)



6. Nästa steg blir att duplicera alla dessa regler, men ändra interface från WAN till OVPN.
7. Börja med att klicka på plus "+" symbolen direkt till höger om den första regeln, för “add a new NAT based on this one”
8. Konfigurera enligt följande:

Do not NAT = Ska EJ klickas för
Interface = OVPN
Protocol = (ändra inte)
Source = (ändra inte)
Destination = (ändra inte)
Translation = (ändra inte)
No XMLRPC Sync = (ändra inte)
Description = Auto created rule for ISAKMP – LAN to OVPN

9. Klicka på "Save"



10. Upprepa för även de övriga två reglerna.
11. Slutligen klicka på "Apply changes"





8. Verifiera din OpenVPN anslutning

Vid det här laget är din OpenVPN klient färdigkonfigurerad och det enda du vanligtvis behöver göra är att starta om din OpenVPN tjänst.

Detta gör du genom att navigera till menyn: "Status" > "OpenVPN", under "Client Instance Statistics" bör du finna din tjänst med status UP.
Oavsett status rekommenderar jag ändå att starta om tjänsten via knappen direkt till höger "restart openvpn service"


För att verifiera att tjänsten anslutit korrekt kan du kika på OpenVPN loggarna genom att navigera till menyn: "Status" > "System Logs" och välja fliken OpenVPN.
Om allt gått väl, bör där finnas en rad med: " openvpn[35593]: Initialization Sequence Completed "

Kort och gott så bör du nu kunna surfa till valfri "what is my ip" sida i din webbläsare och bekräfta att din IP adress numera är den du tilldelats från OVPN.se



9. Övrigt, route-nopull & policy routing

I den standardkonfigurering vi gjorde ovan så är din OpenVPN-klient konfigurerad att ta emot sk. pushed routes från den OpenVPN-server vi ansluter till.
Detta innebär att tjänsten lägger till ett antal routes till pfSense's routing tables, vilka effektivt "tar över" och skickar ALL din trafik via din OpenVPN tjänst.
Men det har också den lilla nackdelen att om din openvpn-klient går ner så routas vanligtvis återigen all trafik ut via din ISPs oskyddade nät.

Route-nopull
Om du som jag istället önskar att själv kunna styra vilken trafik du vill skall gå via din openvpn-klient, så lägger du till denna sträng (route-nopull;) i Advanced-fältet i din OpenVPN-klient-konfiguration.
På så vis förhindrar du att dessa routes pushas, men som konsekvens av detta måste du då själv styra upp hur trafiken skall tillåtas via Firewall Rules, sk. "policy routing".


Policy routing
Som standard har du 3st Rules (regler) för ditt LAN, navigera till menyn: "Firewall" > "Rules" och klicka på fliken "LAN" för att se dessa.
Det bör vara en "Anti-Lockout Rule" överst och två stycken "Default allow LAN to any Rule", en vardera för IPv4 & IPv6.




Dessa regler styr hur din trafik routas i en normal pfSense konfiguration, men det är även här du manuellt kan ställa in hur din trafik skall styras när du lagt till "route-nopull" i din konfiguration.

Det du bör tänka på är att pfSense processar dessa regler enligt en första-träff basis och att den regel som ligger överst är den som i första hand exekveras.
(Som standard blockeras dessutom all trafik som inte passar in på någon regel).

Om du vill styra så att ALL din trafik går via din openvpn-klient OCH att all utgående trafik upphör ifall anslutningen kopplas ifrån, så gör du följande:

1. Klicka på Edit "e" knappen till höger om din "default allow LAN to any" IPv4 Rule.
2. I fönstret som öppnas skrolla hela vägen ner till "Advanced features".
3. Klicka på Advanced knappen till höger om Gateway
4. Ändra från Default till OVPNOPENVPN_VPNV4
5. Skrolla tillbaka till Description och ändra från LAN till OVPN för att lättare hålla ordning på reglerna.
6. Klicka på "Save"
7. Klicka på "Apply changes" högst upp i nästa fönster.



Du ska nu ha ändrat din standardregel så att all trafik istället går ut via din openvpn-klient.
Eftersom du i och med detta också ersatte din "default allow LAN to any" regel så ska trafiken nu inte kunna routas vidare ifall din openvpn-klient kopplas ifrån.


- : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : -

Uppdatering för route-nopull (För att all utgående trafik ska upphöra ifall anslutningen kopplas ifrån)

För att lösningen med Route-nopull skall fungera krävs att alternativet "Skip rules when gateway is down" är valt.

Detta aktiverar du genom att navigera till menyn: "System" > "Advanced", under fliken "Miscellaneous" och sedan finner du det under "Gateway Monitoring".



- : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : - : -


Om du nu exempelvis skulle vilja undanta en specifik enhet och styra dennes trafik via din vanliga WAN anslutning, så kan du helt enkelt lägga till en ny regel baserad på den du precis redigerade.
(Detta förutsätter att du gjort en statiskt mappning i din DHCP-server till den enhet du vill styra upp)

Gör då enligt följande:

1. Klicka på plus "+" knappen till höger om den nyligen editerade regeln.
2. I fönstret som öppnas, skrolla ner till "Source".
3. Klicka på Type knappen och ändra från "LAN net" till "Single host or alias"
4. I fältet "Adress" skriver du den ip-address eller det alias du tilldelat din enhet.
5. Skrolla sedan vidare hela vägen ner till "Advanced features".
6. Klicka på Advanced knappen till höger om Gateway
7. Ändra från OVPNOPENVPN_VPNV4 till WAN_DHCP
8. Klicka på "Save"
9. Gulmarkera din nya regel genom att klicka på den.
10. Flytta den sedan ovanför din tidigare ändrade "default allow LAN to any" regel, genom att klicka på den lilla pilen till höger om denna regel.
11. Klicka på "Apply changes" högst upp i nästa fönster.

Nu bör du ha en extra regel som undantar din valda enhet från att styras om till din openvpn-klient.


Slut för denna gången.
Jag hoppas detta kan vara till hjälp för flera, jag har själv suttit otaliga kvällar för att hitta en bra lösning på detta.
« Last Edit: January 10, 2016, 01:42:54 pm by nialc »

Offline Ip Man

  • Jr. Member
  • **
  • Posts: 76
  • Karma: +4/-2
    • View Profile
Re: Guide till en OpenVPN klient mot ovpn.se under pfSense 2.1.5
« Reply #1 on: March 14, 2015, 06:08:02 pm »
Stort tack för guiden nialc! Jag planerar att införa OVPN på min pfSense-router. Jag ska läsa din guide med stort intresse. Jag känner igen det där med "otaliga kvällar"  :)

Offline wildstar23

  • Newbie
  • *
  • Posts: 8
  • Karma: +0/-0
    • View Profile
Re: Guide till en OpenVPN klient mot ovpn.se under pfSense 2.1.5
« Reply #2 on: March 25, 2015, 10:00:38 am »
Jag lyckades connecta idag tack vara denna guide så ett stort tack!  8) Hade inte klarat det utan....

Några saker där jag körde fast...

1. Byt DNS-servrar:

Går inte att ändra till OVPN i Use gateway när interfacet inte finns. Man får gå tillbaka sen och ändra.

5. Skapa OpenVPN Klient:
Hardware Crypto = No Hardware Crypto Acceleration

Där satte jag Intel RDRAND eftersom min processor stödjer det.


Jag får ut hela min bandbredd och lite till. Det verkar vara mycket stabilt också.

Offline Ip Man

  • Jr. Member
  • **
  • Posts: 76
  • Karma: +4/-2
    • View Profile
Re: Guide till en OpenVPN klient mot ovpn.se under pfSense 2.1.5
« Reply #3 on: March 28, 2015, 04:58:41 pm »
Nu har även jag lyckats tack vare din eminenta guide. Version 2.2.1 skiljer sig lite jämfört med 2.1.5 på vissa ställen men inte mycket.

Småsaker som jag fastnade lite på:

Du skapar filen: /conf/openvpn-auth.conf men när du skapar klienten hänvisar du till en annan fil: auth-user-pass /conf/ovpn-openvpn-auth.conf; Det bör vara samma.

Under advanced i klienten står "remote vpn02.prd.kista.ovpn.se 1195;". Det bör väl vara  "remote pool.prd.se.ovpn.se 1195"

Offline olapola

  • Newbie
  • *
  • Posts: 11
  • Karma: +0/-0
    • View Profile
Re: Guide till en OpenVPN klient mot ovpn.se under pfSense 2.1.5
« Reply #4 on: March 29, 2015, 03:48:39 am »
Tack för en utmärkt guide!

Dock får jag DNS-läcka när jag lägger till route-nopull;

Kör jag utan denna sträng och ställer in att mitt ip ska gå via WAN så får jag DNS läcka till OVPN

Får ni andra okcså DNS läcka när ni kör route-nopull?

Offline Ip Man

  • Jr. Member
  • **
  • Posts: 76
  • Karma: +4/-2
    • View Profile
Re: Guide till en OpenVPN klient mot ovpn.se under pfSense 2.1.5
« Reply #5 on: March 29, 2015, 05:29:54 am »
Tack för en utmärkt guide!

Dock får jag DNS-läcka när jag lägger till route-nopull;

Kör jag utan denna sträng och ställer in att mitt ip ska gå via WAN så får jag DNS läcka till OVPN

Får ni andra okcså DNS läcka när ni kör route-nopull?

Om jag testar med https://www.dnsleaktest.com/ så finns min ISP inte med. Det tolkar jag som att inga DNS-läckor förekommer och att saker ock ting fungerar som det är tänkt. Se även https://www.ovpn.se/blog/vad-ar-en-dns-lacka/ . Har jag missat något?

Edit: Det ska tilläggas att jag kör route-nopull.

Offline olapola

  • Newbie
  • *
  • Posts: 11
  • Karma: +0/-0
    • View Profile
Re: Guide till en OpenVPN klient mot ovpn.se under pfSense 2.1.5
« Reply #6 on: March 29, 2015, 05:33:36 am »
Vilken verision av pfsense kör du?

När jag kör utan nopull så fungerar allt bra, men lägger jag till den så dyker min ISP upp i dnsleaktest

Offline Ip Man

  • Jr. Member
  • **
  • Posts: 76
  • Karma: +4/-2
    • View Profile
Re: Guide till en OpenVPN klient mot ovpn.se under pfSense 2.1.5
« Reply #7 on: March 29, 2015, 05:35:56 am »
Vilken verision av pfsense kör du?

När jag kör utan nopull så fungerar allt bra, men lägger jag till den så dyker min ISP upp i dnsleaktest

Jag kör senaste version 2.2.1.

Offline olapola

  • Newbie
  • *
  • Posts: 11
  • Karma: +0/-0
    • View Profile
Re: Guide till en OpenVPN klient mot ovpn.se under pfSense 2.1.5
« Reply #8 on: March 29, 2015, 05:53:49 am »
Typiskt, kör samma verision.

Får försöka gå igenom allt igen noggrant.

Vad har du valt i openvpn configen. Compression ?

Offline nialc

  • Newbie
  • *
  • Posts: 16
  • Karma: +8/-0
    • View Profile
Re: Guide till en OpenVPN klient mot ovpn.se under pfSense 2.1.5
« Reply #9 on: March 29, 2015, 06:02:18 am »
Jag lyckades connecta idag tack vara denna guide så ett stort tack!  8) Hade inte klarat det utan....

Några saker där jag körde fast...

1. Byt DNS-servrar:

Går inte att ändra till OVPN i Use gateway när interfacet inte finns. Man får gå tillbaka sen och ändra.

5. Skapa OpenVPN Klient:
Hardware Crypto = No Hardware Crypto Acceleration

Där satte jag Intel RDRAND eftersom min processor stödjer det.


Jag får ut hela min bandbredd och lite till. Det verkar vara mycket stabilt också.

1. Du har nog helt rätt i detta, min egen konfiguration är inte riktigt så här enkel så jag tänkte nog inte på ordningen när jag gjorde guiden.  ;)
2. Kanon! Min hårdvara stöder det tyvärr inte så jag har begränsad erfarenhet av detta..

Och det är ju helt klart värt att laborera med för att få ut mer bandbredd, min begränsas tyvärr av min hårdvara för tillfället...  :(

Nu har även jag lyckats tack vare din eminenta guide. Version 2.2.1 skiljer sig lite jämfört med 2.1.5 på vissa ställen men inte mycket.

Småsaker som jag fastnade lite på:

Du skapar filen: /conf/openvpn-auth.conf men när du skapar klienten hänvisar du till en annan fil: auth-user-pass /conf/ovpn-openvpn-auth.conf; Det bör vara samma.

Under advanced i klienten står "remote vpn02.prd.kista.ovpn.se 1195;". Det bör väl vara  "remote pool.prd.se.ovpn.se 1195"

Jag kör dessvärre fortfarande på 2.1.5 (pga tidsbrist) men skall försöka göra eventuella justeringar i guiden med när jag väl tar mig tid.  :)

Felskrivningen skall också åtgärdas så snart jag får (hoppas jag) förnyad behörighet att göra ändringar i tråden.

Apropå servern så är det nog lite valfritt vilken du använder, den från guiden har fungerat för mig sedan konfigurering och är även den som behövs om man eventuellt kör ovpn's Publika IPv4 tjänst.


Tack för en utmärkt guide!

Dock får jag DNS-läcka när jag lägger till route-nopull;

Kör jag utan denna sträng och ställer in att mitt ip ska gå via WAN så får jag DNS läcka till OVPN

Får ni andra okcså DNS läcka när ni kör route-nopull?

Har du ställt in DNS servrar under "general setup" ?

route-nopull hindrar servern att pusha sina routes & DNS till dig, då måste du själv ange de DNS-servrar du vill använda annars används troligtvis din ISPs egen och ditt IP läcker.

Kör du utan route-nopull det så pushar ovpn ut sina egna som standard vilket åtminstone förklarar varför det "fungerar som det är tänkt" då.
« Last Edit: December 17, 2015, 12:01:22 pm by nialc »

Offline Ip Man

  • Jr. Member
  • **
  • Posts: 76
  • Karma: +4/-2
    • View Profile
Re: Guide till en OpenVPN klient mot ovpn.se under pfSense 2.1.5
« Reply #10 on: March 29, 2015, 06:05:04 am »
Typiskt, kör samma verision.

Får försöka gå igenom allt igen noggrant.

Vad har du valt i openvpn configen. Compression ?

Jag valde "Enabled with Adaptive Compression", på måfå skall tilläggas.

För övrigt (DNS-läcka):
Kolla om det står rätt vid "DNS servers" under general setup. OVPNs DNS-servrar samt rätt gateway.

Har du stängt av "WebRTC" i din Webläsare. Själv har jag Firefox. Där kör man about:config och sätter media.peerconnection.enabled = false.

Offline Ip Man

  • Jr. Member
  • **
  • Posts: 76
  • Karma: +4/-2
    • View Profile
Re: Guide till en OpenVPN klient mot ovpn.se under pfSense 2.1.5
« Reply #11 on: March 29, 2015, 06:13:31 am »
Hej nialc!

En fråga som du kanske kan svara på när du har möjlighet: När jag tittar i under "Gateway" så står det att min OVPN-gateway är "Offline". Är det korrekt? Har du det också? Allt verkar fungera normalt.

Offline nialc

  • Newbie
  • *
  • Posts: 16
  • Karma: +8/-0
    • View Profile
Re: Guide till en OpenVPN klient mot ovpn.se under pfSense 2.1.5
« Reply #12 on: March 29, 2015, 06:33:15 am »
Hej nialc!

En fråga som du kanske kan svara på när du har möjlighet: När jag tittar i under "Gateway" så står det att min OVPN-gateway är "Offline". Är det korrekt? Har du det också? Allt verkar fungera normalt.

Det stämmer, jag kan inte svara på om det är helt "korrekt" ;)  Men det är iaf som det skall.

Offline Ip Man

  • Jr. Member
  • **
  • Posts: 76
  • Karma: +4/-2
    • View Profile
Re: Guide till en OpenVPN klient mot ovpn.se under pfSense 2.1.5
« Reply #13 on: March 29, 2015, 06:37:54 am »
Hej nialc!

En fråga som du kanske kan svara på när du har möjlighet: När jag tittar i under "Gateway" så står det att min OVPN-gateway är "Offline". Är det korrekt? Har du det också? Allt verkar fungera normalt.

Det stämmer, jag kan inte svara på om det är helt "korrekt" ;)  Men det är iaf som det skall.

Tack, då är jag inte ensam i alla fall  :)

Kul att det är lite fart i det Svenska forumet på pfSense. Det såg rätt dött ut ett tag.

Offline OVPN

  • Newbie
  • *
  • Posts: 1
  • Karma: +0/-0
    • View Profile
Re: Guide till en OpenVPN klient mot ovpn.se under pfSense 2.1.5
« Reply #14 on: April 01, 2015, 07:10:50 am »
Superbra guide!

En liten korrigering som behöver göras är DNS-servrarna som har ändrats. De nya IP-adresserna är:
217.115.47.140
46.227.67.160

För att finna instruktioner om man har en DNS-läcka eller inte kan man kolla i vårt FAQ: https://www.ovpn.se/faq/felsokning/hur-taepper-jag-igen-en-dns-laecka/

I Adanced har du angett att man ska ansluta till VPN02 men i Server host or address har du angivet vår pool-adress som väljer VPN-servrar slumpmässigt. Du bör alltså kunna ta bort VPN02 från Adanced-delen.

Vänligen,
David