Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->Linux技术 ->系统管理 ->正文

建立Linux下的FTP服务器(上)

来源:Linux-cn.com 作者:Webmaster 时间:2007-05-05 点击: [收藏] [投稿]

一、FTP简介

  FTP就是File Transport Protocol文件传输协议的缩写,FTP服务器能够在网络上提供文件传输服务。FTP最初与WWW服务和邮件服务一起被列为因特网的三大应用,可见其在网络应用中的地位举足轻重。

  FTP服务器根据服务对象的不同可分为匿名服务器(Anonymous Ftp Server)和系统FTP服务器。前者是可以让任何人登录上去获取文件的FTP服务器,后者就只能是在FTP服务器上有合法账号的人才能使用。

  目前在UNIX和LINUX下常用的免费FTP服务器软件主要是Wu-FTP和ProFTP这两种。Wu-FTP广泛应用在众多的Unix和Linux系统中,是RedHat Linux默认的FTP服务器软件,其全称是Washington University FTP。

二、wu-ftp的介绍

  现在因特网上FTP服务器的安装软件大多使用的是wu-ftp软件,因为它支持多个操作系统平台,比如:


IBM AXBSDI bsd/386 HP-UX   
LinuxNeXTstep 2.x
DynixData general Unix
OSF/1Ultrix 4.x 
SunOS 4.1.x
SunOS 5.x   
Solaris 2.x   

  除了支持多个系统平台以外,wu-ftp还有很强大的功能,它提供的功能有:

  1、 让用户在下载文件的同时可以对文件做自动的压缩或解压缩操作;

  2、 可以对不同网络的机器做不同的存取限制和存取时间;

  3、 可以记录文件上传和下载的时间;

  4、 可以显示传输时的相关信息,以便让用户知道目前的传输状态;

  5、 可以设定连接的数量限制,以提高工作效率。

  这些功能都适于吞吐量较大的FTP服务器的管理要求。

三、wu-ftp的安装

  一般的,当你安装好Linux后,就已经装上wu-ftp服务器,我们所要做的只是完成一些配置而已。但我们这里还是从wu-ftp的原始文件开始做起,这样能够详细了解它的全部安装过程。

  你可以到www.wu-ftpd.org去下载wu-ftp的最新版本,目前的版本号是:2.6.1。

  拿到软件后,先将它解压强:

tar zxvf wu-ftpd-2.6.1.tar.gz

  文件解压缩后,你可以看到在当前目录下多了一个wu-ftpd-2.6.1这目录,进入这个目录并阅读里面的README文件及INSTALL安装说明,就可以了解整个安装过程。

  接下来执行此目录下的build lnx,如果执行成功,你可以在bin/这个目录下得到下面五个可执行文件:


ftpd:FTP服务器程序;
ftpshut:用于关闭FTP服务器的程序;
ftpcount:这是一个计数器程序,可以显示目前的线上人数 ;
ftpwho:查看目前的FTP服务器的连接情况;
ckconfig:检查FTP的设定是否正确;
privatepw:对用户的权限进行设定

  不要以为安装到此就结束了,还差一步呢:

build install

  这个操作把编辑时生成的执行文件和wu-ftp的用户手册分别安装在/usr/bin和/usr/man这两个目录下,而ftpd这个执行文件会被更名为wu.ftpd并安装到/usr/sbin这个目录中,所以,执行完上面的操作后,最好先检查一下相应目录中是否已经有了这些文件。

四、配置/etc/inetd.conf

  如果要在机器启动时自动启动FTP服务,就要确认在文件/etc/inetd.conf中有这样一行:

ftp stream tcp nowati root /usr/sbin/tcpd wu.ftpd

  注意这行不要被注释了,否则无法自动启动FTP服务。

  这里通过tcpd这个进程来启动wu.ftpd,为什么呢?实际上你只要仔细观察一下/etc/inetd.conf文件,就会发现这其中很多服务都是由tcpd来启动的,tcpd其实是个安全性的检查,你可以用tcpd控制哪些IP或域可以使用这项服务。

  wu-ftp可以不加任何参数来执行,也可带参数执行,参数说明如下:

  -d:使用该参数,当FTP服务器发生错误时可以将错误信息写入系统的syslog中,即/var/log/syslog这个文件中。

  -l:这个参数是将FTP客户端进行连接的有关信息写入syslog中,但它写入的是/var/log/messages这个文件。

  -t:设定FTP客户端连接连续超过几分钟无操作即自动断线,这个参数后面指定等待的时间,单位为秒,如 -t60就是1分钟,如果没有该参数指定,它的默认值为15分钟。

  -T:e 有些FTP客户端可以设定不动作便离线的时间,但这个时间不是视FTP客户端的要求而定的,-T参数用来设定最大的超时时间,它的默认值是2小时。

  -a:wu.ftpd这个程序是使用/etc/ftpaccess来设定更多的功能,而-a参数就是设定wu.ftpd使用/etc/ftpaccess的设定功能,它的默认值就是/etc/ftpaccess。

  -A:此参数是让wu.ftpd不使用/etc/ftpaccess的设定功能。

  -L:此参数是将FTP客户端连线后所执行的程序记录在syslog中,也就是记录在/var/log/messages文件中。

  -I:使用这个参数,如果有FTP客户端上载文件时,wu.ftpd会将文件的信息记录在/var/log/xferlog文件中。

  -o:使用这个参数,如果有FTP客户端下载文件时,wu.ftpd会将文件的信息记录在/var/log/xferlog文件中。

五、检查ftp的配置文件

  在wu-ftp安装目录下的bin子目录下执行ckconfig,如下所示:


./ckconfig
Checking _PATH_FTPUSERS :: /etc/ftpusers
ok.

Checking _PATH_FTPSERVERS :: /etc/ftpservers
I can't find it... look in doc/examples for an example.

Checking _PATH_FTPACCESS :: /etc/ftpaccess
ok.

Checking _PATH_PIDNAMES :: /var/run/ftp.pids-%s
ok.

Checking _PATH_CVT :: /etc/ftpconversions
ok.

Checking _PATH_XFERLOG :: /var/log/xferlog
ok.

Checking _PATH_PRIVATE :: /etc/ftpgroups
ok.

Checking _PATH_FTPHOSTS :: /etc/ftphosts
ok. 


 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:设置FTP的默认文件许可   下一篇:建立Linux下的FTP服务器(中)

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章