SSH工具-应用与源码分析系列

本文深入探讨SSH协议,包括其概念、优点、验证方式、层次结构和实现。重点介绍OpenSSH的安装、配置及其在登录和服务端限制配置方面的具体应用,帮助读者掌握SSH工具的使用和安全配置。
摘要由CSDN通过智能技术生成

本文章介绍了SSH工具、服务端、客户端命令等方面知识


SSH协议

概念

SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。SSH 是较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。 SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH在正确使用时可弥补网络中的漏洞。SSH客户端适用于多种平台1

优点

传统的网络协议大多在网络中使用明文传输口令和数据,容易被其他终端截取信息并受到中间人攻击,即有人冒充正待链接的服务器接收客户端发送的信息,并返回虚假信息给客户端!SSH协议则加密传输过程中的数据,有效防止DNS、IP欺骗,同时在进行数据传输时会对数据进行压缩,减短数据传输时间,同时能够为众多应用提供数据传输加密通道。

验证方式

  1. 基于口令的安全验证
    通过用户名和密码便可以连接指定服务器,但是不能有效防止中间人攻击,即可以有人冒充正待链接的服务器终端。
  2. 基于密钥的安全验证
    通过SSH工具生成密钥对,并将生成的公钥在服务端进行设置。连接服务器时,客户端首先将公钥发送至服务端,服务器会将此公钥与对应主目录下的公钥进行比较,如果一致则发送用此公钥加密后的数据,客户端使用私钥解密数据并发送回服务端。该方法可以有效防止中间人攻击,但是会延长连接传输时间。

层次

  • 传输层协议
    提供了服务器认证、保密性、完整性以及压缩功能,运行在TCP/IP协议之上,也可用于其他可靠数据流之上。 提供了强力的加密技术、密码主机认证及完整性保护。该协议中的认证基于主机,并且该协议不执行用户认证。更高层的用户认证协议可以设计为在此协议之上。
  • 用户认证协议
    提供了在服务器端的用户认证服务,运行在传输层协议之上。 当用户认证开始后,它从低层协议那里接收会话标识符(从第一次密钥交换中的交换哈希H )。会话标识符唯一标识此会话并且适用于标记以证明私钥的所有权。 用户认证同时需要知道低层协议是否提供保密性保护。
  • 连接协议
    将多个加密隧道分成逻辑通道,它运行在用户认证协议上。 它提供了交互式登录话路、远程命令执行、转发 TCP/IP 连接和转发 X11 连接。

结构

SSH协议包括服务端客户端,现在拥有1.x和2.x两个不兼容的版本,即用2.x的客户端无法连接1.x的服务端。

  • 服务端:一个守护进程,监听端口等待客户端的连接,一般是sshd进程,提供了对远程连接的处理,一般包括公共密钥认证、密钥交换、对称密钥加密和非安全连接。
  • 客户端:包含ssh程序以及像scp(远程拷贝)、slogin(远程登陆)、sftp(安全文件传输)等其他的应用程序。

工作机制大致是客户端发送一个连接请求到服务端,服务端检查申请的包和IP地址再发送密钥给客户端,客户端再将密钥发回服务端,自此连接建立。

实现

SSH是一种协议,其具体实现应用广泛的是OpenSSH,该库应用到了OpenSSL。

  • OpenSSH-Client:客户端程序
  • OpenSSH-Server:服务器端程序

OpenSSH的具体应用

安装OpenSSH

实验环境

  • CentOS7 64bit 192.168.56.101

安装

sudo yum install openssh-server
sudo yum install openssh-clients

openssh-server
openssh-clients
由于已经安装过了,所以提示包已经存在!通过yum或者apt包管理工具可以方便的安装软件,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值