掌握聚合最新动态了解行业最新趋势
API接口,开发服务,免费咨询服务

真实的教训:升级至macOS Sierra会损坏你的SSH密钥,让你进不了自己的服务器

很许多开发者一样,苹果的macOS Sierra更新提示一直搞得我心烦意乱。我每天都要点击一下明天提醒我

最后我终于屈服了,在睡觉之前点击了安装更新。

起来之后,我发现我无法登陆Free Code Camp的服务器了。我花了好长时间才搞明白究竟出了什么问题。幸运的是, BerkeleyTrue还没有被升级,我还可以添加新的SSH密钥。

如果你是唯一一个拥有服务器SSH密钥的人,并且关闭了密码登陆,那就不要升级macOS Sierra系统。

但是苹果搞坏的,并不是所有SSH密钥,只有那些更安全的RSA 2048密钥。

如果你还不清楚RSA为何比DSA更安全,其实事实并非如此。但是DSA通常只能是1024bit,而RSA密钥则更长,不过多出来的bit能让密钥更难破解。

现在我们就来设置新的2048-bit RSA SSH密钥吧。

第一步:删除旧的密钥,创建新密钥


打开终端并且输入:

 ssh-keygen -t rsa

prompt会做出如下响应:

 Generating public/private rsa key pair.

Enter file in which to save the key (/Users/freecodecamp/.ssh/id_rsa):

你可以直接点击回车,将其保存在默认位置。请注意,它将会覆盖你的旧(已损坏)的密钥。

Enter passphrase (empty for no passphrase): 

这里可以留着不填,如果希望更安全一点的话,也可以设定一个密码。

之后你会看到一个看上去有点像圣诞树的东西:


现在运行下列命令,获得公开密钥的内容:

 cat ~/.ssh/id_rsa.pub 

之后会返回一个类似这样的东西:

 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDijWK+s3ybgzEdaJ5LneNU11BsIyoNS51SV11Vi5auPJW9+Ji6OUSJ9OguZh4T019ULyFF/Qq66fhH9TvMzw80lTNoChgTRMpjs2+Qg75yTINKSde+Gv4TK6UvNw6EINORcTpb32Im9hgtdTj6WqJ/hCbSltv7IfFZU5ChV7SxTaoNZTa9M5H3N8YdQ/aGt3puh222Cq5DTjV8fRWaNVvjVQRe/huHAHEzEUr1T/eTlXtoFtGeC1z+pLfYllVzizoS7tyuUksfgqox1jJJMpaZ25V/R/p/MDUc936za/8zgB8OQFRBbrP6JvXXN99DLcvs9coz9vfb2GCVrhxi1aJ5 quincy@FreeCodeCamp

将其复制下来,你之后需要将它放在服务器上。

第二步:将公开密钥添加到服务器上


如果你能在不使用密钥的情况下SSH进服务器,那么就尝试使用密码登录。

否则的话,你就要联系其他可以登录服务器的人了。

如果你此前关闭了用户名密码登录服务器的方式(许多人都会出于安全因素这么做),你或许可以临时重新启用密码登录。

在获得服务器的root接入之后——假设你的服务器为Linux服务器——你只需要运行这条命令:

 nano ~/.ssh/authorized_keys

它会使用极简文本编辑器“nano”来打开你授权的密钥文件,大多数Linux系统中都有这个编辑器。如果没有的话,你也可以使用Vim

现在复制你此前保存的SSH密钥,按下control+o保存变更,然后用control+x推出nano

从服务器断开,现在就可以使用新的SSH密钥来登录了。

第三步: SSH进入服务器


使用下面这条命令,通过SSH进入服务器,把root@0.0.0.0换成你服务器的登录名和IP地址:

ssh -i ~/.ssh/id_rsa root@0.0.0.0

你会发现,和以前不同的是,你需要使用私人密钥(id_rsa)SSH进入服务器,而不再是公共密钥(id_rsa.pub)。这让我也有点困惑,我也不清楚为何会有这样的改变。如果你知道原因,烦请在留言区分享给我们。

这样你就可以使用SSH登录服务器,无需输入密码了。

恭喜!问题终于解决了,现在不用再忍受苹果不断提醒你进行系统升级了。


sdk.jpg

原文来自:SDK.cn

声明:所有来源为“聚合数据”的内容信息,未经本网许可,不得转载!如对内容有异议或投诉,请与我们联系。邮箱:marketing@think-land.com

  • 营运车辆判定查询

    通过车架号或车牌号查询车辆是否为营运车辆

    通过车架号或车牌号查询车辆是否为营运车辆

  • VIN查车辆信息-精准版

    通过车架号查询车辆的如品牌名称、车系名称、车型、排量、排放标准、外形尺寸、轮胎规格、变速器类型、公告号、轴距等等详细信息

    通过车架号查询车辆的如品牌名称、车系名称、车型、排量、排放标准、外形尺寸、轮胎规格、变速器类型、公告号、轴距等等详细信息

  • AI文本审核服务

    基于大模型能力构建的文本审核服务,能够高效精准地识别各类文本违规内容。与传统文本内容安全审核方案相比,具备更强大的语言理解与分析能力,能精准识别复杂、隐晦的违规内容,突破了传统模式的局限。

    基于大模型能力构建的文本审核服务,能够高效精准地识别各类文本违规内容。与传统文本内容安全审核方案相比,具备更强大的语言理解与分析能力,能精准识别复杂、隐晦的违规内容,突破了传统模式的局限。

  • AI图片审核服务

    基于图片审核大模型服务,能够全方位识别图片中的色情、性感、涉政、暴恐、违禁、宗教、引流广告、不良等违规内容,并支持返回大模型的审核结果。结合大模型和专家小模型,提供更细粒度的标签(如色情细分、具体行为、特定物体等),识别范围更广、标签更丰富。 综合效果最佳,适合对误判率、漏判率都有较高要求的场景。

    基于图片审核大模型服务,能够全方位识别图片中的色情、性感、涉政、暴恐、违禁、宗教、引流广告、不良等违规内容,并支持返回大模型的审核结果。结合大模型和专家小模型,提供更细粒度的标签(如色情细分、具体行为、特定物体等),识别范围更广、标签更丰富。 综合效果最佳,适合对误判率、漏判率都有较高要求的场景。

  • AIGC图片风险检测

    针对AIGC场景,检测AIGC生成的图片是否存在违规或者不宜传播的内容。建议AIGC生成的图片都进行该项检测。

    针对AIGC场景,检测AIGC生成的图片是否存在违规或者不宜传播的内容。建议AIGC生成的图片都进行该项检测。

0512-88869195
客服微信二维码

微信扫码,咨询客服

数 据 驱 动 未 来
Data Drives The Future