Linux下用vsftpd构建FTP服务器

 在Linux下如何使用vsftpd构建FTP服务器,构建后的Ftp服务器有哪些特点?本文将作详细介绍。 


vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点。vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux、BSD、Solaris、 HP-UNIX等系统上面,是一个完全免费的、开发源代码的Ftp服务器软件,支持很多其他的 FTP 服务器所不支持的特征。比如:非常高的安全性需求、带宽限制、良好的可伸缩性、可创建虚拟用户、支持IPv6、速率高等。 

本文以RedHat Linux 9.0为例介绍一下如何安装和配置vsftpd服务器。 

安装服务器程序 

程序下载地址:ftp://vsftpd.beasts.org/users/cevans/,目前最新版本为2.0.3,源程序文件名为vsftpd-2.0.3.tar.gz。 

1.安装之前的准备: 

安装之前我们应该看看用户“nobody”和目录“/usr/share/empty”是否存在,如果不存在需要新建这个用户和目录。 

[root@localhost root]# useradd nobody 

[root@localhost root]# mkdir /usr/share/empty 

如果要允许匿名访问,还需要创建ftp用户,并将其主目录设置为/var/ftp。在RedHat Linux 9.0中这些都已默认设置好了,只需要创建一个/var/ftp目录即可。 

[root@localhost root]# mkdir /var/ftp 

为了安全,目录“/var/ftp”不应该属于用户“ftp”,也不应该有写权限。在此,我们做如下设置: 

[root@localhost root]# chown root.root /var/ftp 

[root@localhost root]# chmod 755 /var/ftp 

2.开始安装: 

以管理员身份登录Linux系统,将vsftpd-2.0.3.tar.gz复制到/root目录下。 

[root@localhost root]# tar xzvf vsftpd-2.0.3.tar.gz 

[root@localhost root]# cd vsftpd-2.0.3 

[root@localhost vsftpd-2.0.3]# make 

[root@localhost vsftpd-2.0.3]# make install 

3.安装后续工作 

由于采用源代码方式安装,很多必要的配置文件没有复制到系统中,需要手动复制。

 复制配置文件: 

[root@localhost vsftpd-2.0.3]# cp vsftpd.conf /etc 
复制pam验证文件:(多数使用vsftpd的用户在用源代码安装后都会遇到这样的问题:匿名用户可以登录,而本地用户无论怎样设置都无法登录,原因就在于vsftpd采用了PAM验证的方式,需要复制一个验证文件本地用户才能访问。) 

[root@localhost vsftpd-2.0.3]# cp RedHat/vsftpd.pam /etc/pam.d/ftp 
vsftpd的配置 

vsftpd服务器的配置文件为/etc/vsftpd.conf,其配置选项比较多,在此我只选择几个常用的配置选项介绍。 

1.禁止匿名用户访问。 

anonymous_enable=NO 

2.允许本地用户登录并允许其上传文件。 

local_enable=YES 

write_enable=YES 

要使上述选项生效,必须复制一个pam验证文件到/etc/pam.d,并改名为ftp。当然也可以改为其他名称,但必须修改pam_service_name的值,默认为ftp。 

3.将本地用户锁定在主目录中,不允许切换到上一级目录中。 

chroot_local_user=YES

你可能感兴趣的:(linux,职场,服务器,休闲)