Ssh远程登陆服务及xshell免密登陆
1.了解ssh:
Ssh是一个建立在应用层上的安全管理协议,使用的是22端口,采用的是密文传输,相较于明文传输的Telnet协议,具有更高的安全性。
2. ssh远程登陆的两种模式及其工作原理
1)账户密码登陆:
![](https://i-blog.csdnimg.cn/blog_migrate/339ce803321fd3e8fe28b785b966ca18.png)
在登陆过程中,首先客户端对服务器端发起连接请求;服务器端接收到连接请求之后,会将自己的公钥发给客户机端;客户端输入密码,并通过公钥将密码进行加密传输给服务器端,服务器端使用自己的私钥对加密的密码进行解析,将解析后的密码和自己设置的密码进行对比,如果一致建立联系,如果不同,进行丢弃。
2)密钥对验证:
使用密钥对进行登录,首先需要客户端创建一对密钥对,使用ssh-keygen -t 密钥类型 -b 密钥位数进行创建;然后将自己的公钥发送给服务器端,并将发送的公钥发送到服务器端的要登陆用户的家目录下的.ssh/下,命名为authorized_keys,使用ssh-copy-id 用户名@服务器IP地址,可以直接在服务器端用户家目录下.ssh/下创建公钥authorized_keys。使用密钥对连接原理如下:
3. 使用windows客户端远程登陆软件对服务器进行免密登陆
Windows常用的远程登陆Linux服务器的第三方软件主要是xshell,主要以xshell进行讲解:
a:首先使用xshell建立自己的密钥对:①打开工具中的“新建用户密钥生成导向”;
②根据提示建立密钥对;
③点击“用户密钥管理者”;
④点击属性,点击公钥,建立文本将公钥复制;
b:将生成的文件传输进Linux中
使用rz命令将文件导入到Linux中的家目录下,使用cat 文件 >/root/.ssh/authorized_keys以追加的方式,将公钥写入,如果没有对应目录,使用mkdir和touch对目录及文件进行创建(目录及文件名字不能错);
c:在xshell中设置远程登陆相关设置:
①点击文件,新建用户,调出如下界面:
修改名称为要连接服务器的主机号,主机改为要连接主机的IP地址;
②点击用户身份验证
点击Public Key,取消Password,输入用户名及对应密码。
③第一次登陆时将验证方式改为
并选择对应的私钥的名称,点击不再提示。
总结:这样就可以实现xshell免密登陆了!
注:在生成密钥对时不要设置密码,不然免密登陆就没有意义了。