Loreas
Active Member
Inhalt:
1. OpenVPN Setup
2. Durchleiten einer einzelnen IP ohne OpenVPN
3. USB-Stick als Cert-Speicher verwenden
4. Einkaufs-Guide
5. Sonstiges...
Einleitend zum Thema dd-wrt will ich sagen, dass man unter ftp://ftp.dd-wrt.com/betas/ die aktuellste Firmware bekommt. Es gibt auch ein dd-wrt Wiki und eine dd-wrt Datenbank. Beide sind leider total veraltet.
Wenn ihr die aktuellste dd-wrt Version haben wollt, bitte den ftp-Link verwenden.
1. Download the Config-Files for Android/iOS
2. Everything we need is in the .ovpn file. Choose your server.
3. Go to the dd-wrt Webinerface:
Setup
Save Settings
Go to
Administation
If you have tun0, you have to edit the firewall command down under.
In my case i have tun1.
Administration
2. Das Durchleiten bestimmter IPs ohne VPN
Dort wo die "Additional config" eingegeben wird ist ein Kästchen darunter, wo "Policy Based Routing" bzw. "Richtlinienbasiertes Routen" steht.
View attachment 153
Dieses Kästchen kann man mit allen internen IPs füttern, die sich über VPN verbinden sollen. (eine IP pro Zeile)
IPs, die ohne VPN rausgehen sollen, müsst ihr natürlich in der Firewall auch eintragen.
3. USB-Speicher als Ablage für Zertifikate
Ich will hier mal einen bequemeren Weg vorstellen Zertifikate auf dem Router zu hinterlegen. Allerdings funktioniert das nur auf dd-wrt-Versionen, die USB-Port haben.
Am PC:
(Achtung: den 1er nach dem ..._ta.key nicht vergessen)
FERTIG! Nun könnt ihr bequem zwischen den Servern herum wechseln, ohne aufwendig alle Certs etc. rauszusuchen.
4. Einkaufsguide
Wenn der Router wirklich mit vernünftigem Speed über OpenVPN durchleiten soll, benötigt es einen Dualcore. Natürlich geht es mit nem Singlecore auch, aber langsamer.
Zum Glück sind 2015 hier (endlich) einige Modelle auf den Markt gekommen.
Beispiele hierfür wären:
Wenn euch dd-wrt nicht so gefällt, das kann ja vorkommen, dann achtet auch darauf, welche anderen Custom Firmwares es für das Gerät der Wahl gibt. z.B. Geht nicht bei allen OpenWRT, Merlin nur bei Asus, R7000 taugt für TomatoUSB Mod, etc.
2016 werden sicher noch weitere Alternativen kommen. Man darf gespannt sein, welche CPUs darin noch verbaut werden.
Als Referenz: Bei 2x1GHz schafft man ca. 20-24 MBit/s
Don't forget to keep your Router up to date!
Here you'll get your updated firmware:
ftp://ftp.dd-wrt.com/betas/
So, ich hoffe es ist jetzt mal übersichtlich genug zusammengefasst.
Vorteil wenn man über Router verbindet:
- DNS-Leaks sind Geschichte
- ALLES was im Netzwerk auf Internet zugreift geht über OpenVPN raus
Nachteil:
- Bei manchen Banken sollte man aufpassen, da die IP-Adressen sperren könnten wenn man aus dem Ausland zugreift
PS: Danke @Gerd, für deinen Tipp mit der Additional Config und den Fixed Parameters in dd-wrt
http://www.dd-wrt.com/wiki/index.php/OpenVPN#Fixed_Parameters
Danke @JackCarver für die iptables Erklärungen
Bitte eine Nachricht schreiben wenn etwas unklar ist oder falsch.
Dieser Beitrag wird von mir aktuell gehalten.
1. OpenVPN Setup
2. Durchleiten einer einzelnen IP ohne OpenVPN
3. USB-Stick als Cert-Speicher verwenden
4. Einkaufs-Guide
5. Sonstiges...
Einleitend zum Thema dd-wrt will ich sagen, dass man unter ftp://ftp.dd-wrt.com/betas/ die aktuellste Firmware bekommt. Es gibt auch ein dd-wrt Wiki und eine dd-wrt Datenbank. Beide sind leider total veraltet.
Wenn ihr die aktuellste dd-wrt Version haben wollt, bitte den ftp-Link verwenden.
1. OpenVPN Setup
1. Download the Config-Files for Android/iOS
2. Everything we need is in the .ovpn file. Choose your server.
3. Go to the dd-wrt Webinerface:
Setup
Basic Setup
SetupWAN-Connection Type
Automatic Setup - DHCP
Router IP
Lokal IP: 192.168.1.1
Network Mask: 255.255.255.0
Gateway: 0.0.0.0
Lokal DNS: 0.0.0.0
Network Address Server Settings (DHCP)
DHCP Type: DHCP Server
DHCP Server: activate
For static DNS 1/2/3 choose one of those DNS provided by OpenNIC https://www.opennicproject.org/
and put them in into Static DNS 1, 2 & 3
Not recommended but can be also a Google DNS 8.8.8.8 & 8.8.4.4
untick Use DNSMasq for DHC
untick Use DNSMasq for DNS
untick DHCP-Authoritative
Clock Setup
NTP-Client: activate
Time Zone: "your time zone"
Server-IP/Name: de.pool.ntp.org
and SaveAutomatic Setup - DHCP
Router IP
Lokal IP: 192.168.1.1
Network Mask: 255.255.255.0
Gateway: 0.0.0.0
Lokal DNS: 0.0.0.0
Network Address Server Settings (DHCP)
DHCP Type: DHCP Server
DHCP Server: activate
For static DNS 1/2/3 choose one of those DNS provided by OpenNIC https://www.opennicproject.org/
and put them in into Static DNS 1, 2 & 3
Not recommended but can be also a Google DNS 8.8.8.8 & 8.8.4.4
untick Use DNSMasq for DHC
untick Use DNSMasq for DNS
untick DHCP-Authoritative
Clock Setup
NTP-Client: activate
Time Zone: "your time zone"
Server-IP/Name: de.pool.ntp.org
IPv6
ServicesIPv6-Support
IPv6: enable
Radvd: enable
and SaveIPv6: enable
Radvd: enable
VPN
copy the content
OpenVPN-Client:
Start OpenVPN -> Enable
Server IP/Name: xxx.perfect-privacy.com
Port: 1149 (UDP)
Tunnel Device: TUN
Tunnel Protocol: UDP
Encryption Cipher: AES-256 CBC
Hash Algorithm: SHA512
User Pass Authentication -> Enable
Username: your username
Password: your password
Advanced Options -> Enable
TLS Cipher: None (will be edited in "Additional Config")
LZO Compression: Adaptive
NAT -> enable
MTU: 1500
UDP Fragment: 1300
Tunnel UDP MSS-Fix: Disable
nsCertType verification: enable
Open the .ovpn-File with a text-editorStart OpenVPN -> Enable
Server IP/Name: xxx.perfect-privacy.com
Port: 1149 (UDP)
Tunnel Device: TUN
Tunnel Protocol: UDP
Encryption Cipher: AES-256 CBC
Hash Algorithm: SHA512
User Pass Authentication -> Enable
Username: your username
Password: your password
Advanced Options -> Enable
TLS Cipher: None (will be edited in "Additional Config")
LZO Compression: Adaptive
NAT -> enable
MTU: 1500
UDP Fragment: 1300
Tunnel UDP MSS-Fix: Disable
nsCertType verification: enable
copy the content
TLS Auth Key (in the .ovpn-file: <tls-auth> )
#
# 2048 bit OpenVPN static key
#
-----BEGIN OpenVPN Static key V1-----
-----END OpenVPN Static key V1-----
Additional Config:# 2048 bit OpenVPN static key
#
-----BEGIN OpenVPN Static key V1-----
-----END OpenVPN Static key V1-----
Code:
redirect-gateway def1
reneg-sec 86400
mssfix
float
persist-remote-ip
route-method exe
tls-cipher DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-CAMELLIA256-SHA:DHE-RSA-AES256-SHA:DHE-RSA-CAMELLIA128-SHA:DHE-RSA-AES128-SHA
route-delay 2
tls-timeout 5
hand-window 120
inactive 604800
ping 5
ping-restart 90
replay-window 512 60
mute-replay-warnings
CA Cert (in the .ovpn-file: <ca> )
copy from .ovpn-file
-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----
Public Client Cert (in the .ovpn-file: <cert> )-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----
copy from .ovpn-file
-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----
Private Client Key (in the .ovpn-file: <key> )-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----
copy from .ovpn-file
-----BEGIN RSA PRIVATE KEY-----
-----END RSA PRIVATE KEY-----
-----BEGIN RSA PRIVATE KEY-----
-----END RSA PRIVATE KEY-----
Go to
Administation
Commands
First of all run that command in the shell:
Code:
ifconfig
In my case i have tun1.
Paste this into your Command Shell:
Code:
iptables -P FORWARD DROP
iptables -I FORWARD -i br0 -o tun1 -j ACCEPT
iptables -I FORWARD -i tun1 -o br0 -j ACCEPT
iptables -I FORWARD -i br0 -o vlan2 -j DROP
iptables -I INPUT -i tun1 -j DROP
iptables -t nat -A POSTROUTING -o tun1 -j MASQUERADE
and press the "Save Firewall" button.
Paste this into your Command Shell:
Paste this into your Command Shell:
Code:
#!/bin/sh
/usr/sbin/openvpn --config /tmp/openvpncl/openvpn.conf --route-up /tmp/openvpncl/route-up.sh --down-pre /tmp/openvpncl/route-down.sh --daemon
and press the "Save Startup Script" button.
Finally go to:
Administration
Management
and press the "Reboot Router" button.
Finished...and press the "Reboot Router" button.
2. Das Durchleiten bestimmter IPs ohne VPN
Dort wo die "Additional config" eingegeben wird ist ein Kästchen darunter, wo "Policy Based Routing" bzw. "Richtlinienbasiertes Routen" steht.
View attachment 153
Dieses Kästchen kann man mit allen internen IPs füttern, die sich über VPN verbinden sollen. (eine IP pro Zeile)
IPs, die ohne VPN rausgehen sollen, müsst ihr natürlich in der Firewall auch eintragen.
Code:
iptables -P FORWARD DROP
iptables -I FORWARD -i br0 -o tun1 -j ACCEPT
iptables -I FORWARD -i tun1 -o br0 -j ACCEPT
iptables -I FORWARD -i br0 -o vlan2 -j DROP
iptables -I FORWARD -i br0 -s 192.168.1.xyz -j ACCEPT
iptables -I FORWARD -o br0 -d 192.168.1.xyz -j ACCEPT
iptables -I INPUT -i tun1 -j DROP
iptables -t nat -A POSTROUTING -o tun1 -j MASQUERADE
Tipp: Wenn man über einen USB-Steckplatz am Router verfügt, kann man diesen als Speicher nutzen.Vorausgesetzt eure dd-wrt Version bzw. Version für den Router verfügt über USB-Speicherunterstützung könnt ihr die certs für die Server dort ablegen.
3. USB-Speicher als Ablage für Zertifikate
Ich will hier mal einen bequemeren Weg vorstellen Zertifikate auf dem Router zu hinterlegen. Allerdings funktioniert das nur auf dd-wrt-Versionen, die USB-Port haben.
Am PC:
- Zuerst nehmt einen beliebig großen USB-Stick und legt darauf 2 Partitionen an. Die erste Partition könnt ihr als swap-Speicher (ca.512 MB), den Rest könnt ihr als ext3 formatieren und als kleinen NAS-Speicher verwenden.
- Die ext3-Partition muss mit "jffs" benannt werden. Denn nur so wird der USB-Stick automatisch gemountet.
- Weiter unten m Fenster "Services -> USB" seht ihr einen kleinen Log wen der USB-Stick angesteckt wird. Hier sucht ihr die UUID-Nummer der jffs-Partition raus und kopiert diese in das Kästchen "Diese Partition als /jffs einbinden"
- Um jetzt auf dem USB-Stick, der jetzt am Router steckt, die Config abzulegen, muss man mit der Router-IP zB. 192.168.1.1/jffs verbinden.
- Legt dort den Ordner "openvpn" und einen Unterordner "config" an. (Ordnung muss sein...
)
- Der USB-Stick verhält sich jetzt wie ein normaler NAS-Speicher. Kopiert die .crt und .key Dateien auf den USB-Stick in den einen neu angelegten Ordner.
- Unter Services -> VPN könnt ihr nun in der OpenVPN-Konfiguration diese Pfade angeben, die zu den Schlüssel führen.
Code:
ca /jffs/openvpn/config/ca.crt
cert /jffs/openvpn/config/xxx_cl.crt
key /jffs/openvpn/config/xxx_cl.key
tls-auth /jffs/openvpn/config/xxx_ta.key 1
FERTIG! Nun könnt ihr bequem zwischen den Servern herum wechseln, ohne aufwendig alle Certs etc. rauszusuchen.
Wenn der Router wirklich mit vernünftigem Speed über OpenVPN durchleiten soll, benötigt es einen Dualcore. Natürlich geht es mit nem Singlecore auch, aber langsamer.
Zum Glück sind 2015 hier (endlich) einige Modelle auf den Markt gekommen.
Beispiele hierfür wären:
- Netgear R6300 V2 @ 2x800 MHz um ca. 120€
- Asus RT-AC56U @ 2x800 MHz um ca. 100€
- Netgear R7000 @ 2x1 GHz um ca. 140€
- Asus RT-AC87U @ 2x1 GHz um ca. 200€
- Linksys WRT1900AC @ 2x1,2 GHz um ca. 220€
- Linksys WRT1900ACS @ 2x1,6 GHz um ca. 230€
Wenn euch dd-wrt nicht so gefällt, das kann ja vorkommen, dann achtet auch darauf, welche anderen Custom Firmwares es für das Gerät der Wahl gibt. z.B. Geht nicht bei allen OpenWRT, Merlin nur bei Asus, R7000 taugt für TomatoUSB Mod, etc.
2016 werden sicher noch weitere Alternativen kommen. Man darf gespannt sein, welche CPUs darin noch verbaut werden.
Als Referenz: Bei 2x1GHz schafft man ca. 20-24 MBit/s
5. SonstigesDon't forget to keep your Router up to date!
Here you'll get your updated firmware:
ftp://ftp.dd-wrt.com/betas/
So, ich hoffe es ist jetzt mal übersichtlich genug zusammengefasst.
Vorteil wenn man über Router verbindet:
- DNS-Leaks sind Geschichte
- ALLES was im Netzwerk auf Internet zugreift geht über OpenVPN raus
Nachteil:
- Bei manchen Banken sollte man aufpassen, da die IP-Adressen sperren könnten wenn man aus dem Ausland zugreift
PS: Danke @Gerd, für deinen Tipp mit der Additional Config und den Fixed Parameters in dd-wrt
http://www.dd-wrt.com/wiki/index.php/OpenVPN#Fixed_Parameters
Danke @JackCarver für die iptables Erklärungen
Bitte eine Nachricht schreiben wenn etwas unklar ist oder falsch.
Dieser Beitrag wird von mir aktuell gehalten.
Last edited: