我必须在我的网站后面输入端口 80 才能看到它(www.example.com:80 - 但仅限 SSL)

我必须在我的网站后面输入端口 80 才能看到它(www.example.com:80 - 但仅限 SSL)

我是服务器管理的新手,决定通过部署自己的网站来学习:D

问题可能是我错误配置了 iptables/配置不够。

我有一个在端口 8080 上运行的节点应用程序(https 服务器,证书运行良好)

我运行sudo iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080 重新路由进入 80 端口的所有流量到 8080 - 这对普通http服务器有效 -> 我可以去www.example.com没有问题。

tcp跟踪路由

tcptraceroute 159... 80
Selected device lo, address 159, port 35499 for outgoing packets
Tracing the path to 159 on TCP port 80 (http), 30 hops max
 1  ubuntu-main (159) [closed]  0.178 ms  0.064 ms  0.142 ms

(如果有帮助我可以提供域名/ IP 地址)

网络状态监测

[sudo] password for twiggeh: 
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 127.0.0.53:53           0.0.0.0:*               LISTEN      531/systemd-resolve 
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      675/sshd: /usr/sbin 
tcp        0      0 127.0.0.1:42143         0.0.0.0:*               LISTEN      950/node            
tcp6       0      0 :::22                   :::*                    LISTEN      675/sshd: /usr/sbin 
tcp6       0      0 :::8080                 :::*                    LISTEN      1279/node   

iptables -L

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination 

DigitalOcean DNS 配置

答案1

https 流量的默认端口是 443,而不是未加密的 http 流量的 80。如果您不想在后面输入端口号https://www.example.com,则应将流量从端口 8080 重定向到端口 443,而不是 80。

相关内容