Centos7 SSH密钥登陆及密码密钥双重验证详解
- 本文目录导读:
- 1、生成公私钥
- 2、上传公匙至服务器
- 3、修改sshd_config配置文件
在使用CentOS 7进行SSH登陆的过程中,我们可以选择使用密码或者密钥进行认证。其中,密码方式相对较为简单,但存在安全性不高的问题;而采用SSH密钥则更加安全可靠。本文将介绍如何在CentOS 7上配置SSH密钥登陆,并实现密码和密钥双重验证。
一、生成公私钥
第一,在客户端上生成公私钥:
1. 打开终端,输入命令ssh-keygen -t rsa -C "your_email@example.com"(注:your_email@example.com替换成你自己的邮箱地址),然后按照提示操作即可。
2. 在用户目录下找到.ssh文件夹,里面应该有两个文件id_rsa和id_rsa.pub,前者是私钥文件,后者是公钥文件。
二、上传公匙至服务器
接着,在服务器上添加用户,并上传客户端生成的公匙:
1. 创建新用户并设置登录密码:useradd username && passwd username(注:username替换成你想要创建的用户名)
2. 利用scp工具将客户端生成的公匙传输到服务器上:scp ~/.ssh/id_rsa.pub username@server_ip:~/.ssh/authorized_keys(注:server_ip替换成你所连接的远程主机IP地址)
三、修改sshd_config配置文件
最后,在服务器上修改sshd_config配置文件,实现密码和密钥双重验证:
1. 打开终端,输入命令sudo vim /etc/ssh/sshd_config,并找到如下两行代码:
#PasswordAuthentication yes
#ChallengeResponseAuthentication no
2. 将第一行的注释去掉,并将yes改为no,即:PasswordAuthentication no。
3. 同时将第二行的注释去掉,并将no改为yes,即:ChallengeResponseAuthentication yes。
4. 保存并退出vim编辑器。
5. 最后重启SSH服务:sudo service sshd restart
至此,在CentOS 7上配置SSH密钥登陆及密码密钥双重验证就完成了。我们可以通过以下步骤进行测试:
1. 在客户端打开终端,输入命令ssh username@server_ip(注:username替换成你所创建用户的用户名;server_ip替换成你所连接的远程主机IP地址)
2. 如果提示需要输入密码,则说明双重验证成功。否则,请检查以上步骤是否正确操作。
总结
采用SSH密钥登陆方式相对于传统的用户名和密码认证更加安全可靠。同时使用密码和密钥双重验证方式能够进一步提高系统安全性。希望本文能够对大家有所帮助!