Hoe OpenVPN op Debian te installeren en configureren

OpenVPN is ongetwijfeld de beste manier om veilig verbinding te maken met een netwerk via internet, OpenVPN is een open source VPN-bron waarmee wij als gebruikers ons browsen kunnen maskeren om te voorkomen dat we slachtoffer worden op het netwerk.

Dit zijn zeer belangrijke aspecten op het beveiligingsniveau waarmee we rekening moeten houden en deze keer gaan we het proces analyseren van: OpenVPN-configuratie in een omgeving Debian 8.

OpmerkingVoordat u met het installatieproces begint, is het belangrijk om aan bepaalde vereisten te voldoen, dit zijn:

  • Root gebruiker.
  • Droplet Debian 8, we hebben momenteel Debian 8.1

1. Hoe OpenVPN te installeren


De eerste stap die we zullen nemen is: update alle pakketten in de omgeving gebruik commando:
 apt-get update

Zodra de pakketten zijn gedownload en bijgewerkt laten we OpenVPN installeren met easy-RSA voor encryptieproblemen. We gaan het volgende commando uitvoeren:

 apt-get install openvpn easy-rsa

Vervolgens we moeten onze OpenVPN configureren, worden de OpenVPN-configuratiebestanden opgeslagen in het volgende pad: / etc / openvpn en we moeten deze toevoegen aan onze configuratie, we gaan het volgende commando gebruiken:

 gunzip -c /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz> /etc/openvpn/server.conf
Zodra we deze bestanden in het geselecteerde pad hebben uitgepakt, gaan we ze openen met behulp van de nano-editor, we zullen de volgende opdracht uitvoeren:
 nano /etc/openvpn/server.conf
We zien het volgende venster:

Als we er zijn we moeten enkele wijzigingen aanbrengen in het bestand, deze wijzigingen zijn in principe:

  • De server beveiligen met versleuteling op hoog niveau
  • Webverkeer naar de bestemming toestaan
  • Voorkom dat DNS-verzoeken buiten de VPN-verbinding worden gefilterd
  • Installatierechten

Wij gaan dubbele lengte van de RSA-sleutel die wordt gebruikt wanneer de sleutels van zowel de server als de client worden gegenereerd, hiervoor gaan we in het bestand zoeken naar de volgende waarden en gaan we de waarde dh1024.pem wijzigen door de waarde dh2048.pem:

 # Diffie Hellman-parameters. # Genereer uw eigen met: # openssl dhparam -out dh1024.pem 1024 # Vervang 2048 door 1024 als u # 2048 bit-sleutels gebruikt. dh dh1024.pem

Laten we nu zorg ervoor dat het verkeer correct wordt omgeleid naar de bestemming, laten we push "redirect-gateway def1 bypass-dhcp" verwijderen door de; aan het begin ervan in het server.conf-bestand te verwijderen:

 # Indien ingeschakeld, zal deze richtlijn # alle clients configureren om hun standaard # netwerkgateway om te leiden via de VPN, waardoor # al het IP-verkeer zoals surfen op het web en # en DNS-lookups via de VPN gaan # (de OpenVPN-servermachine moet mogelijk NAT # of bridge de TUN / TAP-interface naar internet # in ***** om dit goed te laten werken). ; druk op "redirect-gateway def1 bypass-dhcp"

De volgende stap zal zijn vertel de server om OpenDNS te gebruiken voor DNS-naamomzetting Zolang het mogelijk is, voorkomen we op deze manier dat DNS-verzoeken buiten de VPN-verbinding komen, moeten we de volgende tekst in ons bestand vinden:

 # Bepaalde Windows-specifieke netwerkinstellingen # kunnen naar clients worden gepusht, zoals DNS # of WINS-serveradressen. VOORZICHTIG: # http://openvpn.net/faq.html#dhcpcaveats # De onderstaande adressen verwijzen naar de openbare # DNS-servers geleverd door opendns.com. ; druk op "dhcp-optie DNS 208.67.222.222"; druk op "dhcp-optie DNS 208.67.220.220"
Daar moeten we de push "dhcp-option DNS 208.67.222.222" uitschakelen en de "dhcp-option DNS 208.67.220.220"-commentaar pushen door de; vanaf het begin.

Eindelijk zullen we machtigingen definiëren In hetzelfde bestand waar we aan werken, plaatsen we de volgende tekst:

 # U kunt dit verwijderen op # niet-Windows-systemen.; gebruiker niemand; groep geen groep
We gaan verder met het verwijderen van het teken; vanaf het begin van de teksten gebruiker niemand Y groep geen groep.

