侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130562 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

CentOS7 SSH使用证书免密登录简介

2023-11-08 星期三 / 0 评论 / 0 点赞 / 56 阅读 / 4819 字

提要: 一、创建新用户 二、生成免密证书及服务器端配置修改 三、使用证书免密登录 一、创建新用户 1、创建新用户 创建新用户hulk,如下: [root@localhost ~]# adduser h

提要:

一、创建新用户

二、生成免密证书及服务器端配置修改

三、使用证书免密登录

一、创建新用户

1、创建新用户

创建新用户hulk,如下:

[root@localhost ~]# adduser hulk

为新用户配置密码,如下:

[root@localhost ~]# passwd hulk

2、配置sudo

注意:新创建的用户是不能使用sudo命令的,需要修改配置文件,让他拥有sudo权限。

[root@localhost ~]# cat /etc/sudoers

我们需要修改/etc/sudoers配置文件,如下:

[root@localhost ~]vim /etc/sudoers## Allow root to run any commands anywhereroot ALL=(ALL) ALL# new use hulkhulk ALL=(ALL) ALL 

在root ALL(ALL) ALL 下增加一行,新用户的配置,wq保存退出。

注意如果修改sudoers文件报错,如下图:

可以先查看下sudoer文件是否拥有写权限,如下

[root@localhost ~]# ls -l /etc/sudoers

如果没有写权限,请先授予它可写的权限即可

[root@localhost ~]# chmod -v u+w /etc/sudoers

修改完成后,别忘了再把sudoers权限改回来

[root@localhost ~]# chmod -v u-w /etc/sudoers

完成后,就可以使用新用户登录啦,使用sudo

[root@localhost ~]# sudo cat /etc/passwd

注意:sudo命令会提示输入密码,如果不想每次都输入密码,我们可以将sudoers配置的最后一个ALL改为NOPASSWD:ALL即可。

二、生成免密证书及服务器端配置修改

1、生成用于SSH登录的公钥和私钥(例子为hulk用户)

我们进入.ssh目录,查看

发现目录下生成了2个文件,其中id_rsa为私钥,id_rsa.pub为公钥

2、导入公钥

3、修改SSH配置文件,让它支持使用证书登录(需要root权限)

[root@localhost ~]# vim /etc/ssh/sshd_config

查找RSAAuthentication、StrictModes、PubkeyAuthentication、AuthorizedKeysFile把所在行修改为:

RSAAuthentication yesStrictModes noPubkeyAuthentication yesAuthorizedKeysFile .ssh/authorized_keys

重启SSH服务

[root@localhost ~]# systemctl restart sshd.service

三、使用证书免密登录

1、Windows客户端配置Xshell使用证书登录

(1)将生成的私钥,保存到本地计算机中

(2)打开Xshell,用户身份验证-->

方法:请选择Public Key

用户名:请输入用户名

用户秘钥,请选择你保存好的私钥导入即可(如下图)

 

至此,我们就可以免密登录CentOS主机啦!

2、MAC客户端配置登录

.

       对于MAC电脑,不需要额外装什么软件,直接用 ssh -i [私钥文件路径] 服务器IP 就可以免密登录了。
具体操作如下:
1. 打开MAC电脑上的终端窗口。
2. cd ~/.ssh (如果没有 .ssh 文件夹,就 mkdir ~/.ssh )
3. 将 id_rsa 私钥文件 copy 到 ~/.ssh 下,如: ~/.ssh/myserver
3. chmod 700 ~/.ssh
4. chmod 600 ~/.ssh/myserver
5. 可以用 ssh 命令登录了,命令格式如下:

ssh -i [私钥文件路径] -p [SSH端口] [登录名]@[服务器IP]

如果SSH端口是默认的 22 ,可以不需要 -p [SSH端口] 。如:

ssh -i ~/.ssh/myserver hulk@[服务器IP]

 

.

欢迎大家关注懒也要有正确的方式公众号

广告 广告

评论区