ssh 是加密的,基于 SSL 。 telnet 是明码传输的,发送的数据被监听后不需要解密就能看到内容。 两个不通用,现在不建议使用 telnet 。 因为现在网络监听手段十分的发达。而且中间人攻击也很容易。 ==以下为引用== 安全套接层(Secure Sockets Layer,SSL)及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层对网络连接进行加密。 ============== TLS利用密钥算法在互联网上提供端点身份认证与通讯保密,其基础是公钥基础设施(PKI)。不过在实现的典型例子中,只有网络服务者被可靠身份验证,而其客户端则不一定。这是因为公钥基础设施普遍商业运营,电子签名证书要花大钱购买,普通大众很难买的起证书。协议的设计在某种程度上能够使客户端/服务器应用程序通讯本身预防窃听、干扰(Tampering)、和消息伪造。 TLS包含三个基本阶段: 1. 对等协商支援的密钥算法 2. 基于私钥加密交换公钥、基于PKI证书的身份认证 3. 基于公钥加密的数据传输保密 在第一阶段,客户端与服务器协商所用密码算法。 当前广泛实现的算法选择如下: * 公钥保密系统:RSA、Diffie-Hellman、DSA及Fortezza; * 私钥保密系统:RC2、RC4、IDEA、DES、Triple DES及AES; * 单向散列函数:MD5及SHA。 ========== 以下简要介绍SSL协议的工作方式。客户端要收发几个握手信号: * 发送一个ClientHello消息,说明它支持的密码算法列表、压缩方法及最高协议版本,也发送稍后将被使用的随机数。 * 然后收到一个ServerHello消息,包含服务器选择的连接参数,源自客户端初期所提供的ClientHello。 * 当双方知道了连接参数,客户端与服务器交换证书(依靠被选择的公钥系统)。这些证书通常基于X.509,不过已有草案支持以OpenPGP为基础的证书。 * 服务器请求客户端公钥。客户端有证书即双向身份认证,没证书时随机生成公钥。 * 客户端与服务器通过公钥保密协商共同的主私钥(双方随机协商),这通过精心谨慎设计的伪随机数功能实现。结果可能使用Diffie-Hellman交换,或简化的公钥加密,双方各自用私钥解密。所有其他关键数据的加密均使用这个“主密钥”。 数据传输中记录层(Record layer)用于封装更高层的HTTP等协议。记录层数据可以被随意压缩、加密,与消息验证码压缩在一起。每个记录层包都有一个Content-Type段用以记录更上层用的协议。 TLS/SSL有多样的安全保护措施: * 所有的记录层数据均被编号,用于消息验证码校验。 ===引用完毕== 以上引用自维(反合泻补丁)基(反喝血补丁)百(反核歇补丁)科 ------------------------------------------------- ssh1 和 ssh2 是两个安全级别的版本。 ssh2 的安全性更高。但似乎有的系统的 ssh2 的支持是要单独收费才让用的。 telnet 的端口默认是 21 ,ssh 和 Telnet 不兼容,所以他被人设计为默认 22 端口进行区别。 ssh 什么时候使用时要看你想什么时候链接服务器,而且服务器什么时候开 ssh 服务的。 ssh 只有理论,没有实际内容,如果你要实际内容,请看 TLS 的相关算法部分。 ssh 是使用基于一个网络层的加密协议的远程控制方式而已。 至于链接不上,那就要看怎么不能链接了: 1、服务器的 ssh 服务是否启动 2、防火墙是否打开端口 3、网络是否通畅 4、使用的用户是否可以远程链接 ssh 进行控制 5、端口是否为 22 6、客户端软件是否和服务器端软件兼容 7、…… 8、………… ssh 有的时候只是一个过渡传输协议,经过设置,还可以在 ssh 里面进行链接远程服务器的图形界面进行图形化操作。但这都需要安装相应的支持程序,并且进行相应的设置,还要打开相应的功能。 telnet 当然好用,不加密永远是最好用的。被人监听而劫持了你的服务器,你都不可能知道什么时候被劫持的。因为 telnet 链接就是直接白送人家用户名和密码。要知道局域网里面的集线器所有数据的发送都是广播方式向所有链接到这个集线器的网卡发送所有的数据。这个时候,不需要任何黑客知识,找个监听软件就直接能截取你的密码。
Telnet与SSH的比较
最新推荐文章于 2024-08-08 15:43:27 发布