热门关键字:  ubuntu  分区  函数  Fedora  linux系统进程

VSFTP配置手册

来源: 作者: 时间:2008-06-26 Tag: 点击:

E:建立访问者的口令库文件,然后修改其权限

  db_load –T –t hash –f /tmp/logins.txt /etc/vsftpd_login.db

F:进如/etc/pam.d/中创建ftp.vu

在此文件中添加如下信息

  auth required /lib/security/pam_userdb.so db=/etc/vsftpd_login
  account required /lib/security/pam_userdb.so db=/etc/vsftpd_login

G:在/var/ftp/创建目录并改变其属性和它的属主

  useradd -d /var/ftp/test qiang
  chmod 700 /var/ftp/test

在目录中添加test_file测试文件

H:进入vsftpd2.conf修改其中的信息

  Listen_yes
  Anonymous_enable=no
  Local_enable=yes
  Write_enable=no
  Anon_upload_enable=no
  Anon_mkdir_write_enable=no
  Anon_other_write_enable=no
  Chroot_local_user=yes
  Guest_enable=yes----------起用虚拟用户
  Guest_username=qiang------将虚拟用户映射为本地用户
  Listen_port=5555
  Max_client=10
  Max_per_ip=1
  Ftpd_banner=this is a virtual server and users
  Pam_service_name=ftp.vu

注:在主配置文件中给的权限越低,在后面分用户管理的时候对拥护的权限划分的空间就越大,因为主配置文件最高的限制服务先读主配置文件,然后再读用户的配置文件

重起服务。到此虚拟USER就建好了

I:在vsftpd.comf所在的目录中创建virtaul文件目录并在文件目录中创建以你用户名命名的配置文件

  Longlei zhangweibo jinhui lxp

在longlei中添加:

  Anon_world_readable_only=no

在lxp中添加

  Anon_world_readable_only=no

这样此两个用户就有了浏览目录的权限了

在jinhui中添加

  Anon_world_readable_only=no
  Write_enable=yes
  Anon_upload_enable=yes

此用户就有了上传、下载和浏览的权限

在zhangweibo中添加

  Anon_world_readable_only=no
  Write_enable=yes
  Anon_upload_enable=yes
  Anon_other_write_enable=yes

此用户就有了上传、下载、删除文件目录、修改文件名和浏览的权限

J:修改vsftpd2.conf

加入user_config_dir=/vsftpd.conf所在的目录/virtual

重起服务器就搞定了


vsftpd.conf中的所有配置信息


vsftpd.conf的参数:
Anonymous_enable=yes 允许匿名登陆
Dirmessage_enable=yes 切换目录时,显示目录下.message的内容
Local_umask=022 FTP上本地的文件权限,默认是077
Connect_form_port_20=yes 启用FTP数据端口的数据连接 *
Xferlog_enable=yes 激活上传和下传的日志
Xferlog_std_format=yes 使用标准的日志格式
Ftpd_banner=XXXXX 欢迎信息
Pam_service_name=vsftpd 验证方式 *
Listen=yes 独立的VSFTPD服务器 *
Anon_upload_enable=yes 开放上传权限
Anon_mkdir_write_enable=yes 可创建目录的同时可以在此目录中上传文件
Write_enable=yes 开放本地用户写的权限
Anon_other_write_enable=yes 匿名帐号可以有删除的权限
Anon_world_readable_only=no 放开匿名用户浏览权限
Ascii_upload_enable=yes 启用上传的ASCII传输方式
Ascii_download_enable=yes 启用下载的ASCII传输方式
Banner_file=/var/vsftpd_banner_file 用户连接后欢迎信息使用的是此文件中的相关信息
Idle_session_timeout=600(秒) 用户会话空闲后10分钟
Data_connection_timeout=120(秒) 将数据连接空闲2分钟断
Accept_timeout=60(秒) 将客户端空闲1分钟后断
Connect_timeout=60(秒) 中断1分钟后又重新连接
Local_max_rate=50000(bite) 本地用户传输率50K
Anon_max_rate=30000(bite) 匿名用户传输率30K
Pasv_min_port=50000 将客户端的数据连接端口改在
Pasv_max_port=60000 50000—60000之间
Max_clients=200 FTP的最大连接数
Max_per_ip=4 每IP的最大连接数
Listen_port=5555 从5555端口进行数据连接
Local_enble=yes 本地帐户能够登陆
Write_enable=no 本地帐户登陆后无权删除和修改文件
下面这是一组  
Chroot_local_user=yes 本地所有帐户都只能在自家目录
Chroot_list_enable=yes 文件中的名单可以调用
Chroot_list_file=/任意指定的路径/vsftpd.chroot_list 前提是chroot_local_user=no
这又是一组  
Userlist_enable=yes 在指定的文件中的用户不可以访问
Userlist_deny=yes  
Userlist_file=/指定的路径/vsftpd.user_list
又开始单的了  
Banner_fail=/路径/文件名 连接失败时显示文件中的内容
Ls_recurse_enable=no  
Async_abor_enable=yes  
one_process_model=yes  
Listen_address=10.2.2.2 将虚拟服务绑定到某端口
Guest_enable=yes 虚拟用户可以登陆
Guest_username=所设的用户名 将虚拟用户映射为本地用户
User_config_dir=/任意指定的路径/为用户策略自己所建的文件夹 指定不同虚拟用户配置文件的路径
又是一组  
Chown_uploads=yes 改变上传文件的所有者为root
Chown_username=root  
又是一组  
Deny_email_enable=yes 是否允许禁止匿名用户使用某些邮件地址
Banned_email_file=//任意指定的路径/xx/  
又是单的  
Pasv_enable=yes 服务器端用被动模式
User_config_dir=/任意指定的路径//任意文件目录 指定虚拟用户存放配置文件的路径


