使用密钥登录分为以下步骤:
1、生成密钥(公钥与私钥)
2、放置公钥(Public Key)到服务器指定用户目录的 .ssh/authorized_key文件中;
3、配置SSH客户端使用密钥登录。
4、测试密钥登陆成功后关闭密码登录。【可选】
1.生成密钥
cd /root/.ssh #进入指定用户的.ssh目录
ssh-keygen -t rsa
复制代码
[root@springcore .ssh]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase): #### 要设置密码的话 就在这里输入【可直接为空跳过】
Enter same passphrase again: #### 重复输入密码
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:syK0IidyNKGBvLWCLYBIxP3bqthqeBWr/ehCuGwU8WQ root@springcore
The key’s randomart image is:
±–[RSA 3072]----+
|oo. |
|o E |
|.… |
|o=ooo. |
|++=…oo S |
|.+oooo . o |
|Bo++o o . |
|+O…+ . |
|o+.=+… |
±—[SHA256]-----+
复制代码
执行后会生成id_rsa和id_rsa.pub两个文件,id_rsa是私钥(重要,不能外泄),id_rsa.pub是公钥。
2.放置公钥(Public Key)到服务器指定用户目录的 .ssh/authorized_key文件中
1.查看authorized_key文件是否存在,不存在则创建并赋予600权限
touch authorized_keys
chmod 600 ./authorized_keys
2.将公钥内容追加到authorized_keys文件中。
cat id_rsa.pub >> authorized_keys
3.为了确保连接成功,赋予.ssh文件夹700权限
chmod 700 ~/.ssh ###修改为指定用户的ssh目录,这里以root用户为例
3、配置SSH客户端使用密钥登录。
1.修改SSH配置
vi /etc/ssh/sshd_config
修改以下配置项
复制代码
开启私钥登录[RSAAuthentication (rsa认证)是只支持第一代SSH通讯协议使用的配置项,在CentOS7.3之后的版本中被废除了,因为默认使用第二代协议了]
RSAAuthentication yes
开启 公私钥登录认证
PubkeyAuthentication yes
root 用户能否通过 SSH 登录
PermitRootLogin yes
添加 公钥的保存文件
AuthorizedKeysFile .ssh/authorized_keys
复制代码
2.刷新SSH服务
service sshd restart(如果是CentOS 7则使用systemctl restart sshd.service)
4、测试密钥登陆成功后关闭密码登录。【可选】
1.修改SSH配置
vi /etc/ssh/sshd_config
修改以下配置项
PasswordAuthentication no
2.刷新SSH服务文章来源:https://www.toymoban.com/news/detail-534383.html
service sshd restart(如果是CentOS 7则使用systemctl restart sshd.service)文章来源地址https://www.toymoban.com/news/detail-534383.html
到了这里,关于Linux设置密钥登录的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!