Ssl

與 apache 443/10443 的 OpenVPN 埠共享不起作用

  • October 3, 2011

我配置了 openvpn (OpenVPN 2.1.0) 和 apache 2 ( 分別在 443 和 10443 ( 使用 modssl ) 上監聽。這兩個應用程序監聽得很好:

tcp        0      0 x.x.x.x:10443           0.0.0.0:*        LISTEN      1130/apache2
tcp        0      0 0.0.0.0:443             0.0.0.0:*        LISTEN      7860/openvpn

但是,由於我試圖確定的原因,配置如下(使用公共 ip)的埠共享選項不起作用:

port 443
port-share x.x.x.x 10443

openvpn 日誌中的錯誤是:

TCP connection established with [AF_INET]y.y.y.y:3123  Socket Buffers: R=[131072->131072] S=[131072->131072]  
TCPv4_SERVER link     local: [undef]  
TCPv4_SERVER link remote: [AF_INET]y.y.y.y:3123
y.y.y.y:3123 Non-OpenVPN client protocol detected  
PORT SHARE PROXY: connect to port-share server failed
y.y.y.y:3123 SIGTERM[soft,port-share-redirect] received, client-instance exiting  
TCP/UDP: Closing socket

我想openvpn沒有連接權,但它是以root身份啟動的

根 7862 0.0 0.0 99552 924 ?S Sep22 0:00 /usr/sbin/openvpn –writepid /var/run/openvpn.server.pid –daemon ovpn-server –cd /etc/openvpn –config /etc/openvpn/server.conf –腳本安全 2

防火牆上的 443 和 10443 埠是開放的。

感謝您的任何意見和建議!

我已經諮詢過:

編輯 iptables 規則:

Chain ufw-user-input (1 references)
target     prot opt source               destination
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:ssh
ACCEPT     udp  --  anywhere             anywhere            udp dpt:ssh
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:www
ACCEPT     udp  --  anywhere             anywhere            udp dpt:www
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:smtp
ACCEPT     udp  --  anywhere             anywhere            udp dpt:25
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:domain
ACCEPT     udp  --  anywhere             anywhere            udp dpt:domain
ACCEPT     udp  --  anywhere             anywhere            udp dpt:openvpn
ACCEPT     tcp  --  10.0.0.0/8           anywhere            tcp dpt:mysql
ACCEPT     udp  --  10.0.0.0/8           anywhere            udp dpt:mysql
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:https
ACCEPT     udp  --  anywhere             anywhere            udp dpt:https
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:10443
ACCEPT     udp  --  anywhere             anywhere            udp dpt:10443

編輯以更好地解釋錯誤日誌:openvpn 遠端連接正在工作(我成功連接到埠 443 上的 VPN)。埠轉發不工作。10443 上的 HTTPS 連接正常工作,但埠 443 上的 HTTPS 連接無法使用埠共享選項。

我終於找到了這個問題的答案。

儘管防火牆規則似乎是正確的,但 openvpn 正在偵聽與 apache 不同的主機(公共 ip)這一事實是問題所在。對 openvpn 和 apache 使用相同的主機(和公共 IP)解決了它。

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