添加 ssh 密钥会导致“连接被关闭”

添加 ssh 密钥会导致“连接被关闭”

我正在尝试将我的 ssh 密钥对添加到 ssh 服务器,这样我就可以无密码登录。

当我通过创建.svn 和authorized_keys将我的公钥添加到我的服务器时,当我删除它时我可以再次登录(带有密码提示)。

不知道还能做什么,但我尝试生成 rsa ssh-keygen -t rsa。不知道还能做什么。谢谢大家

答案1

使用 SSH 设置无密码登录时最常见的问题是.ssh目录和authorized_keys文件的权限错误。SSH 对权限要求很高 - 这是有原因的;错误的权限可能会危及您的安全。

权限至少应具有以下限制:

$ ls -la .ssh
total 28
drwx------ 2 user group  4096 2011-10-05 16:08 .
drwxr-xr-x 4 user group  4096 2012-04-03 12:16 ..
-rw------- 1 user group   405 2011-10-05 16:08 authorized_keys
-rw-r--r-- 1 user group 15912 2012-03-24 10:17 known_hosts

您可以通过以下方式实现此目的:

chmod 700 .ssh
chmod 600 .ssh/authorized_keys

第二个最常见的错误是拼写authorised_keys正确,但 SSH 忽略该文件,因为它是由美国人编写的。

权限错误消息出现在服务器上、日志中而不是客户端中,因此找到它可能很棘手。

我也遇到过这样的问题:我的公钥在 中被分成两行.ssh/authorized_keys。由于分割发生在行尾,所以不太明显。像 这样的编辑器vi很容易分辨。调整终端窗口的大小也会导致它重新换行并清晰显示任何分割线。

我以为你.ssh问的意思是 而不是.svn。如果你确实创建了一个.svn目录,则需要将其更改为ssh

答案2

您需要确保您尝试通过 ssh 连接的用户 ID 也在目标服务器上的 access.conf 中

#ADD 仅限于包含在此行正下方

+:吉姆:全部

答案3

您的问题很难解析,但我不知道您认为“.svn”会完成什么。

您的公钥必须添加到 ~/.ssh远程系统上的 /authorized_keys 文件。

man ssh了解详情。

答案4

只需将用户密码设置为“*”——即可防止用户名/密码登录

相关内容