CentOS6和centos7系统中SSH使用证书登录

[ 2021-03-15 13:49:19 | 作者: admin ]
字号: | |
p.s.操作是比较简单,不过一旦开启证书登录必然会禁止密码登录。所以一定要保管好私钥证书,放U盘里面弄丢就傻了


1. 生成用于SSH的公钥和私钥(本例用户为sftpuser)
ssh-keygen -t rsa

会提示输入:密钥存放位置(直接回车,默认在/home/sftpuser/.ssh/)、密码短语、重复密码短语。

完成后在/home/sftpuser/.ssh/目录下生成了2个文件:id_rsa为私钥,id_rsa.pub为公钥。

2. 服务器端导入公钥
这里用追加不直接替换,如果不存在authorized_keys新建立一个,这里可以指定authorized_keys就是公钥的合集
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

3. 设置正确的文件和文件夹权限
chown -R 0700 ~/.ssh
chown -R 0644 ~/.ssh/authorized_keys
chown -R sftpuser:sftpuser /home/sftpuser

开启SELinux时,还需要执行(root用户把/home改成/root)
restorecon -R -v /home


4. 修改SSH配置文件,支持使用证书登录(需要root权限)
vi /etc/ssh/sshd_config

查找RSAAuthentication、StrictModes、PubkeyAuthentication、AuthorizedKeysFile把所在行修改为:
RSAAuthentication yes
StrictModes no
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys #指定验证文件路径

重启SSH服务
systemctl restart sshd.service #centos6用service sshd restart



5. Windows客户端配置Putty使用证书登录
5.1 制作用于Putty的私钥
下载id_rsa到本地;
运行PuTTY Key Generator;
点击File – Load private key(All Files *.*),导入id_rsa文件;
点击Save private key按钮,命名并生成ppk文件,比如ifshow.ppk。
这个ppk文件就是用于Putty的私钥。

5.2 设置putty实现用证书登录
Putty→Session:输入Host Name 或者 IP Address;
Putty→Connection→Data:输入Auto-login username(自动登陆用户名);
Putty→Connection→SSH→Auth:在Private key file for authentication选择私钥文件;
Putty→Session:Saved Session:输入某个名称保存,以后直接双击该名称就可登录。

也可以用带参数的快捷方式执行证书登录,比如:
"D:\PUTTY\PUTTY.EXE" -i "D:\key\ifshow.ppk" ifshow@xxx.xxx.xxx.xxx


6. CentOS 7客户端使用证书登录
ssh命令
ssh -i ~/.ssh/id_rsa remote_username@remote_ip

scp命令
scp -i ~/.ssh/id_rsa local_file remote_username@remote_ip:remote_file

也可以把私钥写入客户端本地SSH配置文件,省去每次手动指定私钥:
vi /etc/ssh/sshd_config

在配置文件中加入:
IdentityFile ~/.ssh/id_rsa

重启SSH服务
systemctl restart sshd.service

7. 服务器修改SSH配置文件,禁止使用密码登录,只允许证书登录
本操作需要root权限。只有在证书登录没有问题才能禁止密码登录,否则不是云主机就只能去机房了。
看上去是免密登录了,但是证书一般会设置一个密码,所以还是需要输入一次私钥证书密码
vi /etc/ssh/sshd_config

查找PasswordAuthentication yes修改为:
PasswordAuthentication no

重启SSH服务
systemctl restart sshd.service 或者 /etc/rc.d/init.d/sshd restart #centos6可用service sshd restart

文章来自: http://my.oschina.net/liting/blog/600098
[最后修改由 admin, 于 2021-03-15 15:53:21]
评论Feed 评论Feed: http://blog.xg98.com/feed.asp?q=comment&id=2775

这篇日志没有评论。

此日志不可发表评论。