Я настроил 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 решило эту проблему.