V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
dier
V2EX  ›  分享发现

分享一个“关于浏览器非默认端口”的发现

  •  
  •   dier · 2021-03-09 11:19:34 +08:00 · 1395 次点击
    这是一个创建于 1142 天前的主题,其中的信息可能已经有所发展或是发生改变。
    今天同事让帮忙给新项目加个 web 端口,因为是本地测试环境,就顺着前面的端口号依次排,于是顺手监听了一个 87 号端口,结果发现浏览器死活访问不到。一路排查服务状态、端口监听情况、防火墙。都没发现问题。直到怀疑新代码有问题,把一个正常项目的代码直接复制过来后发现仍然访问不到。一看浏览器错误代码:ERR_UNSAFE_PORT
    搜索了一下才发现原来 chrome 将部分端口标为非安全端口,导致服务不能访问。

    以前只知道 1024 以内的端口大部分有明确服务使用,尽量不要随意占用。想着只有 nginx 不至于会出现端口号被占用的情况。没想到直接让浏览器给拦住了。。。。

    不知道我是不是最后一个知道的😂🤦‍♂️
    6 条回复    2021-03-10 10:42:40 +08:00
    walpurgis
        1
    walpurgis  
       2021-03-09 12:00:00 +08:00   ❤️ 4
    第一次是 6000 撞到的这个错误的
    端口列表写死在源码里的
    https://chromium.googlesource.com/chromium/src.git/+/refs/heads/master/net/base/port_util.cc#63
    leeyuzhe
        2
    leeyuzhe  
       2021-03-09 13:40:53 +08:00
    同 6000,当时起了几个服务 6000 、7000 、8000,唯独 6000 的死活访问不了
    ffLoveJava
        3
    ffLoveJava  
       2021-03-09 13:48:00 +08:00
    真第一次知道 为什么啊 即便这些端口有特殊作用, 但我就像让他做 web 的 server 端口 浏览器为啥不行啊
    dier
        4
    dier  
    OP
       2021-03-09 14:03:38 +08:00
    @ffLoveJava 我猜应该是防止故意用这些端口进行钓鱼?毕竟这些端口被原本的服务使用时是可以通过浏览器访问的,比如 FTP 的 21 号端口,如果用 nginx 监听时浏览器就访问不了,用 FTP 监听时,浏览器就能正常访问
    no1xsyzy
        5
    no1xsyzy  
       2021-03-09 14:17:20 +08:00   ❤️ 1
    @ffLoveJava 看 #1 的注释……
    估计是避免混乱的链接尝试损坏一些设施。
    比如,IRC + TLS,假如我知道一个 IRC 地址,我把它当作 <img src="https://example.com:6697/foo" /> 标签插进我的网页、或者发在其他地方的内嵌图片里,所有人访问网页时就会 GET /foo 就直接打进这个 IRC 里去形成 spam
    iminto
        6
    iminto  
       2021-03-10 10:42:40 +08:00
    2021 年 1 月,谷歌又阻止了对另外 7 个端口的 HTTP 、HTTPS 和 FTP 访问,包括 69 、137 、161 、1719 、1720 、1723 和 6566 端口
    Chrome 浏览器将阻止浏览器对 TCP 554 端口的访问,以防止利用 NAT Slipstreaming 2.0 漏洞的攻击行为。
    谷歌和 Safari 开发者也在讨论屏蔽 10080 端口,Firefox 已经屏蔽了这一端口
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1033 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 19:37 · PVG 03:37 · LAX 12:37 · JFK 15:37
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.