美图齐众专注资阳网站设计 资阳网站制作 资阳网站建设
资阳网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

CentOS8中如何设置SSH密钥

在我们平时使用Linux系统时候,通常使用的Linux SSH登录方式是用户名加密码的登录方式,今天来探讨另外的一种相对安全的登录方式——密钥登录。

创新互联建站专注为客户提供全方位的互联网综合服务,包含不限于网站设计制作、网站设计、铁岭网络推广、微信小程序定制开发、铁岭网络营销、铁岭企业策划、铁岭品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联建站为所有大学生创业者提供铁岭建站搭建服务,24小时服务热线:028-86922220,官方网址:www.cdcxhl.com

环境

客户端:CentOS8 192.168.43.137

服务端:CentOS8 192.168.43.139

创建SSH公私钥

通过输入以下命令,生成新的4096位的SSH密钥对:

[root@localhost ~]# ssh-keygen -t rsa -b 4096
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:ycOtSDK8ud2kd6EH7OxoQuc1BFb1HJ3T/kvAQJt0LrI root@localhost.localdomain
The key's randomart image is: +---[RSA 4096]----+ |       ...oo.o o | |      o   .+=.+ .| |     . . . +=. o | |   .   o.oo .o  .| |    + .oSE.   . .| |    .*..=o.    ..| |   .oo.+o+ .  . .| |    .oo== o    . | |    .o+ooo       | +----[SHA256]-----+ 

想要验证是否生成了新的SSH密钥对,使用ls -l命令查看~/.ssh目录是否有刚才生成的文件:

[root@localhost ~]# ll ~/.ssh/
total 8
-rw------- 1 root root 3389 May 13 08:26 id_rsa
-rw-r--r-- 1 root root  752 May 13 08:26 id_rsa.pub

将公钥复制到远程服务器,使用ssh-copy-id实用程序,输入远程服务器的root密码:

[root@localhost ~]# ssh-copy-id root@192.168.43.139
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
The authenticity of host '192.168.43.139 (192.168.43.139)' can't be established. ECDSA key fingerprint is SHA256:7O1oIOooh4NZG87aC3v1Zz/vcTXkjOhQBnlkY0CD4y0. Are you sure you want to continue connecting (yes/no)? yes /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys Password: Number of key(s) added: 1 Now try logging into the machine, with:   "ssh 'root@192.168.43.139'" and check to make sure that only the key(s) you wanted were added. 

也可以使用以下命令复制公钥:

[root@localhost .ssh]# cat ~/.ssh/id_rsa.pub | ssh root@192.168.43.139 "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

使用密钥登录服务器

使用以下命令登录ssh服务器:

[root@localhost ~]# ssh 192.168.43.139
Last login: Tue May 12 12:33:41 2020 from 192.168.43.137

在CentOS8中设置SSH密钥在CentOS8中设置SSH密钥

关闭密码认证

登录服务器端,关闭密码认证:

[root@localhost ~]# ssh 192.168.43.139
Last login: Tue May 12 12:33:41 2020 from 192.168.43.137
[root@localhost ~]# vim /etc/ssh/sshd_config
搜索一下三条,将选项改为No
PasswordAuthentication no
ChallengeResponseAuthentication no
UsePAM no

重启sshd服务:

[root@localhost ~]# systemctl restart sshd

总结

可以使用同一密钥管理多个远程服务器。默认情况下,SSH的端口是TCP 22。更改默认SSH端口可降低自动攻击的风险。


名称栏目:CentOS8中如何设置SSH密钥
本文链接:http://www.zsjierui.cn/article/dhehgjd.html