Zoals we weten, wordt OpenVPN standaard uitgevoerd als rootgebruiker, waardoor elke parameter kan worden bewerkt, met de laatste wijziging gaan we deze om veiligheidsredenen beperken tot de niemand-gebruiker en de groep geen groep.
We slaan de wijzigingen op met de toetsencombinatie:

Ctrl + O

En we verlaten de editor met:

Ctrl + X

Nu gaan we pakket doorsturen naar het externe netwerk inschakelen, hiervoor voeren we het volgende commando uit:

 echo 1> / proc / sys / net / ipv4 / ip_forward
We moeten deze verandering permanent maken, niet dat we het elke keer moeten doen als we het systeem starten, om het continu te maken gaan we het systcl-bestand invoeren met behulp van de nano-editor, hiervoor zullen we het volgende uitvoeren:
 nano /etc/sysctl.conf
Het volgende venster wordt weergegeven:

We gaan de volgende regel lokaliseren:

 # Uncommenteer de volgende regel om pakketdoorsturing voor IPv4 in te schakelen # net.ipv4.ip_forward = 1
OpmerkingBedenk dat we de editor-zoekopdracht kunnen gebruiken met de toetsencombinatie:

Ctrl + W

Daar zullen we de opmerking demarkeren net.ipv4.ip_forward = 1 het symbool # verwijderen.

De volgende stap die we moeten nemen is configureren UFW. UFW is een firewallconfiguratie voor ip-tabellen, daarom gaan we enkele aanpassingen maken om de UFW-beveiliging te wijzigen. Als eerste stap gaan we de UFW-pakketten installeren met behulp van de volgende opdracht:

 apt-get install ufw

Nadat de benodigde UFW-pakketten zijn gedownload en geïnstalleerd, gaan we UFW configureren om SSH-verbindingen toe te staan, hiervoor zullen we het volgende uitvoeren:

 ufw ssh . toestaan

In ons geval werken we aan poort 1194 van UDP, we moeten deze poort configureren zodat de communicatie bevredigend is, we zullen het volgende invoeren:

 ufw toestaan ​​1194 / udp
OpmerkingWe kunnen de poorten van onze console zien met het commando lsof -iUDP

Vervolgens gaan we het UFW-configuratiebestand bewerken, hiervoor zullen we met de nano-editor in het volgende pad invoeren:

 nano / etc / standaard / ufw
Het volgende venster wordt geopend:

Daar gaan we enkele wijzigingen aanbrengen, we zullen de volgende regel vinden, waar: we zullen DROP veranderen in ACCEPT.

 DEFAULT_FORWARD_POLICY = "LATEN"
De volgende stap is voeg enkele regels toe in UFW voor de vertaling van de netwerkadressen en het correct maskeren van de IP-adressen van gebruikers die verbinding maken. Laten we het volgende bestand openen met de nano-editor:
 nano /etc/ufw/before.rules
We zullen zien dat het volgende venster wordt weergegeven:

We gaan de volgende tekst toevoegen:

 # START OPENVPN-REGELS # NAT-tabelregels * nat: POSTROUTING ACCEPT [0: 0] # Sta verkeer van OpenVPN-client naar eth0 toe -A POSTROUTING -s 10.8.0.0/8 -o eth0 -j MASQUERADE COMMIT # EINDE OPENVPN-REGELS

Zodra we deze wijzigingen hebben aangebracht, gaan we verder met: inschakelen UFW met behulp van de volgende opdracht:

 ufw inschakelen

Tot controleer de firewallregelsIk gebruik het volgende commando:

 ufw-status 

2. Certificaat van OpenVPN-autoriteit maken


De volgende stap in ons proces is maak het certificaat van autoriteit voor inloggen via OpenVPNLaten we niet vergeten dat OpenVPN deze certificaten gebruikt om het verkeer te versleutelen. OpenVPN ondersteunt bidirectionele certificering, dat wil zeggen dat de client het servercertificaat moet verifiëren en vice versa.
We gaan de scripts kopiëren over easy-RSA met behulp van de volgende opdracht:
 cp -r / usr / share / easy-rsa / / etc / openvpn
Wij gaan maak een map om de sleutels op te slaan, zullen we het volgende commando gebruiken:
 mkdir / etc / openvpn / easy-rsa / toetsen
De volgende stap is certificaatparameters bewerken, zullen we het volgende commando gebruiken:
 nano / etc / openvpn / easy-rsa / vars
Het volgende venster wordt weergegeven:

We gaan de volgende parameters wijzigen volgens onze vereisten:

 export KEY_COUNTRY = "CO" export KEY_PROVINCE = "BO" export KEY_CITY = "Bogota" export KEY_ORG = "Solvetic" export KEY_EMAIL = "[email protected]" export KEY_OU = "Solvetic"

In hetzelfde bestand gaan we de volgende regel bewerken:

 # X509 Onderwerpveld export KEY_NAME = "EasyRSA"
