vsftpd 流行ftp配置记录说明

vsftpd per-IP方式配置: 需要启用vsftpd的tcp_wrappers集成功能,从版本1.1.3开始支持。

编译时修改builddefs.h文件,将#undef VSF_BUILD_TCPWRAPPER改成#define VSF_BUILD_TCPWRAPPERS并重新编译以启用该功能。之后修改vsftpd.conf配置文件:

tcp_wrappers=YES

之后需要一个单独的tcp_wrapper配置文件,并添加如下内容到/etc/hosts.allow文件中,在bsd类的unix系统中,如:

vsftpd: 192.168.1.3: setenv VSFTPD_LOAD_CONF /etc/vsftpd_tcp_wrap.conf

vsftpd: 192.168.1.4: DENY

在linux中,要改成:

vsftpd: 192.168.1.3: export VSFTPD_LOAD_CONF=/etc/vsftpd_tcp_wrap.conf

vsftpd: 192.168.1.4: DENY

第一行: 如果从192.168.1.3连进来的客户端,vsftpd进程会把/etc/vsftpd_tcp_wrap.conf文件作为该连接会话的配置,并且这里的配置选项优先级高于默认的vsftpd配置文件。这个特定非常的强大,可以根据ip地址或一个网段进行指定特定的访问权限控制,或者使一些地址不受max_clients=0的限制,还可以增大或减少一些网段或ip的带宽。

第二行:禁止192.168.1.4的客户端连接。这可以把那些捣乱的客户端拒之门外,并不需要使用xinetd来做。

vsftpd 虚拟用户配置:

  1. 创建一个虚拟用户文件,包含可连接的虚拟用户
  2. 修改vsftpd.conf配置文件,添加虚拟用户相关的配置
  3. 配置pam认证

具体详细过程:

  1. 虚拟用户文件/etc/vsftpd/login.txt,内容示例:

tom    #username

foo    #tom‘s password

fred   #username

bar     # user fred‘s password

执行db_load -T -t hash -f logins.txt /etc/ftpusers.db 生成用户数据库文件,为了安全: chmod 600 /etc/ftpusers.db

2. vsftpd.conf 配置文件内容:guest_enable,guest_username为必须项,login.txt中的用户,会以guest_username的身份访问ftp服务器。

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=virtual

listen=YES

listen_port=10021

pasv_min_port=30000

pasv_max_port=30999

3. pam认证配置,一般为/etc/pam.d/vsftpd或/etc/pam.d/ftp,如果配置文件中指定了pam_service_name=vsftpd,则为前者。

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

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

注意:虚拟用户只能访问全局可度的文件和目录

以上为简单的ftp虚拟用户配置,下面是更为复杂的ftp配置方式,假如需用区分虚拟用户,以分别进行权限控制,就需要该方式:

为每个用户指定一个配置文件,假如有tom和fred两个用户,希望tom只能下载不能上传,而fred既可以下载也能上传:

  1. 激活每个用户一个配置文件的功能,在vsftpd.conf文件中添加:

user_config_dir=/etc/vsftpd_user_conf    #需要创建该目录:mkdir /etc/vsftpd_user_conf

2.使tom可以读取ftp服务器/下的所有文件

之前说虚拟用户只能访问全局可读的文件和目录,下面这种方式可以使tom访问到并非全局可读的文件:

echo "anon_world_readable_only=NO" > /etc/vsftpd_user_conf/tom

这样就可以覆盖全局配置中的anon_world_readable_only选项,通过这种方式,可以为不同的虚拟用户赋予不同的访问权限。

3.使fred可以上传和下载

echo "anon_world_readable_only=NO" > /etc/vsftpd_user_conf/fred

echo "write_enable=YES" >> /etc/vsftpd_user_conf/fred

echo "anon_upload_enable=YES" >> /etc/vsftpd_user_conf/fred

时间: 2024-10-21 18:41:34

vsftpd 流行ftp配置记录说明的相关文章

linux FTP配置详解

