VPN-Tunnel mobil und Router (DD-WRT,Openwrt,Freifunk) Für alle

Transcription

VPN-Tunnel mobil und Router (DD-WRT,Openwrt,Freifunk) Für alle
VPN-Tunnel mobil und Router (DD-WRT,Openwrt,Freifunk)
Für alle die ein solches System, mit der o.g. Router-Firmware laufen haben.
Hier die Anleitung wie man VPN-Tunnel aufbauen kann, um von unterwegs auf das
Heimnetz zugreifen kann, per DFÜ oder Internet-Cafe.
Teil I:
Erstellung der Schlüssel
Teil II:
Einrichten des Routers
Teil III:
Einrichten des Windows-Clients und Verbindungsaufbau.
Zusammenfassung aus How To – Aufbau einer Wireless Richtfunkstreckemit Hilfe von
Linksys und DD-WRT
http://www.OpenVPN.net
Installation auf einer Windows Maschine.
Eine ganz normale, Standardinstallatation durchführen.
Nun wird es spannend, erstellen der Authentifizierungs-Zertifikate für den Server(Router) &
Client.
Als erstes werden alle benötigten Zertifikate erstellt, das wird in einer Dos-Box auf dem
Windows-System gemacht (wenn vorhanden ).
STEP I
Vorbereiten und Grundeinstellungen:
Code:
cd \programme\openvpn\easy-rsa
init-config.bat
Anpassen der neu erstellten "openvpn\easy-rsa\vars.bat"
den Key Dir Path überprüfen und ggf.anpassen (ich habe ihn bei mir geändert, weil ich es
nicht mag, wenn sich solche Daten in den Programmfolder verlieren.)
die Key Size auf 2048 erhöhen
und die KEY_COUNTRY, KEY_PROVINCE, KEY_CITY, KEY_ORG, KEY_EMAIL
anpassen.
Code:
@echo off
Edit this variable to point to
rem the openssl.cnf file included
rem with easy-rsa.
set HOME=%ProgramFiles%\OpenVPN\easy-rsa
set KEY_CONFIG=openssl.cnf
rem Edit this variable to point to
rem your soon-to-be-created key
rem directory.
rem
rem WARNING: clean-all will do
rem a rm -rf on this directory
rem so make sure you define
rem it correctly!
rem *********************************************
set KEY_DIR=c:\openvpn-keys
rem *********************************************
rem Increase this to 2048 if you
rem are paranoid. This will slow
rem down TLS negotiation performance
rem as well as the one-time DH parms
rem generation process.
rem *********************************************
set KEY_SIZE=2048
rem *********************************************
rem These are the default values for fields
rem which will be placed in the certificate.
rem Change these to reflect your site.
rem Don't leave any of these parms blank.
rem *********************************************
set KEY_COUNTRY=DE
set KEY_PROVINCE=NRW
set KEY_CITY=Duesseldorf
set KEY_ORG=Homenet
set [email protected]
rem *********************************************
Soweit die Grundeinstellungen, abschliessend noch
Code:
vars.bat
clean-all.bat
build-ca.bat
und die Einstellungen sind abgeschlossen.
Erstellen des CA (Master Zertifikat):
Code:
build-ca.bat
Folgende Eingaben haben schon die Vorgaben, aus der vorher erstellten "vars.bat"
Code:
Country Name (2 letter code) [DE]:
State or Province Name (full name) [NRW]:
Locality Name (eg, city) [Duesseldorf]:
Organization Name (eg, company) [Homenet]:
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) []:CA
Email Address [[email protected]]:
Common Name:
Diesem Feld muss der Wert "CA" zugewiesen werden.
Nicht unter den Vorgaben, sondern bei der Erstellung der Keys.
Damit ist das Master-Zertifikat erstellt.
Erstellen des Server-Zertifikat:
Code:
build-key-server.bat WLan-Router.
Code:
Common Name (eg, your name or your server's hostname) []:WLan-Router
.
Sign the certificate? [y/n]:y
1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated
Auch hier muss das Feld "Common Name" ausgefüllt werden. Dann folgen noch Felder die
einfach mit Return oder zum Schluss, mit "y" bestätigt werden.
Und schon haben wir den Key für den Server(Router) erstellt.
Erstellen der Client-Zertifikate:
Code:
build-key-server.bat client01
und/oder
build-key-server.bat client02
und/oder
build-key-server.bat rainer
und/oder
build-key-server.bat buero
Code:
Country Name (2 letter code) [DE]:
State or Province Name (full name) [NRW]:
Locality Name (eg, city) [Duesseldorf]:
Organization Name (eg, company) [Homenet]:
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) []:CLIENT01
Email Address [[email protected]]:
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
Using configuration from openssl.cnf
Loading 'screen' into random state - done
DEBUG[load_index]: unique_subject = "yes"
Check that the request matches the signature
Signature ok
The Subject's Distinguished Name is as follows
countryName
:PRINTABLE:'DE'
stateOrProvinceName :PRINTABLE:'NRW'
localityName
:PRINTABLE:'Duesseldorf'
organizationName :PRINTABLE:'Homenet'
commonName
:PRINTABLE:'CLIENT01'
emailAddress
:IA5STRING:'[email protected]'
Certificate is to be certified until Jan 15 20:15:48 2016 GMT (3650 days)
Sign the certificate? [y/n]:y
Auch hier muss jeweils der richtige "Common Name" gesetzt werden, den der beim Starten
der Batch mit gegeben wurde.
Erstellen der Diffie Hellman Parametern:
Code:
build-dh.bat
Das dauert ein wenig.
Erstellen des gemeinsamen Key:
Code:
openvpn --genkey --secret c:\openvpn-keys\ta.key
Diese nun erstellen Key's und Zertifikate niemals Freigeben, oder an Dritte weitergeben. Der,
der den Key oder das Zertifikat hat, kann in das eigene private Netz.
STEP II
Die Installation auf dem Router.
Mit dem Router vebinden via Telnet/SSH, im / folgende Verzeichnisstruktur anlegen.
/
.jffs/
......etc/
...........openvpn/
...........config
Möglicherweise muss vorher erst noch auf dem Router die JFFS Funktion aktiviert werden.
Dabei kann auch die FW-Funktion überprüft und ggf. abgeschaltet werden.
Die Zertifikate und Keys können dann mittels einem SCP Program übertragen werden.
In den Folder /jffs/etc/openvpn kommen die folgenden erstellten Dateien:
Code:
ca.crt
dh2048.pem
WLan-Router.crt
WLan-Router.key
ta.key
Fehlt noch die OpenVPN-Config.
Mit "vi" oder einem anderen Editor folgende Server.conf erstellen..
Code:
tls-server
dev tun0
proto udp
port 1194
ifconfig 192.168.100.1 192.168.100.2
dh /jffs/etc/openvpn/dh2048.pem
ca /jffs/etc/openvpn/ca.crt
cert /jffs/etc/openvpn/wlan-router.crt
key /jffs/etc/openvpn/wlan-router.key
tls-auth /jffs/etc/openvpn/ta.key 0
auth SHA1
cipher AES-128-CBC
persist-key
persist-tun
keepalive 10 120
reneg-sec 1800
comp-lzo
verb 3
status /jffs/etc/openvpn/openvpn-status.log
log /jffs/etc/openvpn/openvpn.log
log-append /jffs/etc/openvpn/openvpn.log
Speichern der Server.conf und starten von OpenVPN:
Code:
openvpn --config /jffs/etc/openvpn/server.conf &
Überprüfen ob OpenVPN läuft:
Code:
ps -ax | grep openvpn
Logfile anzeigen:
Code:
tail -f /jffs/etc/openvpn/openvpn.log
Step III
Einrichten des Client:
Erstellen der Datei "C:\Programme\OpenVPN\config\client.ovpn“
Code:
tls-client
ns-cert-type server
remote dyndnsname.dyndns.org 1194
dev tun0
proto udp
ifconfig 192.168.100.2 192.168.100.1
route 192.168.1.0 255.255.255.0
dh c:\\programme\\openvpn\\keys\\dh2048.pem
ca c:\\programme\\openvpn\\keys\\ca.crt
cert c:\\programme\\openvpn\\keys\\client1.crt
key c:\\programme\\openvpn\\keys\\client1.key
tls-auth c:\\programme\\openvpn\\keys\\ta.key 1
auth SHA1
cipher AES-128-CBC
persist-key
persist-tun
keepalive 10 120
comp-lzo
verb 3
resolv-retry infinite
float
status c:\\programme\\openvpn\\log\\openvpn-status.log
log c:\\programme\\openvpn\\log\\openvpn.log
log-append c:\\programme\\openvpn\\log\\openvpn.log
DFÜ-Verbindung / Inet-Cafe Verbindung starten, und über das kleine Tray-Icon den VPNTunnel aufbauen.
Logfiles überprüfen, ob die Verbindung zustande gekommen ist.
"cmd" öffnen und eine IP-Adresse aus dem eigenen privaten Netz anpingen oder einen Dienst
oder Webserver aus dem Netz aufrufen.
Vom Netz aus ist der Client über die IP 192.168.100.2 ereichbar.
Das zu dem Thema VPN-Tunnel von einem mobilen Client aus, auf das eigene private
Hausnetz.

Documents pareils