发布时间:2023-06-18 12:30
目录
ERR_UNSAFE_PORT浏览器安全问题导致无法访问的解决方案
一、问题现象
二、浏览器自身机制
三、解决方法
1.Google Chrome浏览器
2.Firefox浏览器
3.Edge浏览器
四、部分非安全端口列表
配置好web的https协议的服务器后,使用浏览器访问服务器的时候出现ERR_UNSAFE_PORT无法访问,如下图提示。
经过抓取报文分析,并没有抓到访问服务器的报文,定位发现是浏览器的保护机制自动拦截了请求,和服务器没关系。
因为chorme浏览器有自己的默认非安全端口,若访问这些端口就会出现这个错误,并且所有采用chorme内核的浏览器都会这样。
首先可以更改服务器访问web服务的端口号,如果没有特别要求,可以改成默认的80/443。非必要按如下方法操作。
**关闭浏览器**->桌面找到浏览器图标->点击右键选择属性->在【目标】后追加空格+--explicitly-allowed-ports=10080(见下面配置)->点击【保存】->**双击图标,重新打开浏览器**。
--explicitly-allowed-ports=10080
打开新标签页->地址栏输入about:config->点击回车->搜索首选项network.security.ports.banned.override->如果没有添加,将值填入10080->保存后重启浏览器。
network.security.ports.banned.override
搜索栏中输入regedit,回车打开系统注册表,进入计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge\ExplicitlyAllowedNetworkPorts,此路径不一定存在,可自行创建。然后在 ExplicitlyAllowedNetworkPorts 新建一个名称为 1 的字符串值,修改其值为10080。最后重启浏览器,访问端口为10080的地址。
官方文档:https://docs.microsoft.com/en-us/deployedge/microsoft-edge-policies#explicitlyallowednetworkports
Chrome默认部分非安全端口列表,虽然上面的方法可以解决问题,但建议尽量避免以下端口:
1, // tcpmux
7, // echo
9, // discard
11, // systat
13, // daytime
15, // netstat
17, // qotd
19, // chargen
20, // ftp data
21, // ftp access
22, // ssh
23, // telnet
25, // smtp
37, // time
42, // name
43, // nicname
53, // domain
77, // priv-rjs
79, // finger
87, // ttylink
95, // supdup
101, // hostriame
102, // iso-tsap
103, // gppitnp
104, // acr-nema
109, // pop2
110, // pop3
111, // sunrpc
113, // auth
115, // sftp
117, // uucp-path
119, // nntp
123, // NTP
135, // loc-srv /epmap
139, // netbios
143, // imap2
179, // BGP
389, // ldap
465, // smtp+ssl
512, // print / exec
513, // login
514, // shell
515, // printer
526, // tempo
530, // courier
531, // chat
532, // netnews
540, // uucp
556, // remotefs
563, // nntp+ssl
587, // stmp?
601, // ??
636, // ldap+ssl
993, // ldap+ssl
995, // pop3+ssl
2049, // nfs
3659, // apple-sasl / PasswordServer
4045, // lockd
6000, // X11
6665, // Alternate IRC
6666, // Alternate IRC
6667, // Standard IRC
6668, // Alternate IRC
6669, // Alternate IRC