Debian系统设置SSH密钥登陆

在Debian系统中,使用SSH密钥认证可以提高系统的安全性。此外,使用SSH密钥认证还可以免去每次登录时输入密码的麻烦。下面是在Debian中配置SSH密钥认证的详细步骤:

1. 生成密钥对

使用ssh-keygen命令可以生成密钥对。在终端中输入以下命令:

$ ssh-keygen -t rsa -b 4096

-t代表密钥类型,这里使用的是RSA算法;-b代表密钥长度,这里使用的是4096位。

接着,系统会提示输入密钥文件的保存位置和名称,也可直接回车使用默认值。然后会提示输入设置密码,不设密码直接回车即可。

2. 将公钥添加到远程主机

使用ssh-copy-id命令可以将公钥添加到远程主机。在终端中输入以下命令:

$ ssh-copy-id username@remote_host

其中,username是远程主机的登录用户名,remote_host是远程主机的IP地址或域名。

3. 配置sshd服务

在远程主机上修改 /etc/ssh/sshd_config 文件:

$ sudo nano /etc/ssh/sshd_config

确保以下参数设置如下:

PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
ChallengeResponseAuthentication no
PasswordAuthentication no
UsePAM no

4. 重启sshd服务

使用以下命令重启sshd服务:

$ sudo service ssh restart

5. 测试SSH密钥认证

现在可以使用ssh命令连接远程主机,SSH将尝试使用您的SSH密钥进行身份验证。

$ ssh username@remote_host

如果一切正常,您将无需输入密码即可登录到远程主机。