SSH-远程连接&文件传输

SSH

常用远程连接软件

  • Putty:PuTTY为一开放源代码软件,只有500多k,小巧轻便,但功能单一

  • SecureCRT:SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单地说是Windows下登录UNIX或Linux服务器主机的软件。缺点是颜色方案不符合大众习惯

  • XShell:Xshell是一个强大的安全终端模拟软件,它支持SSH1, SSH2, 以及Microsoft Windows 平台的TELNET 协议。Xshell 通过互联网到远程主机的安全连接以及它创新性的设计和特色帮助用户在复杂的网络环境中享受他们的工作。缺点:收费

  • MobaXterm:功能强大且免费

SSH

概述

  • SSH是一种网络协议,用于计算机之间的加密登录。用户可以从本地计算机,使用SSH协议远程登录另一台计算机。

  • sshd服务该服务基于SSH协议,用于远程连接,服务随系统自动安装

  • sshd服务

    • 22端口
    • TCP协议
  • 基于C/S架构,客户端ssh,服务端openssh

加密算法

对称加密算法(DES)
  • 发送方使用密钥明文数据加密成密文,发送出去

  • 接收方收到密文后,使用同一个密钥将密文解密成明文

非对称加密算法(RSA)
  • 公钥跟私钥一一对应,公钥可公开,私钥自己私有
  • 接收方将公钥发给发送方
  • 发送方使用接收方发送过来的公钥明文数据加密成密文,发送出去
  • 接收方收到密文后,使用自己本地留存的私钥将密文解密成明文
DES&RSA比较
比较项 对称加密 非对称加密
密钥 相同 不同,但有对应关系
加密速度 较快 较慢
数据传输速度 较快 较慢
安全性 较低 较高

SSH认证

基于用户名密码认证
原理
  • 客户端向服务端发起一个登录请求

  • 服务端将自己的公钥发送给客户端

  • 客户端使用服务端发过来的公钥将自己的密码加密并且发送给SSH服务端

  • 服务端收到客户端发过来的加密密码后使用本地留存的私钥进行解密

  • 服务端将解密出来的密码和/etc/shadow文件里的用户密码对比认证

  • 服务端认证成功,则返回登录成功结果,并发送一个随机会话口令给客户端,该口令用于后面两台主机进行数据传输的一个临时加密会话口令

在这里插入图片描述

远程连接
获取服务端的ip
[root@server ~]# ip a
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:76:f9:7d brd ff:ff:ff:ff:ff:ff
    inet 192.168.226.10/24 brd 192.168.226.255 scope global noprefixroute ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::1b78:bfb3:4567:b45c/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
ip地址为192.168.226.10

输入设置的密码即可登录
[root@client ~]# ssh root@192.168.226.10
root@192.168.226.20's password: 
Last failed login: Sat Aug 21 15:46:55 CST 2021 from node1 on ssh:notty
There was 1 failed login attempt since the last successful login.
Last login: Sat Aug 21 15:35:38 2021 from 192.168.226.1

基于密钥对认证
原理
  • 在客户端生成一个密钥对(公钥和私钥)
  • 客户端将公钥发给服务端,服务端将其保存在~/.ssh/authorized_keys
  • 客户端发起向服务端发起一个登录请求,服务端比对公钥(再次发来的公钥与保存在~/.ssh/authorized_keys中的公钥是否一致)
  • 比对一致后,服务端会生成随机字符串,再通过客户端发来的公钥加密
  • 服务端将加密后的字符串发送给客户端
  • 客户端收到后,通过本地私钥解密,然后将解密后的字符串发回非服务端
  • 服务端比对字符串,验证与生成的字符串是否一致
  • 一致,即可登录成功能
    在这里插入图片描述
免密登录
客户端主机中生成“密钥对” 
[root@client ~]# ssh-keygen  #一直回车即可
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值