Iptables

具有 2 個公共 IP 的 OpenVPN 伺服器

  • June 24, 2020

此伺服器有 2 個 IP 地址,如下所示。

  • 11.22.22.44 : 主地址 & 退出 ip 地址
  • 11.22.33.55 :二級地址,非退出ip地址,用於openvpn客戶端連接

我可以 ssh 到 2 個 IP 地址中的任何一個。

我希望 OpenVPN 客戶端通過輔助地址連接到伺服器,並將主地址用作 Internet 的出口 IP。

Wed Jun 24 01:33:28 2020 OpenVPN 2.4.7 x86_64-pc-linux-gnu [SSL (OpenSSL)] [LZO] [LZ4] [EPOLL] [PKCS11] [MH/PKTINFO] [AEAD] built on Feb 20 2019
Wed Jun 24 01:33:28 2020 library versions: OpenSSL 1.1.1c  28 May 2019, LZO 2.10
Wed Jun 24 01:33:28 2020 Outgoing Control Channel Authentication: Using 160 bit message hash 'SHA1' for HMAC authentication
Wed Jun 24 01:33:28 2020 Incoming Control Channel Authentication: Using 160 bit message hash 'SHA1' for HMAC authentication
Wed Jun 24 01:33:28 2020 TCP/UDP: Preserving recently used remote address: [AF_INET]11.22.33.55:11194
Wed Jun 24 01:33:28 2020 Socket Buffers: R=[212992->212992] S=[212992->212992]
Wed Jun 24 01:33:28 2020 UDP link local: (not bound)
Wed Jun 24 01:33:28 2020 UDP link remote: [AF_INET]11.22.33.55:11194
Wed Jun 24 01:33:28 2020 NOTE: UID/GID downgrade will be delayed because of --client, --pull, or --up-delay
Wed Jun 24 01:34:28 2020 TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
Wed Jun 24 01:34:28 2020 TLS Error: TLS handshake failed
Wed Jun 24 01:34:28 2020 SIGUSR1[soft,tls-error] received, process restarting
Wed Jun 24 01:34:28 2020 Restart pause, 5 second(s)


Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         11.22.00.254   0.0.0.0         UG    0      0        0 eno1
10.8.0.0        10.8.0.2        255.255.255.0   UG    0      0        0 tun0
10.8.0.2        0.0.0.0         255.255.255.255 UH    0      0        0 tun0
11.22.33.0      0.0.0.0         255.255.255.0   U     0      0        0 eno2
11.22.22.0     0.0.0.0         255.255.255.0   U     0      0        0 eno1

如果配置

eno1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 11.22.22.44 網路遮罩 255.255.255.0 廣播 11.22.22.255 inet6 fe80::a6bf:1ff:fe25:fa37 prefixlen 64 scopeid 0x20 ether a4:bf:01: 25:fa:37 txqueuelen 1000 (乙太網) RX 數據包 15354 字節 1618795 (1.5 MiB) RX 錯誤 0 丟棄 0 溢出 0 幀 0 TX 數據包 15482 字節 2259131 (2.1 MiB) TX 錯誤 0 丟棄 0 溢出 0 載波 0 衝突 0 設備記憶體0xa2b00000-a2bffff

eno2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 11.22.33.55 網路遮罩 255.255.255.0 廣播 11.22.33.255 inet6 fe80::a6bf:1ff:fe25:fa38 prefixlen 64 scopeid 0x20 ether a4:bf:01: 25:fa:38 txqueuelen 1000 (乙太網) RX 數據包 0 字節 0 (0.0 B) RX 錯誤 0 丟棄 0 溢出 0 幀 0 TX 數據包 46 字節 2476 (2.4 KiB) TX 錯誤 0 丟棄 0 溢出 0 載波 0 衝突 0 設備記憶體0xa2900000-a29fffff

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10 loop txqueuelen 1000(本地環回)RX數據包242274字節13193252(12.5 MiB)RX錯誤0丟棄1342 超限 0 幀 0 TX 數據包 242274 字節 13193252 (12.5 MiB) TX 錯誤 0 丟棄 0 超限 0 載波 0 衝突 0

tun0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1500 inet 10.8.0.1 網路遮罩 255.255.255.255 目標 10.8.0.2 inet6 fe80::1e70:64bf:9ce5:78b6 prefixlen 64 scopeid 0x20 unspec 00-00- 00-00-00-00-00-00-00-00-00-00-00-00-00-00 txqueuelen 100 (UNSPEC) RX 數據包 58 字節 7715 (7.5 KiB) RX 錯誤 0 丟棄 0 溢出 0 幀 0 TX 數據包 78 字節 20953 (20.4 KiB) TX 錯誤 0 丟棄 0 超限 0 載波 0 衝突 0

連接到輔助地址後出現 TLS 錯誤(但在主地址上工作)。有沒有辦法解決這個問題(使用iptables?)

好的,這個問題解決了,只需在server.conf中添加“local 11.22.33.55”即可。

看起來您的第二個 IP 無法訪問。您可以從您的客戶端 ping 11.22.33.55 嗎?ifconfig / route 在您的伺服器上顯示什麼?

關於失敗的 tls 握手有一個類似的執行緒:

OpenVPN 問題 - TLS 密鑰協商未能在 60 秒內發生

引用自:https://serverfault.com/questions/1022685