Linux网络服务-1-1-ssh双向秘钥对验证-2-配置

Linux网络服务-1-1-ssh双向秘钥对验证-2-配置

Scroll Down

设置服务器只允许使用本地private key登录服务器,一定程度上增加安全性

1、首先使用ssh-keygen生成public/private key,ssh-keygen命令也会自动创建.ssh目录

参数解析:-t type密钥类型(rsa、dsa...),-f生成文件名,-C备注

image.png

*.pem 主要用来https,这个相当于被签名的公钥,也就是证书
*.pub 这个就是公钥,主要用来ssh登录
*.pem里可以是公钥也可以是私钥,而.pub是 openssh 使用的公钥

2、查看生成的pub文件(public key),并将其重定向到user家目录下的.ssh/authorized_keys文件中( 没有此文件就创建它 )

image.png

3、修改authorized_keys文件的权限为600,仅允许本用户使用

image.png

4、编辑sshd配置文件/etc/ssh/sshd_config

# 启用公告密钥配对认证方式
PubkeyAuthentication yes 

# 设定PublicKey文件路径,一般为当前用户家目录下等我.ssh/authorized_keys文件
AuthorizedKeysFile .ssh/authorized_keys 

# 表示不能单使用密码进行验证
PasswordAuthentication no  # 表示不能单使用密码进行验证

image.png

5、修改完配置文件,重启sshd服务

image.png

验证操作

6、按照以前的方式使用user的账户密码尝试登录,发现直接无法登陆

image.png

7、使用xshell等终端工具连接时使用private key文件登录

image.png
image.png

登陆成功

image.png