searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

Linux机器间ssh方式通信

2023-06-29 02:42:10
54
0

一、ssh通信方式释义:

SSH(Secure Shell,安全外壳)是一种网络安全协议,通过加密和认证机制实现安全的访问和文件传输等业务,建立SSH客户端和SSH服务器之间的安全隧道,在不安全的网络环境中提供了安全的网络服务。

二、ssh通信方式原理:

SSH由服务器和客户端组成,为建立安全的SSH通道,双方需要先建立TCP连接,然后协商使用的版本号和各类算法,并生成相同的会话密钥用于后续的对称加密。在完成用户认证后,双方即可建立会话进行数据交互。

1、TCP连接的建立:

SSH依赖端口进行通信。在未建立SSH连接时,SSH服务器会在指定端口侦听连接请求,客户端向服务器该指定端口发起连接请求后,双方建立一个TCP连接,后续会通过该端口通信。服务器默认使用 22 端口号,该端口号可以进行修改。

2、版本协商:

SSH服务器通过建立好的连接向SSH客户端发送支持的SSH版本信息,客户端收到信息后,根据自身支持的版本决定使用的版本号,并发送给服务器,服务器判断这个版本号是否支持,从而确定版本写上是否成功。目前有SSH1.X和SSH2.0两个版本。

3、算法协商:

SSH工作过程中需要使用多种类型的算法,服务器和客户端对每种类型中具体算法的支持情况不同。因此双方分别向对方发送自己支持的算法、依次协商每种类型中具体使用的算法。在每类算法的协商过程中,服务器和客户端都会匹配出双方均支持的算法作为最终使用的算法。需要每类算法均匹配成功,否则协商失败并断开连接。

4、密钥交换:

由SSH服务器和客户端共同生成会话密钥,利用数学定律可以保证服务器和客户端生成的对称密钥相同。

SSH服务器和客户端通过密钥交换算法,动态生成共享的会话密钥和会话ID,建立加密通道。会话密钥主要用于后续数据传输的加密,会话ID用于在认证过程中标识该SSH连接。

5、用户认证:

密码认证:客户端通过用户名和密码的方式进行认证,将加密后的用户名和密码发送给服务器,服务器解密后与本地保存的用户名和密码进行对比,并向客户端返回认证成功或失败的消息。

ssh -p 22 root@10.111.111.11      #ssh -p 监听端口 用户名@服务器IP

密钥认证:客户端通过用户名,公钥以及公钥算法等信息来与服务器进行认证(把公钥放在需要访问的服务器上。客户端向服务器发出请求,服务器收到请求之后,先在服务器上客户端主目录下寻找公钥,然后把它和客户端发送过来的公钥进行比较。如果两个密钥一致,服务器就用公钥加密“质询”并把它发送给客户端软件。客户端软件收到“质询”之后就可以用私钥在本地解密再把它发送给服务器完成登录)。

#密钥存放地址
vi /home/root/.ssh/id_rsa.pub                 #客户端的公钥
vi /home/root/.ssh/authorized_keys            #服务端

密钥密码双认证:同时满足密钥和密码认证才算成功。

all认证:满足上述任意一种都算成功。

6、会话请求:

SSH客户端向服务器发送会话请求,请求服务器提供某种类型的服务,即请求与服务器建立相应的会话。服务器根据客户端请求进行回应。

7、数据交互:

会话建立后,SSH服务器端和客户端在该会话上进行数据信息的交互,双方发送的数据均使用会话密钥进行加解密。

三、ssh通信方式应用:

1、安全的网络服务:

通过加密和认证机制实现安全的访问,如上述密钥进行加密解密处理,避免中间人攻击者伪装成服务器进行攻击。

#sshd配置文件地址,配置 用户认证方式
vi /etc/ssh/sshd_config                 #配置文件地址
PermitRootLogin                         #root用户登录方式 参数
PubkeyAuthentication                    #密钥登录 参数
PasswordAuthentication                  #密码登录 参数
service sshd restart                    #重启sshd

2、文件传输:

scp /home/test.txt work@192.11.11.11:/home/                           #把本地的test.txt文件拷贝到192.11.11.11机器上的/home目录下
scp work@192.11.11.11:/home/test.txt /home/                           #把192.11.11.11机器上的test.txt文件拷贝到本地的/home目录下
scp work@192.11.11.11:/home/test.txt work@192.22.22.22:/home/         #把192.11.11.11机器上的test.txt文件拷贝到192.22.22.22机器的/home目录下
scp -r /home/testdir work@192.11.11.11:/home/                         #拷贝文件夹,加-r参数
scp -r /home/testdir work@www.test.com:/home/                         #使用主机名
scp -r -v /home/testdir work@www.test.com:/home/                      #显示详情,加-v参数

 

 

 

0条评论
0 / 1000
w****n
2文章数
0粉丝数
w****n
2 文章 | 0 粉丝
w****n
2文章数
0粉丝数
w****n
2 文章 | 0 粉丝
原创

