FTP 服务器(三)之客户端的图形接口 FTP 联机软件

参考博客:

  • FTP 服务器(一)之数据链路原理:http://blog.csdn.net/u011414200/article/details/50598134
  • FTP 服务器(二)之vsftpd 服务器基础设定:http://blog.csdn.net/u011414200/article/details/50598154
  • FTP 服务器(三)之客户端的图形接口 FTP 联机软件:http://blog.csdn.net/u011414200/article/details/50599794
  • FTP 服务器(四)之实战搭建:http://blog.csdn.net/u011414200/article/details/50600554
  • FTP 服务器(五)之客户端命令:http://blog.csdn.net/u011414200/article/details/50603307

客户端的联机软件主要有文字接口的 ftp 及 lftp 这两支指令,详细的使用方式请参考第五章常用网络指令的说明。至于 Linux 底下的图形接口软件,可以参考 gftp 这支程序喔!图形接口的啦!很简单啊!那 Windows 底下有没有相对应的 FTP 客户端软件/p>

  • 一 Filezilla
  • 二 通过浏览器取得 FTP 联机
  • 三 让 vsftpd 增加 SSL 的加密功能
    • 1 检查 vsftpd 有无支持 ssl 模块
    • 2 建立专门给 vsftpd 使用的凭证数据
    • 3 修改 vsftpdconf 的配置文件假定有实体匿名账号
    • 4 联机测试看看使用 Filezilla 联机测试
  • 四 重点回顾

一. Filezilla

上述的软件都是自由软件啊,那么 Windows 操作系统有没有自由软件啊的,你可以使用 filezilla 这个好东西!这个玩意儿的详细说明与下载点可以在底下的连结找到:

  • 说明网站:http://filezilla.sourceforge.net/
  • 下载网站:http://sourceforge.net/project/showfiles.phproup_id=21558

目前 (2011/06) 最新的稳定版本是 3.5.x 版,所以底下鸟哥就以这个版本来跟大家说明。为什么要选择 Filezilla 呢了它是自由软件之外,这家伙竟然可以连结到 SSH 的 sftp 呢!真是很不错的一个家伙啊!^_^!另外要注意的是,底下鸟哥是以 Windows 版本来说明的,不要拿来在 X window 上面安装喔!(请下载 Filezilla client 不是 server 喔!)

因为这个程序是给 Windows 安装用的,所以安装的过程就是…(下一步)^n 就好了!并且这个程序支持多国语系, 所以你可以选择繁体中文呢!实在是很棒!安装完毕之后,请你执行它,就会出现如下的画面了:

这里写图片描述

上图的箭头与相关的内容是这样的:

  1. 先按下『新增站台』的按钮,然后在箭头 2 的地方就会出现可输入名称的方框;
  2. 在该方框当中随便填写一个你容易记录的名字,只要与真正的网站有点关连即可;
  3. 接下来看到右边有一般设定,在一般设定里面几个项目很重要的:
    o 主机:在这个方框中填写主机的 IP,端口如果不是标准的 port 21 才填写其它端口。
    o 协定:主要有 (1)FTP 及 (2)SFTP (SSHD 所提供),我们这里选 FTP
    o 加密:是否有网络加密,新的协议中,FTP 可以加上 TLS 的 FTPS 喔!预设为明码
    o 登入型式:因为需要账号密码,选择『一般』即可,然后底下就是输入使用者、账号即可。

基本上这样设定完就能够连上主机了,不过,如果你还想要更详细的规范数据连接的方式 (主动式与被动式) 以及其它资料时, 可以按下的『传输设定』按钮,就会出现如下画面了:

这里写图片描述

更多的用法就请你自行研究啰!


二. 通过浏览器取得 FTP 联机

我们在 第二十章 WWW 服务器当中曾经谈过浏览器所支持的协议,其中一个就是 ftp 这个协议啰!这个协议的处理方式可以在网址列的地方这样输入的:

  • ftp://username@your_ip

