VSFTP 服务器全攻略<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

     VSFTP 是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP ,高速与高稳定性也是VSFTP的两个重要特点。其市场应用十份广范,很多国际性的大公司和自由开源组织在使用,如RedHat,SuseDebianOpenBSD。它支持匿名,本地,虚拟用户三种用户登录模式。下载Vsftp可以通过 官方下载 [url]ftp://vsftpd.beasts.org/users/cevans/vsftpd-2.0.3.tar.gz[/url]

 

     VSFTP 安装与配置如下:

 

1. 首先,我们在配置之前应该确认vsftp软件是否安装:

如果出现相关的信息就证明安装了,但如果未安装可以对其进行安装,步骤如下:

2. 安装完成后,下一步就是进行配置任务,我们先看一下主配置文件/etc/vsftpd/vsftpd.conf

 

/etc 主要存放配置文件,我们可以在这个文件中配置任何我们想配置的参数,特别是/etc/vsftpd/vsftpd.conf这个文件是支撑整个FTP服务器的主文件。

编辑主配置/etc/vsftpd/vsftpd.conf使用如上命令vi  /etc/vsftpd/vsftpd.conf,主文件配置内容如下:

 

  •  Anonymous_enable=yes    允许匿名登录

  •  No_anon_password=yes         匿名登录不需要密码
  •  Local_enable=yes                  允许本地登录
  •  Listen_port=21                     监听 21 端口
  •  Write_enable=yes                  允许写操作
  •  anon_umask=077                   限制 anonymous 的權限 , 只有 -rw-------

  •  anon_upload_enable=yes         允许匿名用户上传文件

  •  anon_mkdir_write_enable=yes  允许匿名用户创建目录

  • dirmessage_enable=yes             显示目录信息

  • xferlog_enable=yes                  开启用户上传和下载记录

  • connect_from_port_20=yes      允许从 20 端口号连接服务器

  • chown_uploads=yes      指定 anonymous 帐号上传的文件是否要改变其所有者

  • chown_username=root    限制用 root 用户登录

  • xferlog_file=/var/log/vsftpd.log  指定记录目录

  • idle_session_timeout=600  指定空闲回话时间

  • data_connection_timeout=120    在没有数据连接 120 秒后自动断开

  • nopriv_user=nobody     预设以 nobody 作为 vsftpd 服务执行者的权限

 

  • ascii_upload_enable=yes       允许用户使用 ascii 格式上传

  • ascii_download_enable=yes   允许用户使用 ascii 格式下载

  • deny_email_enable=yes        禁止某些 Email 地址登录

  • banned_email_file=/etc/vsftpd.banned_emails    禁止某些 Email 地址登录文件

  • chroot_list_enable=yes          限制特定用户只在自己目录下

  • chroot_list_file=/etc/vsftpd.chroot_list 限制特定用户只在自己目录下文件目录

  • pam_service_name=vsftpd       pam 模组名称
  • userlist_enable=yes                    限制用户列表
  • listen=yes                                  standalone 的方式来启动
  • tcp_wrappers=yes                    支持 tcp wrapper
  • max_clients=100                      允许 100 个用户同时连接
  • max_per_ip=1                         只允许单线程下载

4.最重要的部分已完成,接下来就是限制某些非法或者不想让他登录的用户无权访问FTP服务器,先看一下他的目录:
 

最主要就是/etc/vsftpd.ftpusers和/etc/vsftpd.banned_emails限制不允许登录的用户及Email地址,只要把要禁止的用户或Email地址用 vi /etc/vsftpd.ftpusers或vi /etc/vsftpd.banned_emails加入即可。

如果文件不存在可用touch命令创建.

5.启动vsftp服务:

 

及启动了,但提示无法打开banned_email列表文件,经过检查原来是/etc/vsftpd.banned_emails文件不存在,我们可用如下命令创建:

再来启动一次:

这次启动了,且没有提示错误,服务运行正常。

6.测试服务器是否正常:

  • 首先,我们现在本机测试一下是否成功,因为我们设置了允许本地登录:

测试成功,我们可以看用户名是lwq,而不是 root;是因为root默认是禁止登录的,可用如下命令创建用户并设置密码:

 
  • 接着,我们来远程测试一下(即在客户端测试):

输入服务器IP地址:[url]ftp://192.168.10.254[/url],即可看到下图:

 

即可看到服务器共享文件。

记住,我们这里是使用匿名登录,所以不用输入密码之类的东西。如果我们禁止匿名登录的话,即要求输入用户名和密码:

输入用户名后,根据服务器设置,用户可以浏览到其权限可以浏览的文件。至此,VSFTP服务器设置完成。