xshell配置密钥登陆
ssh登录提供两种认证方式:口令(密码)认证方式和密钥认证方式。其中口令(密码)认证方式是我们最常用的一种,这里介绍密钥认证方式登录到linux/unix的方法。
使用密钥登录分为3步:
1、生成密钥(公钥与私钥);
2、放置公钥(Public Key)到服务器~/.ssh/authorized_key文件中;
3、配置ssh客户端使用密钥登录。
首先打开xshell选择工具里的密钥向导,嗯xshell很给力支持中文非破解的哦。
然后选择密钥类型和长度默认的就可以要是你闲短了。。。你可以选择最长的。没必要
然后会出自动生成的过程
下面会让你给你生成的秘要设置一个密码这个密码就是以后你登录主机时候每次都要输入的所以你别乱搞哦。一定要熟记
好了密钥生成完了我们把它保存到桌面因为一会还要用sftp传到主机上用不喜欢码字
完成以后会出现我们本地的私钥这个密钥和银行的密钥差不多你一定要保存好了要是弄丢了以后你也不能连接你的主机了因为你已经把密码登录给关闭了。。。果断保存到桌面并存起来。很重要的哦放qq的网络硬盘里好了
最后导出私钥的时候会再严重一遍你刚才输入的密码
好了公钥和私钥到现在就生成完了下面我们要开始搞主机了。
连上你的ssh
输入命令
cd .ssh/
如果报错了说明没有这个文件夹那你就手动自己用sftp创建一个好了起名.ssh
假设刚才生成的公钥是id_rsa.pub注意区分后缀,我们把它传到/root/.ssh下面
cd .ssh/
ls -l
然后执行
mv /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
再执行:
chmod 600 * 修改权限。这一步很重要!!!
chmod 700 .ssh
rm -rf id_rsa.pub
修改/etc/ssh/sshd_config 文件,将RSAAuthentication 和 PubkeyAuthentication 后面的值都改成yes ,把前面的#删掉然后保存。service sshd restart重启下ssh服务.
然后用客户端尝试用密钥连接主机。如果正确的话会出现下面的对话框。
输入你设置的密码就可以登录主机了是不是很简单。
接下来我们要修改远程Linux服务器sshd服务配置,
1、修改/etc/ssh/sshd_config 文件把PasswordAuthentication yes 修改成 PasswordAuthentication no并把前面的#去掉
2、重启sshd服务
service sshd restart centos5/6
systemctl restart sshd centos7以上
ok,设置完成。
再提醒一下一定要保存好Putty私钥文件id_rsa.ppk或Linux服务器下载下来的id_rsa私钥文件。从此之后,服务器不再接受密码认证,客户端必须使用密钥才能正常登录。不过一定要注意密钥不要搞丢了,不然自已也不能远程登录系统了。
评论已关闭