要记得,如果你没有输入那个 username@ 的字样时,系统默认会以匿名登录来处理这次的联机。因此如果你想要使用实体用户联机时, 就在在 IP 或主机名之前填写你的账号。举例来说,鸟哥的 FTP 服务器 (192.168.100.254) 若有 dmtsai 这个使用者, 那我启动浏览器后,可以这样做:

  • ftp://dmtsai@192.168.100.254

然后在出现的对话窗口当中输入 dmtsai 的密码,就能够使用浏览器来管理我在 FTP 服务器内的文件系统啰!是否很容易啊 甚至,你连密码都想要写上网址列,那就更厉害啦!

  • ftp://dmtsai:yourpassword@192.168.100.254

三. 让 vsftpd 增加 SSL 的加密功能

既然 http 都有 https 了,那么使用明码传输的 ftp 有没有加密的 ftps 呢嘿!说的好!有的啦~既然都有 openssl 这个加密函式库, 我们当然能够使用类似的机制来处理 FTP 啰!但前提之下是你的 vsftpd 有支持 SSL 函式库才行!此外,我们也必须要建立 SSL 的凭证档给 vsftpd 使用,这样才能够进行加密嘛!了解乎!接下来,就让我们一步一步的进行 ftps 的服务器建置吧!


3.1 检查 vsftpd 有无支持 ssl 模块

如果你的 vsftpd 当初编译的时候没有支持 SSL 模块,那么你就得只好自己重新编译一个 vsftpd 的软件了!我们的 CentOS 有支持吗赶紧来瞧瞧:

如果有出现 libssl.so 的字样,就是有支持!这样才能够继续下一步呦!


3.2 建立专门给 vsftpd 使用的凭证数据

CentOS 给我们一个建立凭证的地方,那就是 /etc/pki/tls/certs/ 这个目录!详细的说明我们在 20.5.2 里面谈过咯,所以这里只介绍怎么做:


3.3 修改 vsftpd.conf 的配置文件,假定有实体、匿名账号

在前面 21.2 里面大多是单纯匿名或单纯实体帐户,这里我们将实体账号通过 SSL 联机,但匿名者使用明码传输! 两者同时提供给客户端使用啦!FTP 的设定项目主要是这样:

  • 提供实体账号登入,实体账号可上传数据,且 umask 为 002
  • 实体账号默认为 chroot 的情况,且全部实体账号可用带宽为 1Mbytes/second
  • 实体账号的登入与数据传输均需通过 SSL 加密功能传送;
  • 提供匿名登录,匿名者仅能下载,不能上传,且使用明码传输 (不通过 SSL)

此时,整体的设定值会有点像这样:


3.4 联机测试看看!使用 Filezilla 联机测试

接下来我们利用 filezilla 来说明一下,如何通过 SSL/TLS 功能来进行联机加密。很简单,只要在站台管理员的地方选择:

这里写图片描述

如果一切都没有问题,那么你可以点选上图那个『总是信任』的项目,如此一来,未来联机到这个地方就不会再次要你确认凭证啦! 很简单的解决了 FTP 联机加密的问题啰!

例题:
想一想,既然有了 SFTP 可以进行加密的 FTP 传输,那为何需要 ftps 呢
答:
因为既然要开放 SFTP 的话,就得要同时放行 sshd 亦即是 ssh 的联机,如此一来,你的 port 22 很可能会常常被侦测~若是 openssl, openssh 出问题,恐怕你的系统就会被绑架。如果你的 FTP 真的有必要存在,那么通过 ftps 以及利用 vsftpd 这个较为安全的服务器软件来架设,理论上,是要比 sftp 来的安全些~至少对 Internet 放行 ftps 还不会觉得很可怕…


四. 重点回顾

  • 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

来源:该昵称已经被占用

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2016年1月26日
下一篇 2016年1月26日

相关推荐