vsFTP服务器的维护

现在这里还没有关于维护vsftp服务器的资料。欢迎大家编辑2

vsFTP使用的一些补充

补充一:如何有选择的把用户限制在家目录中呢?

我们要自己建一个文件,在/etc目录中

  #touch /etc/vsftpd.chroot_list

以beinan和nanbei这两个用户限制在他们所在的家目录中,而其它的FTP用户不做此限制。

在vsftpd.chroot_list这个文件中,把beinan和nanbei添上去就行,注意,每个用户占一行。

  beinan
  nanbei

然后改/etc/vsftpd/vsftpd.conf文件,找如下的两行

  #chroot_list_enable=YES
  #chroot_list_file=/etc/vsftpd.chroot_list

把前面的#号去掉,也就是这样的

  chroot_list_enable=YES
  chroot_list_file=/etc/vsftpd.chroot_list

如果没有这样的两行,就可以自己添加上去也是一样的。

设置好后,重新vsFTPD服务器。

补充一之补充:如何把系统内所有的FTP用户都限制在家目录中呢??经juliaugong兄的提示,我查找了vsFTPd的洋文说明,证明这个选项是一刀切的解决所有的用户都能限制在家目录中

我们可以通过更改vsftpd.conf文件,加入如下的一行

  chroot_local_user=YES

改完配制文件,不要忘记重启vsFTPd服务器


  [root@linuxsir001 root]# /etc/init.d/vsftpd restart
  关闭 vsftpd: [ 确定 ]
  为 vsftpd 启动 vsftpd: [ 确定 ]
  [root@linuxsir001 root]#

补充二:打开vsFTP服务器的日志功能

把下面xferlog_file前面的#号对掉,也就是把vsftp的log功能打开,这样我们就能在/var/log目录下查看vsftpd.log。这是vsFTP的日志功能,这对于我们来说是极为重要的。

  #xferlog_file=/var/log/vsftpd.log

补充三:如何让绑定IP到vsFTP?

也就是说,如何让用户只能通过某个IP来访问FTP。其实这个功能很有意思。如果绑定的是内网的IP,外部是没有办法访问的。如果绑定的是对外服务的IP,内网也只能通过对外服务的IP来访问FTP

在/etc/vsftpd/vsftpd.conf中加一行,以我的局域网为例,请看第一帖中的操作环境,这样外网就不能访问我的FTP了,内网也可能通过192.168.0.2来访问FTP

  listen_address=192.168.0.2

加完后,要重启vsFTP服务器

  [root@linuxsir001 root]# /etc/init.d/vsftpd restart
  关闭 vsftpd: [ 确定 ]
  为 vsftpd 启动 vsftpd: [ 确定 ]
  [root@linuxsir001 root]#

补充四:如何让vsFTP服务器限制链接数,以及每个IP最大的链接数??

答:应该改vsFTP服务器的配制文件vsftpd.conf,加入下面的两行:

  max_clients=数字
  max_per_ip=数字

举例:我想让我的vsFTP最大支持链接数为100个,每个IP,最多能支持5个链接,所以我应该在vsftpd.conf中加上如下的两行:

  max_clients=100
  max_per_ip=5

改好了配制文件,不要忘记启动vsftp服务器。


补充五:如何限制下载的速度?

anon_max_rate=数字 注:这是匿名的下载速度 local_max_rate=数字 注:这是vsFTP服务器上普通用户的下载速度

注:这个数字的单位是字节,所以我们要计算一下。比如我想让匿名用户和vsFTP上的用户都以80KB下载,所以这个数字应该是1024x80=81920 所以我们要在vsftpd.conf中加入下面的两行

  anon_max_rate=81920
  local_max_rate=81920

不要忘记重启vsftpd服务

补充六:我的硬盘空间有限,怎么办?

我的硬盘空间有限,如何把帐号ftp默认的路径/var/ftp更改到别处?或者是,我的linux所有的目录都放在/根分区,因为空间紧张,我能否把ftp这个用户的默认路径放到别的分区?

可以,应该如下操作!

首先要把ftp这个用户删除

  #userdel -r ftp 

会有错误信息,不过不用理,这是正常的。

然后我们再把这个用户添加上,比如我想为帐号ftp的家目录设置在/mnt/LinG/ftp,我们就可以如下操作

  [root@linuxsir001 root]# mkdir /mnt/LinG
  [root@linuxsir001 root]# adduser -d /mnt/LinG/ftp -g ftp -s /sbin/nologin ftp

仅仅是这样做还不行,因为这样还是不能让匿名用户找到它的家目录,所以我们必须改变/mnt/LinG/ftp这个目录的权限。

  [root@linuxsir001 root]# chmod 755 /mnt/LinG/ftp/
  [root@linuxsir001 root]# chown -R root.root /mnt/LinG/ftp/
最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册