Linux机器间ssh方式通信

2023-06-29 02:42:10
54
0

一、ssh通信方式释义:

SSH(Secure Shell,安全外壳)是一种网络安全协议,通过加密和认证机制实现安全的访问和文件传输等业务,建立SSH客户端和SSH服务器之间的安全隧道,在不安全的网络环境中提供了安全的网络服务。

二、ssh通信方式原理:

SSH由服务器和客户端组成,为建立安全的SSH通道,双方需要先建立TCP连接,然后协商使用的版本号和各类算法,并生成相同的会话密钥用于后续的对称加密。在完成用户认证后,双方即可建立会话进行数据交互。

1、TCP连接的建立:

SSH依赖端口进行通信。在未建立SSH连接时,SSH服务器会在指定端口侦听连接请求,客户端向服务器该指定端口发起连接请求后,双方建立一个TCP连接,后续会通过该端口通信。服务器默认使用 22 端口号,该端口号可以进行修改。

2、版本协商:

SSH服务器通过建立好的连接向SSH客户端发送支持的SSH版本信息,客户端收到信息后,根据自身支持的版本决定使用的版本号,并发送给服务器,服务器判断这个版本号是否支持,从而确定版本写上是否成功。目前有SSH1.X和SSH2.0两个版本。

3、算法协商:

SSH工作过程中需要使用多种类型的算法,服务器和客户端对每种类型中具体算法的支持情况不同。因此双方分别向对方发送自己支持的算法、依次协商每种类型中具体使用的算法。在每类算法的协商过程中,服务器和客户端都会匹配出双方均支持的算法作为最终使用的算法。需要每类算法均匹配成功,否则协商失败并断开连接。

4、密钥交换:

由SSH服务器和客户端共同生成会话密钥,利用数学定律可以保证服务器和客户端生成的对称密钥相同。

SSH服务器和客户端通过密钥交换算法,动态生成共享的会话密钥和会话ID,建立加密通道。会话密钥主要用于后续数据传输的加密,会话ID用于在认证过程中标识该SSH连接。

5、用户认证:

密码认证:客户端通过用户名和密码的方式进行认证,将加密后的用户名和密码发送给服务器,服务器解密后与本地保存的用户名和密码进行对比,并向客户端返回认证成功或失败的消息。

ssh -p 22 root@10.111.111.11      #ssh -p 监听端口 用户名@服务器IP

密钥认证:客户端通过用户名,公钥以及公钥算法等信息来与服务器进行认证(把公钥放在需要访问的服务器上。客户端向服务器发出请求,服务器收到请求之后,先在服务器上客户端主目录下寻找公钥,然后把它和客户端发送过来的公钥进行比较。如果两个密钥一致,服务器就用公钥加密“质询”并把它发送给客户端软件。客户端软件收到“质询”之后就可以用私钥在本地解密再把它发送给服务器完成登录)。

#密钥存放地址
vi /home/root/.ssh/id_rsa.pub                 #客户端的公钥
vi /home/root/.ssh/authorized_keys            #服务端

密钥密码双认证:同时满足密钥和密码认证才算成功。

all认证:满足上述任意一种都算成功。

6、会话请求:

SSH客户端向服务器发送会话请求,请求服务器提供某种类型的服务,即请求与服务器建立相应的会话。服务器根据客户端请求进行回应。

7、数据交互:

会话建立后,SSH服务器端和客户端在该会话上进行数据信息的交互,双方发送的数据均使用会话密钥进行加解密。

三、ssh通信方式应用:

1、安全的网络服务:

通过加密和认证机制实现安全的访问,如上述密钥进行加密解密处理,避免中间人攻击者伪装成服务器进行攻击。

#sshd配置文件地址,配置 用户认证方式
vi /etc/ssh/sshd_config                 #配置文件地址
PermitRootLogin                         #root用户登录方式 参数
PubkeyAuthentication                    #密钥登录 参数
PasswordAuthentication                  #密码登录 参数
service sshd restart                    #重启sshd

2、文件传输:

scp /home/test.txt work@192.11.11.11:/home/                           #把本地的test.txt文件拷贝到192.11.11.11机器上的/home目录下
scp work@192.11.11.11:/home/test.txt /home/                           #把192.11.11.11机器上的test.txt文件拷贝到本地的/home目录下
scp work@192.11.11.11:/home/test.txt work@192.22.22.22:/home/         #把192.11.11.11机器上的test.txt文件拷贝到192.22.22.22机器的/home目录下
scp -r /home/testdir work@192.11.11.11:/home/                         #拷贝文件夹,加-r参数
scp -r /home/testdir work@www.test.com:/home/                         #使用主机名
scp -r -v /home/testdir work@www.test.com:/home/                      #显示详情,加-v参数

 

 

 

文章来自个人专栏
文章 | 订阅
0条评论
0 / 1000
请输入你的评论
0
0