如何在Linux上配置SSH公钥验证?
时间: 2024-09-19 19:01:35 浏览: 74
在Linux上配置SSH公钥验证分为几个步骤:
1. **生成SSH密钥对**:
- 打开终端并导航到用户的主目录(通常是`~`)。
```
ssh-keygen -t rsa
```
输入文件名(默认是`.ssh/id_rsa`),按回车键,然后选择默认选项即可,不需要提供密码。
2. **查看私钥文件**:
查看生成的私钥(`.ssh/id_rsa`)和公钥(`.ssh/id_rsa.pub`),这是为了将公钥复制到需要授权的服务器。
3. **复制公钥到目标服务器**:
- 登录到远程服务器。
```
cd ~/.ssh
```
- 将公钥粘贴到`authorized_keys`文件中,如果没有这个文件就创建它:
```
cat ~/.ssh/id_rsa.pub >> authorized_keys
chmod 600 authorized_keys
```
4. **禁用密码登陆**:
有时候为了安全性,可以修改`sshd_config`文件,取消`PasswordAuthentication`这一行前面的注释,使其变为`PasswordAuthentication no`。重启SSH服务使之生效:
```
sudo nano /etc/ssh/sshd_config
service ssh restart
```
现在你可以使用SSH公钥进行无密码登录,无需输入密码就能从本地机器通过SSH连接到远程服务器。
相关问题:
1. 如果忘记了我的SSH公钥内容,还能恢复吗?
2. 为什么要禁用密码登陆只使用公钥验证?
3. 如何检查远程服务器的SSH配置是否正确?
阅读全文