一.vsftpd说明: LINUX下实现FTP服务的软件很多,最常见的有vsftpd,Wu-ftpd和Proftp等.Red Hat Enterprise Linux中默认安装的是vsftpd. 访问FTP服务器时需要经过验证,只有经过了FTP服务器的相关验证,用户才能访问和传输文件.vsftpd提供了3种ftp登录形式:  (1)anonymous(匿名帐号) 使用anonymous是应用广泛的一种FTP服务器.如果用户在FTP服务器上没有帐号,那么用户可以以anonymous为用户名,以自己

笔记13(FTP配置、tomcat配置、resin配置、MySQL主从配置)

FTP服务搭建与配置 FTP介绍 FTP是File Transfer Protocol(文件传输协议,简称文传协议)的英文简称,用于在Internet上控制文件的双向传输. FTP的主要作用就是让用户连接一个远程计算机(这些计算机上运行着FTP服务器程序),并查看远程计算机中的文件,然后把文件从远程计算机复制到本地计算机,或把本地计算机的文件传送到远程计算机. 小公司用的多,大企业不用FTP,因为不安全. 使用vsftpd搭建ftp服务 centos上自带vsftpd 安装:yum instal

Vsftpd 虚拟用户配置

System:Centos6.7x86_64 Author:miles Date:2015/11/24 shanghai step 1 安装 yum -y install vsftpd db4-utils step 2 创建虚拟用户 vim /opt/loginuser.txt milesaway   milesawaypwd db_load -T -t hash -f /home/loginuser.txt /etc/vsftpd/vsftpd_login.db chmod 600 /etc/

vsftpd超详细配置教程

环境:CentOS 5.0 操作系统一.安装:1.安装Vsftpd服务相关部件:[[email protected] ~]# yum install vsftpd*Dependencies Resolved=============================================================================Package                 Arch       Version          Repository       

vsftpd.conf详细配置。

#################匿名权限控制############### anonymous_enable=YES #是否启用匿名用户no_anon_password=YES #匿名用户login时不询问口令 下面这四个主要语句控制这文件和文件夹的上传.下载.创建.删除和重命名.anon_upload_enable=(yes/no):  #控制匿名用户对文件(非目录)上传权限.anon_world_readable_only=(yes/no): #控制匿名用户对文件的下载权限anon_mkd

linux中ftp配置

防火墙开启 [[email protected] ~]# service iptables start 添加规则20主动端口,21被动端口 [[email protected] ~]# iptables -I INPUT 1 -p tcp --dport 20:21 -j ACCEPT 保存配置 [[email protected] ~]# service iptables save iptables: Saving firewall rules to /etc/sysconfig/iptabl

ftp搭建记录

1.安装vsftpd的rpm包 rpm -ivh vsftpd-2.0.5-16.el5_4.1.i386.rp 2.ftp命令 service vsftpd start service vsftpd stop service vsftpd restar rpm -qa |grep vsftp        -----查看版本 rpm -e 版本名称   ----卸载命令 3.ftp配置 /etc/vsftpd/vsftpd.conf /etc/vsftpd/user_list /etc/vsf

Linux FTP配置

Linux下实现ftp的软件有很多,最常见的有vsftpd,Wu-ftpd和proftp等.访问ftp服务器时需要验证,只有经过了ftp服务器的验证用户才能访问和传输文件.这里我们用vsftpd,vsftpd提供了3种登陆形式: (1)anonymous(匿名账号) 使用anonymous是应用广泛的一种FTP服务器,如果用户在FTP服务器上没有帐号,那么用户可以以anonymous为用户名,以自己的电子邮件地址为密码进行登录.当匿名用户登录FTP服务器后,其登录目录为匿名FTP服务器的根目录/

烂泥:ubuntu下vsftpd虚拟用户配置

本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我微信ilanniweb. 以前搭建vsftpd都是在centos下,本以为在ubuntu按照以前的步骤搭建即可.可是实际情况告诉我是,我太想当然了.经过一番的折腾终于把ubuntu下vsftpd虚拟用户的配置搞定了,下面就把我的配置步骤贴出来供得为参考. 一.业务要求 现在要求创建一个FTP账号ailanni,该账号只能登录到/www目录下,不能切换到上级目录.同时处于安全考虑还要求该账号上传的文件权限为644