Wij gaan verander de EasyRSA-waarde in de naam van de gewenste server, zullen we de naam Solvetic gebruiken.

Nu gaan we Diffie-Helman-parameters configureren met behulp van een tool die is geïntegreerd met OpenSSL en die dhparam wordt genoemd. We zullen het volgende commando invoeren en uitvoeren:

 openssl dhparam -out /etc/openvpn/dh2048.pem 2048

Zodra het certificaat is gegenereerd, zullen we: verander easy-RSA directory gebruik commando:

 cd / etc / openvpn / easy-rsa
Wij gaan initialiseer de PKI, zullen we het commando gebruiken:
… / Vars

Wij gaan wis de andere toetsen zodat ze de installatie niet hinderen met het commando:

 ./Maak alles schoon
Nu gaan we bouw het certificaat met behulp van de volgende OpenSSL-opdracht:
 ./build-ca

We zullen een reeks vragen kunnen zien die gerelateerd zijn aan de eerder ingevoerde informatie, op deze manier is het certificaat gegenereerd. Vervolgens gaan we hiervoor onze OpenVPN-server starten We zullen het bestand bewerken dat zich in het pad / etc / openvpn / easy-rsa bevindt met behulp van de eerder opgegeven sleutelnaam, in ons geval Solvetic. We gaan het volgende commando uitvoeren:

 ./build-key-server Solvetic

In de onderstaande regels kunnen we de spatie leeg laten en op Enter drukken:

 Vul a.u.b. de volgende 'extra' attributen in die meegestuurd moeten worden met uw certificaataanvraag Een challenge password []: Een optionele bedrijfsnaam []:
Het volgende venster wordt weergegeven waar we de letter y (ja) moeten invoeren om de volgende twee vragen te accepteren: Onderteken het certificaat en verzoek om certificaten.

Laten we nu verplaats zowel certificaten als sleutels naar / etc / openvpn path, zullen we het volgende commando uitvoeren:

 cp /etc/openvpn/easy-rsa/keys/[Solvetic.crt,Solvetic.key,ca.crt} / etc / openvpn
Zodra dit proces is voltooid, zullen we: start de OpenVPN-service gebruik commando:
 service openvpn starten
Tot zie de status we zullen het commando gebruiken:
 service oopenvpn-status

Onze volgende stap is het maken van de certificaten en sleutels voor de clients die verbinding willen maken met de VPN. Idealiter heeft voor de veiligheid elke client die verbinding maakt met de server zijn eigen certificaat en sleutel, deel het nooit, standaard staat OpenVPN geen gelijktijdige verbindingen met hetzelfde certificaat en dezelfde sleutel toe. We gaan de sleutel voor onze klant maken, hiervoor voeren we de volgende opdracht in:

 ./build-key Client_Name, in ons voorbeeld gaan we het volgende commando gebruiken: ./build-key Tests

We vullen de vereiste velden in en dan zullen we kopieer de gegenereerde sleutel naar de easy-RSA directory.

 cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf /etc/openvpn/easy-rsa/keys/client.ovpn.
Laten we nu download de Winscp-tool gratis via onderstaande link. Met deze tool kunnen we via SFTP of FTP verbinding maken met onze Debian-machine om te controleren of de bestanden correct zijn gemaakt. Nadat we het hebben gedownload en uitgevoerd, is dit het venster dat we kunnen zien:

Daar voeren we het IP-adres van de Debian-machine in, onthoud dat het IP gevalideerd kan worden met de opdracht ifconfig, we voeren de inloggegevens in en zodra we op Verbinden klikken, kunnen we het volgende zien:

VERGROTEN

Daar kunnen we aan de rechterkant de respectievelijke bestanden van de sleutels en sleutels zien. Om toegang te krijgen via OpenVPN gaan we de tool downloaden via de volgende link: OpenVPN-versie 2.3.11. Nadat we het hebben gedownload, moeten we rekening houden met het aanbrengen van enkele wijzigingen in de tool, het eerste wat we gaan doen is de sleutelbestanden en sleutels kopiëren in het pad waar OpenVPN gewoonlijk wordt geïnstalleerd:

 C: \ Program Files \ OpenVPN \ config
Later zullen we een bestand maken in Kladblok of de teksteditor die we hebben met de volgende informatie:
 client dev tun proto udp remote 192.168.0.12 1194 key client.key cert client.crt ca ca.crt auth-user-pass persist-key persist-tun comp-lzo werkwoord 3
OpmerkingHet IP-adres is dat van onze Debian-machine en de poort is, zoals we eerder zagen, UDP 1194.
Dit bestand moet worden opgeslagen met de extensie .ovpn.

