1. SSH(Secure Shell,安全外壳协议)
SSH 是一种加密的网络协议,用于在不安全的网络上(如互联网)安全地运行网络服务。
-
核心功能:安全远程登录。它允许你通过命令行(终端)登录到远程服务器,并像坐在它面前一样执行命令(如安装软件、修改配置、重启服务)。
-
安全性:极高。SSH 在传输过程中对所有的数据(包括用户名、密码、输入的命令、返回的结果)都进行了强加密,防止被窃听或篡改。
-
端口:默认使用 TCP 22 端口。
-
常见用途:
-
管理 Linux/Unix 服务器(开发者、运维人员最常用的工具)。
-
安全地传输文件(利用 SFTP,即 SSH File Transfer Protocol,它是 SSH 协议的一部分,而非原版 FTP)。
-
建立隧道(端口转发)来加密其他不安全的协议。
-
2. FTP(File Transfer Protocol,文件传输协议)
FTP 是一种较老的网络协议,专门用于在客户端和服务器之间传输文件(上传和下载)。
-
核心功能:文件传输。它允许用户将网页文件上传到网站根目录,或从服务器下载大文件。
-
安全性:极低(不安全)。这是 FTP 最大的缺点。FTP 在传输数据时,用户名、密码以及文件内容均以明文(未加密)形式发送。这意味着在同一个网络中的攻击者可以轻松截获登录凭证和文件内容。
-
端口:通常使用两个端口:
-
TCP 21:控制连接(发送指令、用户名、密码)。
-
TCP 20:数据连接(实际传输文件列表和内容)。(注:被动模式下数据端口会动态变化)
-
-
现状:由于安全性问题,在现代互联网环境中,传统的 FTP 已经逐渐被淘汰,或者被更安全的替代品取代。