龙空技术网

CentOS8服务器进阶(八)SSH远程密钥登录详解

学者学者 199

前言:

现时我们对“netrsa解密”大概比较重视,咱们都想要剖析一些“netrsa解密”的相关知识。那么小编同时在网摘上汇集了一些有关“netrsa解密””的相关内容,希望兄弟们能喜欢,姐妹们一起来学习一下吧!

导读:

尊敬的读者朋友,请您带着问题去阅读这篇文章,因为我想分享给你的是应对问题的方法,而不仅仅局限于解决问题的步骤。本文是《CentOS8服务器进阶》系列的第七篇,稍后还会持续更新该系列的文章,旨在为您解决开发中遇到的疑难杂症。上一期博文地址:

一、实验环境

1.Windows10电脑

2.Vmware虚拟机

3.CentOS8服务器

4.cmder软件

二、问题思考

【问题A】上一期分享中,我们分享了SSH远程口令操作,也就是账号密码登录,那Linux中有没有像APP一样免密登录呢?

【问题B】配置了免密登录,但是每次还要输入IP地址以及用户名,好麻烦,怎么办?

三、解决措施

学习的时候,多想一想身边实实际际发生的例子,会让你的学习事半功倍,比如SSH远程操作口令,读者朋友们不要把它想的太神秘,所谓远程操作口令就跟我们平时远程用账号密码登录QQ一样简单;那么远程密钥登录又是什么样呢?也很简单,跟大家平时在电脑上免密登录QQ一样,只要你登录时勾选了【记住密码】功能,下一次登录时就不用输入账号密码。

1.所以有了上述的铺垫,我们先解决【问题A】,Linux中也有所谓的免密登录,专业术语叫做【密钥登录】,密钥登录的原理概括起来有以下三点:

(1)在客户端,用ssh-keygen.exe软件,生成一个公钥和一个私钥,相当于保险柜和钥匙。

(2)将公钥放在服务器的特定目录下,好比把保险柜放在服务器中。

(3)下次登录请求后,服务器把公钥返回给客户端,如果正确解密,就可以登录,相当于服务器把保险柜给你,要是用你的钥匙可以打开保险柜,那么你就可以登录。

所以我们按照上述原理一步步实现免密登录,首先打开cmder软件,没有该软件的读者朋友可到【】地址下载,打开后使用命令【ssh-keygen -t rsa】生成公钥和密钥,输入命令后按四次回车即可,注意下图中红色方框部分为密钥保存路径。

#在客户端生成密钥和公钥

ssh-keygen-t rsa

登录服务器,创建一个存放保险柜(公钥)的地方,在cmder中使用命令【ssh root@192.168.43.245】命令登录,root是我的用户名,后面的IP地址是我自己服务器的IP地址,读者朋友敲命令时请记得换成自己的,注意此时我还需要密码才能登录,如图

登录服务器后创建目录【.ssh】,命令如下

#创建目录

mkdir/root/.ssh

#切换到root目录下

cd/root

#查看

.ssh文件夹 ls-a

下一步,需要把公钥传输到服务器的【/root/.ssh/】目录下,在cmder中输入命令【 scp C:\Users\Dell.ssh\id_rsa.pub root@192.168.43.245:/root/.ssh】,命令分为三部分,第一部分是我自己电脑中公钥的位置,第二部分是登录服务器的用户名和IP地址,第三部分服务器保存公钥的目录,如图

下一步,登录服务器,将刚刚传输的公钥改名为【authorized_keys】,命令为【mv id_rsa.pub authorized_keys】,再次使用cmder软件登陆服务器,就可以免密登录,如图

在解决【问题A】的基础上,我们可以继续优化,使用别名登录。在cmder中切换到公钥目录下,创建config配置文件,如图

Host xzxz

HostName 192.168.43.245

Port 22

User root

IdentityFile c:\Users\Dell\.ssh\id_rsa

保存配置文件后,用别名登录服务器,如图

四、总结

要理解Linux的SSH密钥登录,可以从身边的例子入手,免密登录QQ就是一个活生生的例子。密钥和公钥也很好理解,密钥就相当于你自己的钥匙,私有的;公钥就相当于保险柜,只有你自己的钥匙才能打开你的保险柜。所以读者朋友们在运营Linux时千万不能泄露你的私钥哟。

五、资料分享

(1)《阿里巴巴Java开发手册》终极版

(2)《阿里巴巴Java开发手册》书籍版

(3)需要资料的朋友私信或关注我获取

一如既往,期待您的真知灼见…,centOS8系列文章以及面试大厂必备编程资料将为大家持续更新,点赞、转发,将知识传播出去。如资料获取失败或对文中内容有所疑惑,请在评论区留言或私信。 如果发现错误的地方,可以的话麻烦指点下,特别感谢!

标签: #netrsa解密