我已将 OpenVPN 配置为将端口 443 上的非 VPN 流量发送到端口 4433 上的 nginx 服务器。当我访问https://域名.tld:4433它确实有效,尽管https://域名.tld(OpenVPN 在 TCP 443 端口上监听)导致“页面不可用”(Chrome 中为 ERR_CONNECTION_CLOSED)。
OpenVPN配置:
port 443
proto tcp
port-share localhost 4433
Nginx 配置:(实际上不需要,因为我确信它可以工作)
server {
listen 1.2.3.4:4433;
server_name domain.tld www.domain.tld;
ssl on;
ssl_certificate /home/rick/conf/web/ssl.domain.tld.pem;
ssl_certificate_key /home/rick/conf/web/ssl.domain.tld.key;
error_log /var/log/apache2/domains/domain.tld.error.log error;
...
}
答案1
这是我解决问题的方法:
- 检查 OpenVPN 是否在监听 443 TCP 端口。根据配置进行检查,以及端口检查服务。
- 将端口共享设置为端口共享 {IP} {PORT}
如何知道{IP}和{PORT}?
在 nginx 中:
server {
listen {IP}:{PORT};
}
在 Apache 中:
<VirtualHost {IP}:{PORT}>
ServerName {IP}
ServerAlias {IP}
// Could also be an hostname, hostname also work on OpenVPN port-share.
// When {IP} in the VirtualHost opening tag is "*", using localhost or
// 127.0.0.1 or Public IP in OpenVPN, will fix the problem.
</VirtualHost>
希望这对你有帮助!