Openvpn: Unterschied zwischen den Versionen

Aus Vosp.info
Wechseln zu:Navigation, Suche
(Config)
(Sternförmiges Setup mit zentralem Server)
Zeile 59: Zeile 59:
 
=== Config ===
 
=== Config ===
 
==== Server Config ====
 
==== Server Config ====
  # Port, default ist 1124
+
#
  port 60001
+
# /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

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