3. OpenVPN-clienttoegangstest


Laten we OpenVPN uitvoeren en dit zal de omgeving zijn waarin we ons zullen bevinden:

We voeren de inloggegevens van de gebruiker in om verbinding te maken en klik op Oke en we kunnen het volgende zien:

OpmerkingWe maken deze verbinding vanaf een Windows 7-computer.

Nu kunnen we in de meldingsbalk zien dat de verbinding is gelukt en kunnen we het nieuwe IP-adres zien.

Als we met de rechtermuisknop op de tool klikken (pictogram in de meldingsbalk) hebben we de volgende opties:

Van hieruit kunnen wij de taken uitvoeren die wij nodig achten. Bijvoorbeeld, ja we selecteren Status weergeven we zullen het volgende zien:

4. OpenVPN-beveiligingstools']


Het lijdt geen twijfel dat de Surfen op internet kan leiden tot beveiligingsproblemen zoals virussen, diefstal van informatie, spyware, enz., daarom zijn er enkele hulpmiddelen die we kunnen implementeren om de beveiliging op onze machine te verbeteren zodra de OpenVPN.

Laten we praten over Clamav wat een krachtige antivirus is die ons zal helpen de controle te behouden over geïnfecteerde bestanden of processen in onze Debian 8.1. Het is open source-software waarmee we Trojaanse paarden, malware en andere latente bedreigingen op onze computers kunnen detecteren. Het installatieproces is heel eenvoudig, hiervoor zullen we het volgende commando uitvoeren:

 Sudo apt-get install clamav

Later zullen we uitvoeren verse mossel zodat de hele Clamav-database wordt bijgewerkt.
Om een ​​scan op de machine uit te voeren, voeren we de volgende syntaxis in:

 Clamscan -geïnfecteerd -verwijder -recursief / home
Even later zien we een samenvatting van de scantaak:

Een ander hulpmiddel dat we kunnen gebruiken om onze beveiliging te verbeteren, is: Privoxy die werkt als een webproxy en geavanceerde functies bevat om onder meer de privacy te beschermen, cookies te beheren, toegang te regelen en advertenties te verwijderen. Om het op ons Debian 8.1-systeem te installeren, voeren we de volgende opdracht uit:

 Sudo apt-get install privoxy

Onthoud dat als we root-gebruikers zijn, sudo niet nodig is. Nadat alle Privoxy-pakketten zijn gedownload en geïnstalleerd, gaan we enkele parameters in het configuratiebestand wijzigen, hiervoor voeren we de volgende opdracht uit:

 Sudo nano / etc / privoxy / config
Het volgende wordt weergegeven:

Daar moeten we de lijn lokaliseren luister-adres localhost: 8118 en we moeten 2 parameters toevoegen, voeg eerst het # -symbool toe aan het begin van deze regel en voer daaronder de term listen-address ip_of_nour machine: 8118 in, in ons geval is dit:

 luisteradres 192.168.0.10:8118.
Zodra dit is gebeurd, gaan we de service opnieuw starten met:
 sudo /etc/init.d/privoxy herstart

Vervolgens gaan we naar de browser die we in Debian hebben en gaan we verder met het wijzigen van de proxy-parameters, we moeten bevestigen dat het IP degene is die we hebben toegevoegd en dat de poort 8118 is. In ons voorbeeld gebruiken we IceWeasel en moeten we invoeren:

  • voorkeuren
  • Geavanceerd
  • Netto
  • Verbinding instellen
  • Handmatige proxyconfiguratie

Eenmaal geconfigureerd, klikken we op OK. Nu kunnen we zien hoe Privoxy helpt ons met beveiliging:

Er zijn andere tools die ons kunnen helpen de navigatie te verbeteren met behulp van onze OpenVPN, die we kunnen implementeren:

DnsmasqHet biedt ons DNS-services op deze manier gebruiken we alleen de DNS-cache.

HAVPMet deze tool hebben we een proxy met antivirus, het scant al het verkeer op zoek naar virussen of vreemd gedrag.

Zoals we kunnen zien, is het erg belangrijk om maatregelen te nemen die ons helpen de controle over onze navigatie te behouden en heel duidelijk te zijn dat de juiste werking van Debian 8.1

Laten we doorgaan met het verkennen van alle grote voordelen die Debian 8.1 ons biedt en onze omgeving verbeteren, aangezien velen van ons beheerders, coördinatoren of mensen zijn die verantwoordelijk zijn voor het IT-gebied en deze tips ons helpen om de dagelijkse gang van zaken gemakkelijker en met de mogelijkheid aan te gaan om in de toekomst geen kritieke problemen te hebben die een grote hoofdpijn kunnen zijn.

Installeer LAMP op Debian 8

wave wave wave wave wave