在终端中使用 ssh 命令连接到服务器

在终端中使用 ssh 命令连接到服务器

我在运行最新操作系统的 MacBook Pro 上,并使用命令连接到终端中的服务器,ssh以连接到我所在大学的其中一台服务器。我们使用用户名连接,然后必须输入密码才能访问服务器,我被告知有一种方法可以配置我的设置,这样我就不必每次想要连接服务器时都输入密码。

这是我的计算机上的设置还是我必须通过终端进行配置?

答案1

首先,您需要在本地机器上生成一个安全的 SSH 密钥:

ssh-keygen

浏览密钥生成器并设置密码,密钥文件默认进入~/.ssh/id_rsa

接下来,您需要将生成的密钥复制到您想要设置无密码登录的远程服务器,这可以通过以下命令轻松完成:

cat ~/.ssh/id_dsa.pub | ssh user@remotehost 'cat >> ~/.ssh authorized_keys'

此命令从本地计算机获取生成的 SSH 密钥,通过 SSH 连接到远程主机,然后使用 cat 将密钥文件附加到远程用户授权密钥列表中。由于这会使用 SSH 连接到远程计算机,因此您需要输入密码才能使用此命令。

最后,确认您现在可以无需密码登录远程 SSH 服务器:

ssh [email protected]

假设初始设置按预期进行,您将连接到远程机器而无需登录。

答案2

抱歉,我无法发表评论。您可以在此处查看一些解决方案:askubuntu.com/questions/46930/how-can-i-set-up-password-less-ssh-login

不过,我确实找到了另一个解决方案:
在终端(在您的设备上)中,执行ssh-keygen,然后继续按回车键(不要输入任何密码),直到再次出现终端提示符,然后输入
ssh-copy-id -i ~/.ssh/id_rsa.pub username@ip_address 然后尝试使用

ssh username@ip_address

相关内容