Назад | Перейти на главную страницу

OpenVPN port-share с apache 443/10443 не работает

Я настроил 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 99552924? S 22 сентября 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 работает (я успешно подключаюсь к VPN через порт 443). Переадресация порта не работает. HTTPS-соединение на 10443 работает, но HTTPS-соединение на порте 443 не работает с опцией совместного использования порта.

Я наконец нашел ответ на эту проблему.

Несмотря на то, что правила брандмауэра кажутся правильными, проблема была в том, что openvpn прослушивал другой хост (общедоступный IP-адрес), чем apache. Использование одного и того же хоста (и общедоступного IP-адреса) для openvpn и apache решило эту проблему.