21.5 重点回顾

  • FTP 是文件传输协议 (File Transfer Protocol) 的简写,主要的功能是进行服务器与客户端的档案管理、传输等事项;
  • FTP 的服务器软件非常多,例如 Wu FTP, Proftpd, vsftpd 等等,各种 FTP 服务器软件的发展理念并不相同, 所以选择时请依照你的需求来决定所需要的软件;
  • FTP 使用的是明码传输,而过去一些 FTP 服务器软件也曾被发现安全漏洞,因此设定前请确定该软件已是最新版本,避免安全议题的衍生;
  • 由于 FTP 是明码传输,其实可以使用 SSH 提供的 sftp 来取代 FTP ;
  • 大多数的 FTP 服务器软件都提供 chroot 的功能,将实体用户限制在他的家目录内;
  • FTP 这个 daemon 所开启的正规埠口为 20 与 21 ,其中 21 为命令通道, 20 为主动联机的数据传输信道;
  • FTP 的数据传输方式主要分为主动与被动(Passive, PASV),如果是主动的话,则 ftp-data 在服务器端主动以 port 20 连接到客户端,否则需开放被动式监听的埠口等待客户端来连接;
  • 在 NAT 主机内的客户端 FTP 软件联机时可能发生困扰,这可以透过 iptables 的 nat 模块或利用被动式联机来克服;
  • 一般来说, FTP 上面共有三个群组,分别是实体用户、访客与匿名登录者(real, guest, anonymous);
  • 可以藉由修改 /etc/passwd 里面的 Shell 字段,来让使用者仅能使用 FTP 而无法登入主机;
  • FTP 的指令、与用户活动所造成的登录档是放置在 /var/log/xferlog 里面;
  • vsftpd 为专注在安全议题上而发展的一套 FTP 服务器软件,他的配置文件在 /etc/vsftpd/vsftpd.conf