no such identity无法免密登录

啊...这个 nosuchidentity 错误...太烦人了。

我记得去年……2 02 2 年……我在北京遇到了一个奴隶。
当时我就很困惑,连续好几天……这个问题。

最重要的是文件的私钥...方式不对。
例如
请参阅...此错误消息... nosuchidentity:C:Usersrenze/.ssh/id_dsa:Nosuchfileordirectory...它只是告诉您...找不到该文件。

解决办法...是检查...使用ssh命令时...-i后面的路径是否正确。
例如... -iC:/Users/myname/.ssh/id_rsa。

您还应该确认该文件... ls -l 来检查... 看看该文件是否真的存在... 它没有被删除或权限不足。

然后....并且..未生成私钥...或者公钥未添加到服务器的身份验证文件中。

这需要...使用 ssh-keygen 生成该对..
然后...将生成的 id_rsa.pub 文件的内容附加...到服务器的 ~/.ssh/authorized_keys。

啊...这一步...我当时就一头雾水...还好...我上网查了资料...然后就想通了。

另外...还有许可证问题...服务器目录~/...权限必须为7 00...身份验证文件的密钥...DC。

这个...您可以更改 chmod 命令...例如 chmod 7 00 ~/.ssh... chmod 6 00 ~/.ssh/authorized_keys。

有时...服务器配置为这样的StrictModes...然后您必须...确认主列表和文件...与从用户启动相同。

这个...命令用于更改 chown。

哦...还有...SELinux 有问题...如果服务器...上下文安全索引.ssh 已更改...
您可以恢复restorecon -Rv ~/.ssh。

开机时...可以用ssh -vvv...看日志...可以直接报nosuchidentity错误吗...
或者...扫描服务器日志.../var/log/secure或者journalctl -u sshd...都可以找到。

嗯...仅此而已。

也许我有点极端...但是这个问题...真的很烦人。

学会Linux系统基本配置、用户授权、ssh免密登录操作

说白了,Linux配置的核心部分有三个:更改主机名、检查用户权限、顺利SSH登录。

我们先来说说最重要的事情。
更改主机名时,还必须更改 /etc/hosts。
去年我们运行集群项目时,只改了主机名,却忘了改hosts。
结果对方机器无法ping通。
说实话,当时确实挺尴尬的。
还有一点就是,为了授权,不要只加sudoers。
还必须使用 chown 来转移特定文件或目录的权限,例如为用户创建软目录。
否则直接访问还是4 03 很多人不注意这一点。
还有另一个关键细节。
必须正确设置SSH无密码登录密钥权限。
CentOS默认的authorized_keys只有4 00个权限。
起初我以为我可以随意更改它,但后来我发现我什至无法连接到我的 SSH。

等等,还有一件事。
将 ssh-keygen 密码留空是危险的。
虽然很方便,但是遇到的人都可以直接sudo。
建议添加随机密码。

建议多在虚拟机上练习,尤其是sudoers。
如果修复了错误,就直接锁root了,哭都来不及了。