- 密码学教程
- 密码学 - 首页
- 密码学 - 起源
- 密码学 - 历史
- 密码学 - 原理
- 密码学 - 应用
- 密码学 - 优点与缺点
- 密码学 - 现代
- 密码学 - 传统密码
- 密码学 - 加密的需求
- 密码学 - 双重强度加密
- 密码系统
- 密码系统
- 密码系统 - 组件
- 密码系统的攻击
- 密码系统 - 彩虹表攻击
- 密码系统 - 字典攻击
- 密码系统 - 暴力攻击
- 密码系统 - 密码分析技术
- 密码学的类型
- 密码系统 - 类型
- 公钥加密
- 现代对称密钥加密
- 密码学散列函数
- 密钥管理
- 密码系统 - 密钥生成
- 密码系统 - 密钥存储
- 密码系统 - 密钥分发
- 密码系统 - 密钥吊销
- 分组密码
- 密码系统 - 流密码
- 密码学 - 分组密码
- 密码学 - Feistel 分组密码
- 分组密码的操作模式
- 分组密码的操作模式
- 电子密码本 (ECB) 模式
- 密码分组链接 (CBC) 模式
- 密码反馈 (CFB) 模式
- 输出反馈 (OFB) 模式
- 计数器 (CTR) 模式
- 经典密码
- 密码学 - 反向密码
- 密码学 - 凯撒密码
- 密码学 - ROT13 算法
- 密码学 - 换位密码
- 密码学 - 加密换位密码
- 密码学 - 解密换位密码
- 密码学 - 乘法密码
- 密码学 - 仿射密码
- 密码学 - 简单替换密码
- 密码学 - 简单替换密码的加密
- 密码学 - 简单替换密码的解密
- 密码学 - 维吉尼亚密码
- 密码学 - 维吉尼亚密码的实现
- 现代密码
- Base64 编码与解码
- 密码学 - XOR 加密
- 替换技术
- 密码学 - 单字母替换密码
- 密码学 - 单字母替换密码的破解
- 密码学 - 多字母替换密码
- 密码学 - Playfair 密码
- 密码学 - 希尔密码
- 多字母替换密码
- 密码学 - 一次性密码本密码
- 一次性密码本密码的实现
- 密码学 - 换位技术
- 密码学 - 栅栏密码
- 密码学 - 列置换
- 密码学 -隐写术
- 对称算法
- 密码学 - 数据加密
- 密码学 - 加密算法
- 密码学 - 数据加密标准
- 密码学 - 三重DES
- 密码学 - 双重DES
- 高级加密标准
- 密码学 - AES 结构
- 密码学 - AES 变换函数
- 密码学 - 字节替换变换
- 密码学 - 行移位变换
- 密码学 - 列混合变换
- 密码学 - 轮密钥加变换
- 密码学 - AES 密钥扩展算法
- 密码学 - Blowfish 算法
- 密码学 - SHA 算法
- 密码学 - RC4 算法
- 密码学 - Camellia 加密算法
- 密码学 - ChaCha20 加密算法
- 密码学 - CAST5 加密算法
- 密码学 - SEED 加密算法
- 密码学 - SM4 加密算法
- IDEA - 国际数据加密算法
- 公钥(非对称)密码学算法
- 密码学 - RSA 算法
- 密码学 - RSA 加密
- 密码学 - RSA 解密
- 密码学 - 创建 RSA 密钥
- 密码学 - 破解 RSA 密码
- 密码学 - ECDSA 算法
- 密码学 - DSA 算法
- 密码学 - Diffie-Hellman 算法
- 密码学中的数据完整性
- 密码学中的数据完整性
- 消息认证
- 密码学数字签名
- 公钥基础设施
- 散列
- MD5(消息摘要算法 5)
- SHA-1(安全散列算法 1)
- SHA-256(安全散列算法 256 位)
- SHA-512(安全散列算法 512 位)
- SHA-3(安全散列算法 3)
- 散列密码
- Bcrypt 散列模块
- 现代密码学
- 量子密码学
- 后量子密码学
- 密码学协议
- 密码学 - SSL/TLS 协议
- 密码学 - SSH 协议
- 密码学 - IPsec 协议
- 密码学 - PGP 协议
- 图像与文件加密
- 密码学 - 图像
- 密码学 - 文件
- 隐写术 - 图像
- 文件加密和解密
- 密码学 - 文件的加密
- 密码学 - 文件的解密
- 物联网中的密码学
- 物联网安全挑战、威胁和攻击
- 物联网安全的密码学技术
- 物联网设备的通信协议
- 常用的密码学技术
- 自定义构建密码学算法(混合密码学)
- 云密码学
- 量子密码学
- 密码学中的图像隐写术
- DNA 密码学
- 密码学中的一次性密码 (OTP) 算法
- 之间的区别
- 密码学 - MD5 与 SHA1
- 密码学 - RSA 与 DSA
- 密码学 - RSA 与 Diffie-Hellman
- 密码学与密码学
- 密码学 - 密码学与密码分析
- 密码学 - 经典与量子
- 密码学与隐写术
- 密码学与加密
- 密码学与网络安全
- 密码学 - 流密码与分组密码
- 密码学 - AES 与 DES 密码
- 密码学 - 对称与非对称
- 密码学有用资源
- 密码学 - 快速指南
- 密码学 - 讨论
密码学 - SSH 协议
安全外壳 (SSH) 协议是一种通过网络安全地发送命令到计算机的方法,即使是在不安全的网络上。它使用特殊的代码来确保连接安全和私密。使用 SSH,您可以远程控制计算机,就像商店老板在旅行时可能会向员工发出指示一样。
在 SSH 之前,像 Telnet 这样的旧方法可以让任何人都看到正在发送的指令。就像把商店老板放在免提电话上,店里的每个人都能听到私人谈话。但是 SSH 保持一切秘密和安全,就像在您的对话周围有一个安全的壳一样。
SSH 的历史背景和发展
Tatu Ylonen 于 1995 年开始开发安全外壳,因为他需要一个比 Telnet 更安全的替代方案来管理他大学的网络。SSH 的初始版本称为“安全外壳 v1”,但它存在重大的安全问题,后来在“安全外壳 v2”中得到了修复。
它是如何工作的?
SSH 客户端连接到 SSH 服务器以建立连接,因为该协议在客户端-服务器系统上工作。SSH 客户端启动连接设置过程,并使用公钥密码术对 SSH 服务器的身份进行身份验证。SSH 协议在设置后使用强大的对称加密和散列方法,以确保在客户端和服务器之间传输的数据的机密性和完整性。
下图显示了建立安全外壳连接的简化过程。
关键组件
SSH 连接需要三个基本要素:密钥、服务器和客户端。一般来说,客户端是由用户安装的计算机软件,它发出连接请求。
服务器软件安装在另一台计算机上,接收来自客户端的传入请求。称为密钥的数字文件保存两端安全连接和身份验证所需的数据。
SSH 的属性
以下是我们需要考虑的 SSH 的一些属性:
- 加密 - 为了维护机密性并阻止对系统的未经授权的攻击,客户端和服务器之间传输的加密数据。
- 身份验证 - SSH 使用公钥和私钥对进行身份验证,这比传统的密码身份验证提供了更高的安全级别。
- 数据完整性 - 在通信期间,SSH 确保发送的消息的数据完整性。
- 隧道 - 为了通过加密通道转发网络通信,我们可以使用 SSH 建立安全的隧道。
SSH 端口转发
SSH 端口转发是一种保护 TCP/IP 连接的方法。TCP/IP 数据包可以通过 SSH 链接进行隧道传输,隐藏数据并保护通道免受攻击者的攻击。SSH 端口转发也可以被视为一种虚拟专用网络。
SSH 端口转发的类型
您可以通过使用 SSH 端口转发通过加密连接安全地连接到远程资源。有三种类型的 SSH 端口转发:
- 本地端口转发 - 通过这种类型的端口转发,您可以将本地工作站上的端口的流量重定向到网络上或外部网络上的另一台机器上的端口,通过安全的 SSH 隧道。
- 远程端口转发 - 通过此类型,您可以将一台机器上的端口的流量重定向到另一台机器,通过 SSH 隧道和加密连接。
- 动态端口转发 - 通过这种形式的端口转发,流量通过 SSH 服务器和本地 SOCKS 代理服务器发送到网络上的其他机器。通过这样做,您可以越过防火墙并使用远程网络提供的每项服务。
SSH 的用途
安全外壳 (SSH) 协议是一种安全地从一台计算机远程登录到另一台计算机的方法。它为强大的身份验证提供了多种选择,并使用强大的加密来保护对话的安全性和完整性。它是 FTP 等不安全的文件传输技术和 telnet 和 rlogin 等不受保护的登录协议的安全替代方案。
企业网络使用该协议用于:
- 授予人员和自动化流程安全访问权限。
- 自动和交互式文件传输。
- 远程发送命令。
- 监控网络基础设施和其他关键系统组件。
SSH 的应用
安全外壳的应用如下:
1. 对服务器和设备的安全远程访问
SSH(安全外壳协议)建立了一条安全的加密路由,用于远程访问服务器和设备。当服务器或设备位于不同的物理位置(例如数据中心或云网络)时,这非常有用。
2. 通过 SSH 连接使用 SCP 或 SFTP 协议进行安全文件传输
除了远程访问之外,SSH 还可以通过 SCP(安全复制协议)或 SFTP(SSH 文件传输协议)安全地通过网络传输文件。这两种协议都通过加密客户端和服务器之间发送的数据来提供安全的文件传输。
3. 使用端口转发通过加密通道隧道传输流量
SSH 隧道允许用户通过加密通道路由通信,在两个目的地之间建立安全连接。这可以通过设置端口转发规则来实现,该规则将本地机器上的一个端口的流量路由到远程机器上的另一个端口。
SSH 连接常见问题的故障排除
与任何其他技术一样,SSH 连接也可能无法正常工作。这些问题可能从基本的连接问题到复杂的配置或安全问题不等。
常见的错误消息和解决方案
SSH 最常见的问题之一是收到指示连接问题的错误消息。最常见的问题包括“连接超时”、“权限被拒绝”和“主机密钥验证失败”。这些问题的解决方案因来源而异,但通常涉及检查网络连接、验证凭据或权限,或监控配置设置。
诊断连接问题的调试技巧
诊断 SSH 连接问题可能很困难,尤其是在您不熟悉其背后的技术或对诊断工具的访问有限的情况下。值得庆幸的是,有很多方法可以识别和解决网络连接问题。解决 SSH 连接问题的第一步是确保客户端和服务器工作站之间的基本网络连接。
诸如 ping 和 traceroute 之类的工具可用于识别网络路由问题或防火墙阻止。如果基本连接正常,但您仍然遇到 SSH 连接问题,则可能需要评估您的身份验证设置或查看日志以获取有关导致问题原因的更多信息。
SSH 的优点
使用 SSH 的优点如下:
- 安全性 - 使用 SSH 的主要优点是能够通过不受信任的网络建立安全连接。
- 简单性 - 设置 SSH 连接有时就像在双方安装软件一样简单。
- 灵活性 - 通过 SSH 连接后,用户可以远程执行各种操作,而无需物理访问服务器。
SSH 的缺点
使用 SSH 的缺点如下:
- 性能开销 - 加密过程可能会导致一些性能成本,尤其是在通过网络发送大量数据时。
- 复杂性 - 配置 SSH 连接可能很困难,需要对底层原理和协议有扎实的了解。
- 安全风险 - SSH 连接的安全程度与其用于身份验证的密钥一样安全。如果密钥被黑客入侵或被盗,未经授权的人员可以访问关键信息。
SSH 与 SSL
SSH(安全外壳)和 SSL(安全套接字层)之间的主要区别如下:
序号 | SSH(安全外壳) | SSL(安全套接字层) |
---|---|---|
01 | SSH 是一种隧道协议,具有用户名/密码身份验证系统。 | SSL 没有用户名或密码身份验证系统。 |
02 | 通常 SSH 在 22 端口号上工作。 | 它在 443 端口号上工作。 |
03 | SSH 依赖于网络隧道。 | SSL 依赖于证书。 |
04 | 这是一个用于服务器和客户端身份验证过程的三阶段过程。 | 它是用于服务器和客户端身份验证的数字证书。 |
05 | 它加密互联网上两台计算机之间的通信。 | SSL 加密浏览器和服务器之间的通信。 |
06 | SSH 适用于安全地在互联网上执行命令。 | 它安全地传输信用卡和银行业务中的关键数据。 |
07 | SSH 使用对称密钥算法来提供数据机密性。 | SSL 使用对称和非对称加密算法来提供数据隐私。 |