web-dev-qa-db-ja.com

Apache443 / 10443とのOpenVPNポート共有が機能しない

Openvpn(OpenVPN 2.1.0)とApache 2(それぞれ443と10443(modsslを使用)でリッスンするように構成しました)。2つのアプリケーションは正常にリッスンしています。

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として起動されます

ルート78620.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接続がポート共有オプションで機能していません。

3
snowflake

私はついにこの問題の答えを見つけました。

ファイアウォールのルールは正しいように見えますが、openvpnがApacheとは異なるホスト(パブリックIP)でリッスンしていたという事実が問題でした。 openvpnとApacheに同じホスト(およびパブリックIP)を使用すると、問題が解決しました。

0
snowflake