SSLSecure Sockets Layer安全套接层是一种用于保护网络通信安全的协议通过在传输层和应用层之间建立加密通道防止数据被窃听、篡改和伪装。SSL 通过在应用层和传输层之间插入加密层保护数据传输的安全。它的核心功能是建立加密通道和验证身份。1.SSL 握手过程ClientHello客户端发送支持的加密算法列表。ServerHello服务器选择加密算法并发送服务器证书。证书验证客户端验证服务器证书的有效性。密钥交换客户端生成预主密钥用服务器公钥加密后发送。会话密钥双方根据预主密钥生成会话密钥用于加密后续通信。2.安全通信在加密通道建立后客户端和服务器通过 SSL 进行安全通信客户端发送加密的请求数据。服务器返回加密的响应数据。SSL 广泛应用于以下场景HTTPS保护网页浏览的安全。SMTPS保护邮件传输的安全。FTPS保护文件传输的安全。VPN保护远程访问的安全。定义与用途SSLSecure Sockets Layer是一种加密协议最初设计用于保护Web通信如HTTP→HTTPS确保数据在客户端浏览器和服务器之间的传输安全。核心功能数据加密防止中间人窃听或篡改数据如信用卡信息。身份验证通过数字证书验证服务器身份可选客户端认证。完整性校验确保数据未被篡改。SSH以下是 SSH 连接建立和数据传输的基本流程1.连接建立客户端连接到服务器的 22 端口默认的 SSH 端口。服务器发送自己的公钥给客户端。客户端验证服务器公钥通常通过已知的主机密钥指纹。客户端和服务器协商加密算法如 AES、RSA 等。客户端生成一个会话密钥用服务器的公钥加密后发送给服务器。双方使用会话密钥加密后续通信。加密机制基于非对称加密RSA/ED25519协商会话密钥后续通信使用对称加密AES。2.用户认证SSH 支持多种用户认证方式常见的有密码认证用户输入用户名和密码。公钥认证用户使用私钥进行认证服务器验证对应的公钥。密码认证客户端发送用户名。服务器请求密码。客户端发送加密的密码。服务器验证密码返回认证结果。公钥认证客户端发送用户名和公钥。服务器发送一个随机数。客户端使用私钥对随机数进行签名发送给服务器。服务器使用公钥验证签名返回认证结果。虽然SSH和SSL只有一字之差但是二者并没有直接关联技术实现上的关联(1) 加密算法的重叠共同依赖非对称加密两者均使用非对称加密如RSA、ECC进行密钥协商但具体实现不同SSH 使用 Diffie-Hellman 或 ECDH 生成会话密钥。SSL/TLS 使用 RSA 或 ECDHE 完成密钥交换。对称加密算法均可能采用 AES、ChaCha20 等算法加密数据。(2) 证书机制的差异SSH依赖 SSH 密钥对公钥/私钥无第三方证书颁发机构CA。通过authorized_keys文件直接验证公钥。SSL/TLS依赖 X.509 数字证书需由 CA 签发以建立信任链。支持服务器端证书验证可选客户端证书。(3) 协议层的独立性SSH完整协议栈如密钥交换、认证、加密独立实现不依赖 SSL/TLS。SSL/TLS作为通用安全层可被多种应用协议如HTTP、FTP调用但 SSH 不基于 SSL/TLS。TLSTLSTransport Layer Security传输层安全是一种用于在网络中加密数据传输的协议旨在保护数据的机密性、完整性和身份验证。TLS 是 SSLSecure Sockets Layer安全套接层的继任者提供了更强的安全性和性能。TLS 是 HTTPS、SMTPS、FTPS 等安全协议的基础。TLS 通过在应用层和传输层之间插入加密层保护数据传输的安全。它的核心功能是建立加密通道和验证身份。1.TLS 握手过程ClientHello客户端发送支持的加密算法列表。ServerHello服务器选择加密算法并发送服务器证书。证书验证客户端验证服务器证书的有效性。密钥交换客户端生成预主密钥用服务器公钥加密后发送。会话密钥双方根据预主密钥生成会话密钥用于加密后续通信。2.安全通信在加密通道建立后客户端和服务器通过 TLS 进行安全通信客户端发送加密的请求数据。服务器返回加密的响应数据。TLS 的关键特性加密通信使用对称加密如 AES加密数据。使用非对称加密如 RSA、ECDHE交换密钥。身份验证通过服务器证书验证服务器的身份。可选地通过客户端证书验证客户端的身份。数据完整性使用哈希算法如 SHA确保数据未被篡改。前向保密使用临时密钥交换算法如 ECDHE即使长期密钥泄露历史通信也不会被解密。兼容性支持多种加密算法和协议版本。TLS 的应用场景TLS 广泛应用于以下场景HTTPS保护网页浏览的安全。SMTPS保护邮件传输的安全。FTPS保护文件传输的安全。VPN保护远程访问的安全。API 调用保护数据传输的机密性和完整性。OpenSSLhttps://openssl.org/Regular Expression 正则表达式Gratuitous ARP 免费ARPps命令支持3种不同类型的命令行参数Unix风格的参数,前面加单破折线; 比如ps -efBSD风格的参数,前面不加破折线;比如ps efGNU风格的长参数,前面加双破折线。比如团结周围一切可以团结的力量。