OpenVPN del 4

Tidigare delar av denna guide
Del 1
Del 2
Del 3

Hittils har vi installerat och configurerar OpenVPN server, skapat Certificate Authority, och skapat serverns egena certificat och nyckel. Vi använder serverns CA för att skapa certificat och nycklar för varje client som kommer att connecta till denna VPN.

Bygga nycklar och certifikat

Det är en utmärkt lösning att varje client som ansluter till din vpn har sin egen unika certifikat och nyckel.

Det går dock att generera ett generellt certificat och nyckel som kan användas av alla clienter.

OBS: Som default som är OpenVPN inställt på att inte tillåta att clienter använder sig av samma certificate och nyckel ansluter sig samtidigt.

För mer info titta under duplicate-cn

/etc/openvpn/server.conf

För att skapa autheriserande information för alla enheter som ska koppla upp sig mot din VPN så ska du genomföra följande steg för varje enhet men kom ihåg att ändra namnet för varje enhet, detta gör det enklare att hålla koll på dom samt att du kan stänga av dom från din VPN om du skulle vilja det.

Jag kommer att använda mig av client som ett exempel på en enhets namn.

Vi gjorde de förrut med serverns nyckel, nu ska vi bygga en för client.
Även denna gången ska vi använda oss av

/etc/openvpn/easy-rsa.

./build-key client1

Även denna gången kommer du bli frågad om du vill ändra eller bekräfta Distinguished Name variablerna och dom två frågorna som ska lämnas tomma. Bara tryck på Enter för att gå vidare.

Please enter the following ’extra’ attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:

Sign the certificate? [y/n]
1 out of 1 certificate requests certified, commit? [y/n]

Dom två första ska som vanligt lämnas tomma, dom sista två ska besvaras med ett Y för att godkänna dom.

Följande text kommer då skrivas på skärmen för att visa att du lyckats.

Write out database with 1 new entries.
Data Base Updated

Nu ska vi kopiera den nyckel som generats av Easy-RSA från den mapp den ligger i till den vi skapade tidigare.
Vi ska även ändra filändelsen från .conf till .opvn

cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf /etc/openvpn/easy-rsa/keys/client.ovpn

Detta är en sektion som du kan upprepa för varje client och då ange ett annat namn för varje enhet istället för client.

Vi behöver också ändra i client filen för att lägga in IP adressen av våran OpenVPN server så den vet vart den ska connecta. Öppna filen client.ovpn genom att använda nano eller den text editor du har intstallerat.

nano /etc/openvpn/easy-rsa/keys/client.ovpn

Som första steg ska vi ändra my-server-1 till your_server_ip. Du hittar det på raden som börjar med remote.

/etc/openvpn/easy-rsa/keys/client.ovpn
# The hostname/IP and port of the server.
# You can have multiple remote entries
# to load balance between the servers.
remote your_server_ip 1194

Nu ska vi leta efter den text som syns nedan och då ta bort kommentaren för user nobody och group nobody precis som vi gjorde från början.

/etc/openvpn/easy-rsa/keys/client.ovpn
# Downgrade privileges after initialization (non-Windows only)
user nobody
group no group
Transferring Certificates and Keys to Client Devices

Som du kanske minns så skapade vi tidigare certificat och nycklar för clienten och att dom finns på din OpenVPN server i mappen

/etc/openvpn/easy-rsa/keys

För varje enhet så måste vi överföra certificatet och nyckeln och en profile template fil till en mapp på den enhet som ska använda din VPN tjänst.

I detta exemplet så användes client som en enhet och det krävs då att certificatet och nyckeln som finns på servern

/etc/openvpn/easy-rsa/keys/client1.crt
/etc/openvpn/easy-rsa/keys/client1.key

Överförs till enheten.

Filerna ca.crt och client.ovpn är samma för alla enheter, ladda ner dessa två filer också ca.crt ligger dock i en annan mapp än dom andra

/etc/openvpn/easy-rsa/keys/client.ovpn
/etc/openvpn/ca.crt

Hur du överför dessa filer är upp till dig och den enhet du använder dig av. Men du ska använda dig av SFTP (SSH file transfer protocol) eller SCP (Secure Copy). Detta kommer att skicka dina filer över en säker krypterad anslutning.

När du är klar så ska du ha dessa fyra filer på din client.

`client1.crt`
`client1.key`
client.ovpn
ca.crt

Det finns många olika metoder för att handskars med clientens filer men det är allra enklast att använda en unified profile. Detta genom att skapa och modifiera client.ovpn template filen för att includera serverns Certificate Authority (CA), och clientens certificat och dess nyckel. När du väl kopplat ihop detta så behövs enbart client.ovpn som behöver importeras in till clientens OpenVPN application.

Nedanför finns tre rader som kommer att behöva kommenteras bort så att vi kan includera certificat och nyckel direkt till the client.ovpn file. Det kommer se ut så här när du är klar.

/etc/openvpn/easy-rsa/keys/client.ovpn
# SSL/TLS parms.
# . . .
;ca ca.crt
;cert client.crt
;key client.key

Spara ändringarna och stäng filen.

Först ska vi lägga in Certificate Authority (CA)

echo ’’ >> /etc/openvpn/easy-rsa/keys/client.ovpn
cat /etc/openvpn/ca.crt >> /etc/openvpn/easy-rsa/keys/client.ovpn
echo ’
’ >> /etc/openvpn/easy-rsa/keys/client.ovpn

Sen ska vi lägga in certificaten.

echo ’’ >> /etc/openvpn/easy-rsa/keys/client.ovpn
cat /etc/openvpn/easy-rsa/keys/client1.crt >> /etc/openvpn/easy-rsa/keys/client.ovpn
echo ’
’ >> /etc/openvpn/easy-rsa/keys/client.ovpn

Som tredje och sista steg ska vi lägga in nycklarna.

echo ’’ >> /etc/openvpn/easy-rsa/keys/client.ovpn
cat /etc/openvpn/easy-rsa/keys/client1.key >> /etc/openvpn/easy-rsa/keys/client.ovpn
echo ’
’ >> /etc/openvpn/easy-rsa/keys/client.ovpn

Vi har nu en gemensam client profile som du med hjälp av ditt ftp program kan ladda upp client.opvn filen till ditt nya system.

Beroende på vilken platform du använder så finns det många användarvänliga applicationer för att connecta till en OpenVPN server.

Så där, om du har följt denna guide hela vägen och inte fått några problem så ska du nu ha en fungerande OpenVPN server, grattulerar 😀

För att kontrollera att den verkligen funkar, gå in någon sida som visar ditt ip, slå sedan på eller av OpenVPN och se hur ditt ip ändras.

Tidigare delar av denna guide
Del 1
Del 2
Del 3

Bli först med att kommentera

Lämna ett svar