「量子位」程序员无法登录Web服务器,最新macOS破坏SSH默认规则
晓查发自凹非寺
量子位报道|公众号QbitAI
苹果电脑最新的10.15.4系统 , 你更新了吗?
如果你不幸升级 , 而且还是要使用SSH的用户 , 那么恭喜你中招了 。

文章图片
最近 , 一位名叫TaylorHall的程序员发现 , 自从更新了到macOSCatalina最新版 , 再也无法通过SSH登上自己的Web服务器 。
一开始 , Taylor以为是自己的服务器意外关闭了 , 但是他没有收到任何警报 , 而且服务器还能提供网络服务 。
Taylor才发现 , 事情没那么简单 。
都是Mac惹的祸
Taylor首先登陆服务器提供商Linode的控制面板 , 重启了自己的服务器 , 用Mac电脑依然无法登陆 。
奇怪的是 , 服务器没有拒绝连接 , 甚至没有超时 , 只是挂起 。 Taylor等了十多分钟 , 但是终端里没有显示超时 , 也没有任何其他输出内容 。

文章图片
然后 , Taylor发现了更多奇怪的地方 , 比如用FTP客户端ForkLift却能正常连接 , 用数据库管理工具SequelPro也能通过SSH连接服务器 。
Taylor之前是用iMac尝试登录 , 换成一台其他品牌的笔记本就正常 , 再换成MacBookPro又无法登陆 。

文章图片
这三台机器都在同一个WiFi下 , 因此不可能是自家的IP地址被禁了 。
那么是不是本地的私钥权限出了问题呢?Taylor又从备份中重新创建了所有密钥 , 依旧无法登陆 。
问题已经变得清晰了 , 很可能就是苹果电脑的系统问题 。
为了更进一步证实自己的想法 , Taylor在自己的iMac上开了个Ubuntu的虚拟机 , 用它来连接自己的服务器 , 结果连上了!
解决方法
过去这个问题在10.15.3上不曾出现 , 所以极有可能是最新版10.15.4的问题 。
带着这个问题 , Taylor在谷歌上搜索“10.15.4SSH” , 在苹果论坛上找到了下面的内容:
使用服务器名称代替IP地址时 , 若Catalina10.15.4的SSH端口>8192将不起作用 。
升级到macOSCatalina10.15.4之后 , 才开始出现此问题 。
更新之后 , 不再能够使用服务器名称(而不是IP)打开大于8192端口的SSH连接 。
Taylor试了一下 , 果然如此 , 把服务器名称改成IP地址 , 一切又恢复正常 。
接着他又尝试把SSH端口改成标准的22 , 用服务器名称也能正常连接 。
除了以上两种方法 , 广大程序员还给Taylor提供了其他方案 , 比如通过Homebrew安装openssh , 覆盖掉系统默认ssh的设置 。
【「量子位」程序员无法登录Web服务器,最新macOS破坏SSH默认规则】当然 , 还有个最绝的办法 , 就是不升级到10.15.4 , 关掉系统自动升级的设置 。 打开终端 , 输入以下命令 , 你就不会收到新的系统更新信息了 。
sudosoftwareupdate—ignore“macOSCatalina”defaultswritecom.apple.systempreferencesAttentionPrefBundleIDs0killallDock
如果你以后想更新到macOSCatalina , 只需在终端里输入以下命令:
sudosoftwareupdate—reset-ignored
最新macOS槽点太多
你以为最新macOS就这一个毛病吗?问题还有很多 。
Taylor在抛出这个SSH故障问题后 , 广大程序员立即开启了吐槽模式:新版的Catalina(10.15)实在太难用啦!
HackerNews上的评论在几个小时内就涨到了200多 。

文章图片
有的程序员在更新到Catalina后 , 过去的开发环境惨遭破坏 , 无奈之下又降级到Mojave(10.14) 。
推荐阅读
- 工业互联网@程序员的术与道:术——编程基本功之网络编程
- #水母#永生无法实现,宇宙不允许生命永生,看看水母的下场
- 科学家@中国两个最神秘的地方, 真实存在, 科学家至今都无法解释!
- Python爱好者社区| 程序员逆天改命,漫画
- 可可酱75吋量子点电视让孩子健康成长,如何才能健康不伤眼的看电视?TCL
- 雷军■程序员辞去互联网工作,跨行去传统上市公司,结果上班第1天就蒙了
- 『程序员』身为京东最大股东的马化腾,却在扶持拼多多?刘强东:“请便!”
- 东书书鸡肋还是无法剔除,丰巢智能柜推出亲友代取功能:欲形成侧击之势
- 程序员▲金山云逆势IPO,雷军身价超100亿美元!
- 中国智能制造网量子通信布局起风了!,多国已未雨绸缪
