一、问题描述
访问某一个特定的网址之后,出现无法访问此网站的问题,错误码 ERR_UNSAFE_PORT ,如下图提示:
以下是使用Chrome浏览器访问出现的情况
最后的错误码 ERR_UNSAFE_PORT,出现了不安全的端口字样。
以下是使用Firefox浏览器访问出现的情况
此地址访问受限,此地址使用了一个通常用于网络浏览以外目的的端口。出于安全原因,Firefox取消了该请求。
也出现了端口字样。
二、问题原因
经过抓取报文分析,并没有抓到访问服务器的报文,所以定位发现是浏览器拦截了请求,和服务器没关系。为什么会拦截这个请求?主要原因是浏览器有自身的保护机制即浏览器会禁用一些网络浏览以外的端口----非安全端口。
因为chorme浏览器有自己的默认非安全端口,若访问这些端口就会出现这个错误,并且所有采用chrome内核的浏览器都会这样。
以下列出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(rfc-6409) |
601 | syslog-con(rfc-3195) |
636 | ldap+ssl |
993 | ldap+ssl |
995 | pop3+ssl |
2049 | nfs |
3659 | apple-sasl / PasswordServer |
4045 | lockd |
6000 | X11 |
6665 | Alternate IRC [Apple addition] |
6666 | Alternate IRC [Apple addition] |
6667 | Standard IRC [Apple addition] |
6668 | Alternate IRC [Apple addition] |
6669 | Alternate IRC [Apple addition] |
6697 | IRC+TLS |
显示详细信息
三、解决方案
3.1 方案1修改服务器访问端口号(推荐)
最好的解决方案就是避开上述的非安全端口。例如可以更改服务器访问web服务的端口号,如果没有特别要求,可以改成默认的80/443。
3.2 方案2修改浏览器设置
记住,非必要就别使用下面的方法操作。
3.2.1 Chrome浏览器
关闭浏览器->桌面找到浏览器图标->点击右键选择属性->在【目标】后追加空格±-explicitly-allowed-ports=10080(见下面配置)->点击【保存】->双击图标,重新打开浏览器。
--explicitly-allowed-ports=10080
3.2.2 Firefox浏览器
打开新标签页->地址栏输入about:config->点击回车->搜索首选项network.security.ports.banned.override->如果没有添加,将值填入10080->保存后重启浏览器。
点击我了解此风险!后会在浏览器上方出现一个搜索框,然后输入以下字符串
network.security.ports.banned.override
3.2.3 Edge浏览器
官方文档:https://docs.microsoft.com/en-us/deployedge/microsoft-edge-policies#explicitlyallowednetworkports
搜索栏中输入regedit,回车打开系统注册表,进入计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge\ExplicitlyAllowedNetworkPorts,此路径不一定存在,可自行创建。然后在 ExplicitlyAllowedNetworkPorts 新建一个名称为 1 的字符串值,修改其值为10080。最后重启浏览器,访问端口为10080的地址。
本文完结!