Linux之SSH
一、SSH概述
1.1SSH基础
1.1.1SSH概述
SSH(Secure Shell)是一种安全通道协议,主要用来实现字符界面的远程登录、远程 复制等功能。SSH 协议对通信双方的数据传输进行了加密处理,其中包括用户登录时输入的用户口令,SSH 为建立在应用层和传输层基础上的安全协议。对数据进行压缩,加快传输速度。
1.1.2SSH优点
- 数据传输是加密的,可以防止信息泄漏
- 数据传输是压缩的,可以提高传输速度
1.1.3SSH功能
-
SSH主要是由两个功能,分别是SSH远程链接服务和SFTP文件传输功能
-
为什么要使用SSH服务远程控制和传输文件
SSH是加密传输的,Telnet是明文传输,相比之下,SSH是比较可靠的 -
SSH主要配置文件
- sshd:服务名称
- /usr/sbin/sshd:服务端主程序
- /etc/ssh/sshd_config:服务端配置文件
- /etc/ssh/ssh_config:客户端配置文件
1.2SSH原理
第一次连接时,客户发起请求,服务端会生成一个会话id
会将会话id和服务端的公钥交给客户端
客户端得到服务端的私钥和会话id
客户端用户会话id+客户端自己的公钥=一个值=a
将这个值 用服务端的公钥加密
服务端的公钥+a=b
将这个b给服务端
服务端得到b后
b-公钥=a 会话id 已知
a-会话id=客户端公钥
1.3SSH配置
该命令可以进入SSH服务端的配置文件
[root@localhost ~]#vim /etc/ssh/sshd_config
1.3.1登陆
ssh [远程主机用户名]@[远程服务器主机名或IP地址] -p port -p: #端口号如果不是默认的22则需要添加该选项 [root@localhost ~]#ssh root@192.168.174.102
ssh -l [远程主机用户名] [远程服务器主机名或IP 地址] -p port -l: #指定登录名称。 -p: #登录端口(当服务端的端口非默认时,需要使用-p 指定端口进行登录)
1.3.2修改默认端口
[root@localhost ~]#vim /etc/ssh/sshd_config #Port 22
1.3.3
二、免密登录
-
ssh-keygen生成密钥文件,设置文件存放路径和密码
-
把公钥传到另一台服务器上
-
远程登陆另一台服务器,免密登陆
本文作者:德国南部之星
本文链接:https://www.cnblogs.com/mtwm/p/17609953.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步