Openvpn: Unterschied zwischen den Versionen
Aus Vosp.info
HK (Diskussion | Beiträge) (→Config) |
HK (Diskussion | Beiträge) (→Sternförmiges Setup mit zentralem Server) |
||
Zeile 59: | Zeile 59: | ||
=== Config === | === Config === | ||
==== Server Config ==== | ==== Server Config ==== | ||
− | # Port, default ist 1124 | + | # |
− | port | + | # /etc/openvpn/newvpn.conf |
+ | # Files liegen in /etc/openvpn/newvpn | ||
+ | # und /etc/openvpn/newvpn/ccd-dir | ||
+ | |||
+ | |||
+ | # Port, default ist 1124, alles ist besser als 1124. Minimiert Script-Angriffe. | ||
+ | port <Port des VPN-Servers> | ||
#Protokoll-Typ | #Protokoll-Typ | ||
proto udp | proto udp | ||
Zeile 120: | Zeile 126: | ||
vim <Common Name> | vim <Common Name> | ||
+ | Inhalt der Datei | ||
ifconfig-push 10.8.100.201 255.255.255.0 | ifconfig-push 10.8.100.201 255.255.255.0 | ||
+ | |||
+ | |||
+ | ===== Files in newvpn ===== | ||
+ | ca.crt | ||
+ | dh2048.pem | ||
+ | server.crt | ||
+ | server.key | ||
==== Client Config ==== | ==== Client Config ==== | ||
+ | |||
+ | # | ||
+ | # /etc/openvpn/newvpn.conf | ||
+ | # Files liegen in /etc/openvpn/newvpn | ||
+ | |||
+ | tls-client | ||
+ | |||
+ | remote <IP oder FQDN des VPN-Servers> <Port des VPN-Servers> | ||
+ | proto udp | ||
+ | |||
+ | dev-type tun | ||
+ | dev newvpn | ||
+ | |||
+ | ca newvpn/ca.crt | ||
+ | cert newvpn/client1.crt | ||
+ | key newvpn/client1.key | ||
+ | dh newvpn/dh2048.pem | ||
+ | |||
+ | pull | ||
+ | |||
+ | keepalive 10 120 | ||
+ | |||
+ | comp-lzo | ||
+ | |||
+ | persist-key | ||
+ | persist-tun | ||
+ | |||
+ | verb 3 | ||
+ | |||
+ | ===== Files in newvpn ===== | ||
+ | ca.crt | ||
+ | dh2048.pem | ||
+ | client1.crt | ||
+ | client1.key |
Version vom 24. Februar 2015, 11:09 Uhr
Inhaltsverzeichnis
Einfaches Setup für zwei Maschinen
Auf beiden Maschinen
apt-get install openvpn
Server side
openvpn --genkey --secret secret.key
scp secret.key root@<remote host>
vim /etc/openvpn/simple.conf
dev tun
ifconfig 10.8.0.1 10.8.0.2
secret secret.key
keepalive 10 60
ping-timer-rem
persist-tun
persist-key
user nobody
group nogroup
daemon
Client side
Der <remote.host> muss durch den Clienten aufgelöst werden können.
Entweder per /etc/hosts oder DNS
vim /etc/openvpn/simple.conf
remote <remote.host>
dev tun
ifconfig 10.8.0.2 10.8.0.1
secret secret.key
keepalive 10 60
ping-timer-rem
persist-tun
persist-key
user nobody
group nogroup
daemon
Sternförmiges Setup mit zentralem Server
OpenVPN-Server mit CentOS 7
Installation
OpenVPN befindet sich nicht in den Repos des CentOS-Projektes.
Deshalb müssen Fedora EPEL repos eingebunden werden.
yum install epel-release yum makecache
yum install openvpn -y
Ifconfig wird benötigt, es ist per default nicht installiert.
yum install net-tools -y
Config
Server Config
# # /etc/openvpn/newvpn.conf # Files liegen in /etc/openvpn/newvpn # und /etc/openvpn/newvpn/ccd-dir # Port, default ist 1124, alles ist besser als 1124. Minimiert Script-Angriffe. port <Port des VPN-Servers> #Protokoll-Typ proto udp # Device Typ, möglich sind tun und tap dev-type tun # Devicename dev newvpn # Speicherort der Zertifikate, Schlüssel usw. Pfade sind relativ zum Configfile ca newvpn/ca.crt cert newvpn/server.crt key newvpn/server.key dh newvpn/dh2048.pem mode server tls-server # Topologie des Netzwerkes topology subnet # mit push wird die Topologie dem Clienten mitgeteilt push "topology subnet" # IP des Servers und Netzmaske, ergibt zugleich das Netzwerk ifconfig 10.8.100.10 255.255.255.0 # Range der frei vergebbaren IPs, vergleichbar mit Range aus DHCP ifconfig-pool 10.8.0.11 10.8.0.199 255.255.255.0 # Hier werden die IPs der Clienten hinterlegt, vergleichbar mit # host win01 { hardware ethernet 00:00:00:00:00:00; fixed-address 192.168.0.5; } # Zuweisung erfolgt über den Dateinamen, der der selbe sein muss wie Common Name im Schlüssel des Clienten #Pfade sind relativ zum Configfile client-config-dir newvpn/ccd-dir ifconfig-pool-persist ipp.txt # Dadurch können sich Clienten untereinander verbinden client-to-client keepalive 10 120 # Kommpression der Verbindung comp-lzo # openvpns user-ID user nobody # openvpns group-ID group nobody # Schlüssel wird bei Erhalt von SIGUSR1 nicht neu geladen persist-key # Tun-Device wird bei Erhalt von SIGUSR1 nicht neu geladen persist-tun # Pfad ist relativ zum Configfile status openvpn-status.log # Verbosity Level verb 3
IP Zuweisung an Client
Im Verzeichniss newvpn/ccd-dir liegen die Dateien, die den Clienten feste IPs zuweisen können.
Die Datei hat den selben Namen wie der Common Name im Key des Clienten
vim <Common Name>
Inhalt der Datei
ifconfig-push 10.8.100.201 255.255.255.0
Files in newvpn
ca.crt dh2048.pem server.crt server.key
Client Config
# # /etc/openvpn/newvpn.conf # Files liegen in /etc/openvpn/newvpn tls-client remote <IP oder FQDN des VPN-Servers> <Port des VPN-Servers> proto udp dev-type tun dev newvpn ca newvpn/ca.crt cert newvpn/client1.crt key newvpn/client1.key dh newvpn/dh2048.pem pull keepalive 10 120 comp-lzo persist-key persist-tun verb 3
Files in newvpn
ca.crt dh2048.pem client1.crt client1.key