
Ich versuche, einen symmetrischen VPN-Server mit OpenVPN in einem Docker-Compose zu erstellen. Hier ist er:
---
version: "3"
services:
vpn:
image: whitebox/vpn:0.2
networks:
- standard
tty: true
ports:
- "1194:1194/udp"
volumes:
- ./server:/home/server:ro
- ./static.key:/home/static.key:ro
cap_add:
- NET_ADMIN
- SYS_MODULE
restart: always
networks:
standard:
ipv4_address: "10.10.0.254"
web:
image: tutum/apache-php
volumes:
- ./web:/var/www/html:ro
- ./client:/home/client:ro
networks:
standard:
ipv4_address: "10.10.0.2"
networks:
standard:
driver: bridge
ipam:
config:
- subnet: 10.10.0.0/16
Wenn es gestartet ist, installiere ich (vorübergehend) manuell OpenVPN, führe einige grundlegende Konfigurationen durch und starte den Dienst. Alles scheint einwandfrei zu funktionieren, außer dass ich von keinem Gerät aus eine Verbindung dazu herstellen kann.
Serverkonfigurationsdatei:
ifconfig 10.10.0.254 10.10.0.10
verb 3
secret static.key
keepalive 1 10
persist-key
persist-tun
proto udp
port 1195
dev tun
status /home/vpn.log
Client-Konfigurationsdatei:
remote 192.168.37.137 1194
dev tun
ifconfig 10.10.0.10 10.10.0.254
secret static.key
Das Seltsame daran ist, dass ich versucht habe, genau denselben Server auf einer einfachen VM zu mounten und alles funktioniert. Der Client kann sich damit verbinden und auf das Netzwerk 10.10.0.0/16 zugreifen. Hier ist jedoch das Verbindungsprotokoll für den Client:
Wed Aug 11 00:37:16 2021 TUN/TAP device tun0 opened
Wed Aug 11 00:37:16 2021 /sbin/ip link set dev tun0 up mtu 1500
Wed Aug 11 00:37:16 2021 /sbin/ip addr add dev tun0 local 10.10.0.10 peer 10.10.0.254
Wed Aug 11 00:37:16 2021 TCP/UDP: Preserving recently used remote address: [AF_INET]192.168.37.137:1194
Wed Aug 11 00:37:16 2021 UDP link local (bound): [AF_INET][undef]:1194
Wed Aug 11 00:37:16 2021 UDP link remote: [AF_INET]192.168.37.137:1194
Und der entsprechende Container-basierte Server:
Wed Aug 11 07:34:40 2021 TUN/TAP device tun0 opened
Wed Aug 11 07:34:40 2021 TUN/TAP TX queue length set to 100
Wed Aug 11 07:34:40 2021 /sbin/ip link set dev tun0 up mtu 1500
Wed Aug 11 07:34:40 2021 /sbin/ip addr add dev tun0 local 10.10.0.254 peer 10.10.0.10
Wed Aug 11 07:34:40 2021 Could not determine IPv4/IPv6 protocol. Using AF_INET
Wed Aug 11 07:34:40 2021 Socket Buffers: R=[212992->212992] S=[212992->212992]
Wed Aug 11 07:34:40 2021 UDPv4 link local (bound): [AF_INET][undef]:1195
Wed Aug 11 07:34:40 2021 UDPv4 link remote: [AF_UNSPEC]
Wie Sie sehen, wird keine Verbindung hergestellt. Hat jemand eine Idee, warum?
Antwort1
Stellen Sie sicher, dass die Ports richtig konfiguriert sind.
Sie leiten Port 1194 an Ihren Container weiter, aber OpenVPN ist so konfiguriert, dass es auf Port 1195 lauscht.