Dirkg (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
K (Lauritzl verschob die Seite Openvpn cli v11 nach UTM/CLI/Openvpn v11) |
||
(14 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
==SSL-VPN== | ==SSL-VPN== | ||
Zeile 19: | Zeile 17: | ||
|cert|| Server-Zertifikat, dass für diese Verbindung genutzt wird | |cert|| Server-Zertifikat, dass für diese Verbindung genutzt wird | ||
|- | |- | ||
|dh_size|| | |dh_size|| Größe des Diffie Hellman Schlüssels | ||
|- | |- | ||
|mtu|| Größe der Datenpakete | |mtu|| Größe der Datenpakete | ||
Zeile 25: | Zeile 23: | ||
|pool|| Transfernetzwerk, dass für diese TUN Verbindung genutzt wird z.B. 192-168.250.0/24 | |pool|| Transfernetzwerk, dass für diese TUN Verbindung genutzt wird z.B. 192-168.250.0/24 | ||
|- | |- | ||
|flags|| DISABLED, MULTIHOME, LZO, PUSH_DNS, PUSH_WINS | |flags|| DISABLED wenn diese Verbindung nicht genutzt werden soll, MULTIHOME wenn mehrere WAN Anschlüsse vorhanden sind, LZO Kompession, PUSH_DNS für die IP des DNS-Server, PUSH_WINS für die IP des Wins-Server | ||
|- | |- | ||
|local_addr|| IP | |local_addr|| IP des Interface das für die Verbindung genutzt werden soll | ||
|- | |- | ||
|local_port|| Port der für diese Verbindung genutzt wird z.B. 1194 | |local_port|| Port der für diese Verbindung genutzt wird z.B. 1194 | ||
Zeile 41: | Zeile 39: | ||
|push_subnet|| Das zu übertragenen interne Subnetz der Server Seite z.B. 192.168.175.0/24 | |push_subnet|| Das zu übertragenen interne Subnetz der Server Seite z.B. 192.168.175.0/24 | ||
|- | |- | ||
| | |style="background:#FFCBCB" | || style="background:#FFCBCB" | | ||
|- | |- | ||
!openvpn remote new/set!! | !openvpn remote new/set!! | ||
Zeile 72: | Zeile 70: | ||
|openvpn set|| Verändert eine SSL-VPN Verbindung|| openvpn set id "1" cert "Neues-Server_cert" | |openvpn set|| Verändert eine SSL-VPN Verbindung|| openvpn set id "1" cert "Neues-Server_cert" | ||
|- | |- | ||
|openvpn | |openvpn delete|| Löscht SSL-VPN Verbindungen || openvpn delete id "6" | ||
|- | |- | ||
|openvpn | |openvpn status|| Listet den Verbindungsstatus der einzelnen SSL-VPN instanzen auf|| openvpn status | ||
|- | |- | ||
| | |openvpn disconnect|| Beendet eine SSL-VPN Verbindung zu einem Client|| openvpn disconnect name ''RW_Test'' c_name ''vpnuser'' | ||
|- | |- | ||
| | |openvpn update|| Aktualisiert alle SSL-VPN Instanzen|| openvpn update | ||
|- | |- | ||
| | |style="background:#FFCBCB" | || style="background:#FFCBCB" | || style="background:#FFCBCB" | | ||
|- | |- | ||
|openvpn push_subnet | |openvpn push_subnet new|| Erstellt ein neues Subnetz || openvpn push_subnet new openvpn_id "3" push_subnet 192.168.176.0/24 | ||
|- | |- | ||
| | |openvpn push_subnet delete|| Löscht ein vorhandenen Subnetz-Eintrag|| openvpn push_subnet delete openvpn_id "3" push_subnet_id 15 | ||
|- | |- | ||
| | |style="background:#FFCBCB" | || style="background:#FFCBCB" | || style="background:#FFCBCB" | | ||
|- | |- | ||
|openvpn remote get|| Listet die SSL-VPN Remote-Profile auf|| | |openvpn remote get|| Listet die SSL-VPN Remote-Profile auf|| openvpn remote get | ||
|- | |- | ||
|openvpn remote | |openvpn remote new|| Anlegen eines neuen SSL-VPN Remote-Profils|| openvpn remote new name "Client1" common_name "Client_cert" tunnel_addr "192.168.250.10/24" subnets "192.168.176.0/24" | ||
|- | |- | ||
|openvpn remote | |openvpn remote set|| Ändern von SSL-VPN Remote-Profilen|| openvpn remote set id "3" tunnel_addr "192.168.250.2/24" | ||
|- | |- | ||
|openvpn remote delete|| Löscht ein vorhandenes SSL-VPN Remote-Profil || | |openvpn remote delete|| Löscht ein vorhandenes SSL-VPN Remote-Profil || openvpn remote delete id "3" | ||
|} | |} | ||
===Neue Verbindung anlegen=== | |||
1. TUN-Interface + Zone anlegen | |||
interface new name "tun0" type "TUN" | |||
interface zone new name "vpn-openvpn-server_conn" interface tun0 | |||
2. Zertifikate anlegen | |||
cert new common_name "myCA" | |||
cert new common_name "Server_cert" issuer_id 130 | |||
cert new common_name "Client_cert" issuer_id 130 | |||
id |common_name|bits|valid_since |valid_till |issuer|flags |status | |||
---+-----------+----+-------------------+-------------------+------+------+------ | |||
130|myCA |1024|2011-08-25-10-41-16|2012-08-24-10-41-16|myCA |KEY,CA|OK | |||
131|Server_cert|1024|2011-08-25-10-41-43|2012-08-24-10-41-43|myCA |KEY |OK | |||
132|Client_cert|1024|2011-08-25-10-42-04|2012-08-24-10-42-04|myCA |KEY |OK | |||
Bei einer Site to Site Verbindung müssen das CA und das Client_cert dann exportiert werden. | |||
cert export x509 id 130 | |||
cert export x509 id 132 | |||
3. Openvpn-Remote Profile definieren (nur bei Site to Site Verbindungen) | |||
*Server-Seite | |||
openvpn remote new name "Client1" common_name "Client_cert" tunnel_addr "192.168.250.10" subnets 192.168.176.0/24 | |||
*Client-Seite | |||
openvpn remote new name "s2s-Server" hosts 192.168.4.143 | |||
4. Openvpn-Verbindung anlegen | |||
'''Roadwarrior''' | |||
openvpn new name "RW-Verbindung" mode "SERVER" proto "UDP" auth "LOCAL" cert "Server_cert" pool "192.168.250.0/24" mtu "1500" interface "tun0" local_port "1194" reneg "3600" push_subnet "192.168.175.0/24" dh_size "2048" | |||
'''Site to Site''' | |||
*Zertifikate importieren | |||
*Server Seite | |||
openvpn new name "s2s-conn" mode "SERVER" proto "UDP" auth "NONE" cert "Server_cert" dh_size "2048" mtu "1400" pool "192.168.250.0/24" interface tun0 | |||
*Client Seite | |||
openvpn new name "s2s-client" mode "CLIENT" proto "UDP" auth "NONE" cert "Client_cert" dh_size "2048" mtu "1400" interface "tun0" remote s2s-Server | |||
{| | |||
|- | |||
|[[Datei:UMA20_AHB_hinweispic.png|50px]] | |||
|'''Achtung!''' <br> | |||
*Es dürfen Pools nicht mehrfach vergeben werden | |||
*Es darf der local_port nicht mehrfach (pro Interface) verwendet werden | |||
*Ein Tun-Interface darf nicht mehrfach verwendet werden | |||
|} | |||
===Multiple OpenvpnServer=== | |||
Es können mehrere Openvpnserver über die Remote-Profile übergeben werden, z.B.: | |||
openvpn remote set id 2 hosts 192.168.4.143,192.168.176.1 | |||
firewall.foo.local> openvpn remote get | |||
id|name |hosts | |||
--+----------------+--------------------------- | |||
2 |remote_sslserver|192.168.4.143,192.168.176.1 | |||
Werden keine Ports angegeben, wird der Default-Port 1194 verwendet.<br> | |||
Sollen andere Ports verwendet werden, können diese hinter der IP mit einem vorangestellten Doppelpunkt angegeben werden. | |||
openvpn remote set id 2 hosts 192.168.4.143:1195,192.168.176.1:1196 | |||
id|name |hosts | |||
--+----------------+---------------------------------- | |||
2 |remote_sslserver|192.168.4.143:1195,192.168.176.1:1196 | |||
Es wird zunächst versucht eine Verbindung zur 192.168.4.143 aufzubauen(28 Verbindungsversuche bei UDP / 3 Versuche bei TCP).<br> | |||
Kann zur 192.168.4.143 keine Verbindung aufgebaut werden, wird versucht eine Verbindung zur 192.168.176.1(27 Verbindungsversuche bei UDP / 1 Versuch bei TCP) aufzubauen.<br> | |||
Ist es auch nicht möglich zur 192.168.176.1 eine Verbindung aufzubauen, wird wieder versucht zur 192.168.4.143 eine Verbindung aufzubauen. |
Aktuelle Version vom 12. Februar 2024, 08:07 Uhr
SSL-VPN
Optionen
openvpn new/set optionen | |
---|---|
id | Identifikationsnummer der Verbindung |
name | Name der Verbindung |
mode | Modus Server oder Client |
proto | Genutzes Protokoll für die Verbindung UDP oder TCP |
auth | Authentifizierungsmethode. Keine, Lokal oder Radius |
cert | Server-Zertifikat, dass für diese Verbindung genutzt wird |
dh_size | Größe des Diffie Hellman Schlüssels |
mtu | Größe der Datenpakete |
pool | Transfernetzwerk, dass für diese TUN Verbindung genutzt wird z.B. 192-168.250.0/24 |
flags | DISABLED wenn diese Verbindung nicht genutzt werden soll, MULTIHOME wenn mehrere WAN Anschlüsse vorhanden sind, LZO Kompession, PUSH_DNS für die IP des DNS-Server, PUSH_WINS für die IP des Wins-Server |
local_addr | IP des Interface das für die Verbindung genutzt werden soll |
local_port | Port der für diese Verbindung genutzt wird z.B. 1194 |
remote | Remote Adresse über die der Site to Site Client die Verbindung zum Server aufbauen soll |
max_clients | Maximale Anzahl der Clients in dieser Verbindung |
interface | Das zu nutzende TUN Interface |
push_subnet_id | Identifikationsnummer des zu übertragenen internen Subnetzes der Server Seite |
push_subnet | Das zu übertragenen interne Subnetz der Server Seite z.B. 192.168.175.0/24 |
openvpn remote new/set | |
id | Identifikationsnummer der Site to Site Clientverbindung |
openvpn_id | |
name | Name der Site to Site Verbindung |
common_name | Client Zertifikat das für diese Verbindung genutzt wird |
tunnel_addr | IP der TUN-Schnittstelle auf der Clientseite |
hosts | Öffentliche Adresse unter der der SSL-VPN Server erreichbar ist |
subnets | Internes Netzwerk auf der Clientseite |
push_subnets | Internes Netzwerk auf der Server Seite |
CLI Kommandos
Befehl | Beschreibung | Beispiel |
---|---|---|
openvpn get | Auflisten der SSL-VPN Verbindungen | openvpn get |
openvpn new | Erstellt eine neue SSL-VPN Verbindung | openvpn new name "RW-Verbindung" mode "SERVER" proto "UDP" auth "LOCAL" cert "Server_cert" pool "192.168.250.0/24" mtu "1500" interface "tun0" local_port "1194" reneg "3600" push_subnet "192.168.175.0/24" dh_size "2048" |
openvpn set | Verändert eine SSL-VPN Verbindung | openvpn set id "1" cert "Neues-Server_cert" |
openvpn delete | Löscht SSL-VPN Verbindungen | openvpn delete id "6" |
openvpn status | Listet den Verbindungsstatus der einzelnen SSL-VPN instanzen auf | openvpn status |
openvpn disconnect | Beendet eine SSL-VPN Verbindung zu einem Client | openvpn disconnect name RW_Test c_name vpnuser |
openvpn update | Aktualisiert alle SSL-VPN Instanzen | openvpn update |
openvpn push_subnet new | Erstellt ein neues Subnetz | openvpn push_subnet new openvpn_id "3" push_subnet 192.168.176.0/24 |
openvpn push_subnet delete | Löscht ein vorhandenen Subnetz-Eintrag | openvpn push_subnet delete openvpn_id "3" push_subnet_id 15 |
openvpn remote get | Listet die SSL-VPN Remote-Profile auf | openvpn remote get |
openvpn remote new | Anlegen eines neuen SSL-VPN Remote-Profils | openvpn remote new name "Client1" common_name "Client_cert" tunnel_addr "192.168.250.10/24" subnets "192.168.176.0/24" |
openvpn remote set | Ändern von SSL-VPN Remote-Profilen | openvpn remote set id "3" tunnel_addr "192.168.250.2/24" |
openvpn remote delete | Löscht ein vorhandenes SSL-VPN Remote-Profil | openvpn remote delete id "3" |
Neue Verbindung anlegen
1. TUN-Interface + Zone anlegen
interface new name "tun0" type "TUN" interface zone new name "vpn-openvpn-server_conn" interface tun0
2. Zertifikate anlegen
cert new common_name "myCA" cert new common_name "Server_cert" issuer_id 130 cert new common_name "Client_cert" issuer_id 130 id |common_name|bits|valid_since |valid_till |issuer|flags |status ---+-----------+----+-------------------+-------------------+------+------+------ 130|myCA |1024|2011-08-25-10-41-16|2012-08-24-10-41-16|myCA |KEY,CA|OK 131|Server_cert|1024|2011-08-25-10-41-43|2012-08-24-10-41-43|myCA |KEY |OK 132|Client_cert|1024|2011-08-25-10-42-04|2012-08-24-10-42-04|myCA |KEY |OK
Bei einer Site to Site Verbindung müssen das CA und das Client_cert dann exportiert werden.
cert export x509 id 130 cert export x509 id 132
3. Openvpn-Remote Profile definieren (nur bei Site to Site Verbindungen)
- Server-Seite
openvpn remote new name "Client1" common_name "Client_cert" tunnel_addr "192.168.250.10" subnets 192.168.176.0/24
- Client-Seite
openvpn remote new name "s2s-Server" hosts 192.168.4.143
4. Openvpn-Verbindung anlegen
Roadwarrior
openvpn new name "RW-Verbindung" mode "SERVER" proto "UDP" auth "LOCAL" cert "Server_cert" pool "192.168.250.0/24" mtu "1500" interface "tun0" local_port "1194" reneg "3600" push_subnet "192.168.175.0/24" dh_size "2048"
Site to Site
- Zertifikate importieren
- Server Seite
openvpn new name "s2s-conn" mode "SERVER" proto "UDP" auth "NONE" cert "Server_cert" dh_size "2048" mtu "1400" pool "192.168.250.0/24" interface tun0
- Client Seite
openvpn new name "s2s-client" mode "CLIENT" proto "UDP" auth "NONE" cert "Client_cert" dh_size "2048" mtu "1400" interface "tun0" remote s2s-Server
Achtung!
|
Multiple OpenvpnServer
Es können mehrere Openvpnserver über die Remote-Profile übergeben werden, z.B.:
openvpn remote set id 2 hosts 192.168.4.143,192.168.176.1
firewall.foo.local> openvpn remote get id|name |hosts --+----------------+--------------------------- 2 |remote_sslserver|192.168.4.143,192.168.176.1
Werden keine Ports angegeben, wird der Default-Port 1194 verwendet.
Sollen andere Ports verwendet werden, können diese hinter der IP mit einem vorangestellten Doppelpunkt angegeben werden.
openvpn remote set id 2 hosts 192.168.4.143:1195,192.168.176.1:1196 id|name |hosts --+----------------+---------------------------------- 2 |remote_sslserver|192.168.4.143:1195,192.168.176.1:1196
Es wird zunächst versucht eine Verbindung zur 192.168.4.143 aufzubauen(28 Verbindungsversuche bei UDP / 3 Versuche bei TCP).
Kann zur 192.168.4.143 keine Verbindung aufgebaut werden, wird versucht eine Verbindung zur 192.168.176.1(27 Verbindungsversuche bei UDP / 1 Versuch bei TCP) aufzubauen.
Ist es auch nicht möglich zur 192.168.176.1 eine Verbindung aufzubauen, wird wieder versucht zur 192.168.4.143 eine Verbindung aufzubauen.