###########配置流程###########

1 新建一个ftp用户,为了跟vsftp的虚拟用户对应

#useradd  -d /home/vftpuser   -s /sbin/nologin  vftpuser

2  创建虚拟用户列表

  vim /etc/vsftpd/vftpuser.txt

在里面写上

tom  #用户名

  #tom的ftp登录密码

jim  #跟上面一样,一行用户名,下面一行是对应的密码

  #jim的ftp登录密码

!wq   保存退出

2.1   新建虚拟用户配置文件

    mkdir /etc/vsftpd/user_config

    vim /etc/vsftpd/user_config/tom

    在里面写上

anon_world_readable_only=YES
write_enable=YES
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
local_root=/usr/local/nginx/html/ #这个是网站根目录,方便修改

保存退出

    

3 把虚拟用户列表生成db文件,下面会用到

  db_load -T -t hash -f /etc/vsftpd/vftpuser.txt  /etc/vsftpd/vftpuser.db

4 修改虚拟用户验证文件

  vim /etc/pam.d/vsftpd

注销掉所有行,在最下面加上

auth required pam_userdb.so db=/etc/vsftpd/vftpuser
account required pam_userdb.so db=/etc/vsftpd/vftpuser

注意pam_userdb.so的路径,参考的许多文章都是   auth required /lib64/security/pam_userdb.so,这个文件在centOS 6.4中没找到,直接换成pam_userdb.so

保存退出

5 重启vsftpd, 用tom这个用户登录,验证一下是否可以登录

###################以下是vsftpd的配置文件###########

# Example config file /etc/vsftpd/vsftpd.conf

anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES

xferlog_std_format=YES

chroot_local_user=YES

listen=YES
#listen_ipv6=YES

pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES

guest_enable=YES
guest_username=vftpuser   #useradd  -d /home/vftpuser   -s /sbin/nologin  vftpuser (通过这个命令创建的用户,虚拟用户对应的实际用户)
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/user_config
#pasv_enable=1 #开启被动模式
pasv_min_port=4000 #随机最小端口
pasv_max_port=5000 #随机最大端口
anon_other_write_enable=YES

###############    可能会遇到的问题  ###############

1   chmod -R o+w /usr/local/nginx/html/test_dir/   # 把网站目录权限,设置成其它用户 可写 ,解决553 不能上传文件的问题

2 连接超时

编辑配置文件: vi /etc/vsftpd/vsftpd.conf

  在最下面加入:

#pasv_enable=YES #开启被动模式,这个报错
pasv_min_port=4000 #随机最小端口
pasv_max_port=5000 #随机最大端口

####### 以下是开启端口######

iptables   -A OUTPUT -p tcp --sport 4000:5000 -j ACCEPT

iptables  -A INPUT -p tcp --dport 4000:5000 -j ACCEPT

/etc/init.d/iptables save

4  setsebool -P allow_ftpd_full_access 1   #553无法上传文件的问题

5

5.1 modprobe ip_conntrack_ftp

    5.2  modprobe ip_nat_ftp  (连接超时的问题)

参考 : http://www.lingdus.com/thread-8189-1-1.html  连接超时问题

http://www.ha97.com/4113.html  配置参考,添加虚拟用户

http://www.oschina.net/question/13403_24332  553无法上传文件的问题

centOS 6.4 vsftpd 配置的更多相关文章

  1. centos 中的vsftpd 配置

    一.安装vsftpd 1.1 检查系统是否已经安装过vsftpd了 [root@localhost /]# rpm -aq vsftpd 如果返回结果显示: vsftpd--.el7.x86_64 # ...

  2. Centos 6.5使用vsftpd配置FTP服务器教程

    Centos 6.5使用vsftpd配置FTP服务器教程什么是vsftpd vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序.特点是小巧轻快,安全易用.vsftpd 的名字代表”ver ...

  3. centos yum安装与配置vsFTPd FTP服务器(转)

    vsftpd作为FTP服务器,在Linux系统中是非常常用的.下面我们介绍如何在centos系统上安装vsftp. 什么是vsftpd vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序 ...

  4. 运维之Centos apache vsftpd配置

    安装Apache yum install httpd -y chkconfig httpd on service httpd start 配置一下iptables iptables -I INPUT ...

  5. CentOS 7.0安装配置Vsftp服务器

    一.配置防火墙,开启FTP服务器需要的端口 CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙. 1.关闭firewall: systemctl stop fi ...

  6. CentOS 7.0安装配置Vsftp服务器步骤详解

    安装Vsftp讲过最多的就是在centos6.x版本中了,这里小编看到有朋友写了一篇非常不错的CentOS 7.0安装配置Vsftp服务器教程,下面整理分享给各位. 一.配置防火墙,开启FTP服务器需 ...

  7. CentOS下安装vsftpd

    因为FTP的端口是 两个,一个是固定21端口,还有一个任意端口的数据通道.关键是任意端口不好搞. 首先在vsftpd的配置文件中设置 任意端口的范围 [root@localhost root]# vi ...

  8. 【转发】【linux】【ftp】CentOS 7.0安装配置Vsftp服务器

    adduser -d /var/www/android -g ftp -s /sbin/nologin ftp2 一.配置防火墙,开启FTP服务器需要的端口 CentOS 7.0默认使用的是firew ...

  9. CentOS 5.11安装配置LAMP服务器(Apache+PHP5+MySQL)

    http://www.osyunwei.com/archives/8880.html 准备篇: CentOS 5.x系统安装配置图解教程 http://www.osyunwei.com/archive ...

随机推荐

  1. 如何将可执行文件打包至APK并运行(转)

    原文链接:http://www.lupaworld.com/home.php?mod=space&uid=345712&do=blog&id=248921 好久没有写bolg了 ...

  2. ios 添加到cell 上的button点击无效!扩大button的点击区域(黑魔法)

    一般情况下点击效果都是正常的!要不然你对它做了什么?一般细心的小伙伴都没有遇到这种情况,但是呢! 当然我是二班的!在这里我主要讲两个问题,解决问题和普及魔法. 一.普及问题(button在cell上点 ...

  3. Objective-C中一种消息处理方法performSelector: withObject:

    Objective-C中调用函数的方法是“消息传递”,这个和普通的函数调用的区别是,你可以随时对一个对象传递任何消息,而不需要在编译的时候声明这些方法.所以Objective-C可以在runtime的 ...

  4. Android---用Wi-Fi来建立对等连接

    本文译自:http://developer.android.com/training/connect-devices-wirelessly/wifi-direct.html WiFi对等API(P2P ...

  5. [ES6] 22. Const

    'const' keyword is for creating a read only variable, something you can never change once created. ' ...

  6. 转:oracle ebs po模块一揽子采购协议小结

    转自:http://yedward.net/?id=193 oracle ebs po模块一揽子采购协议小结 本文总结oracle ebs采购订单(po)模块一揽子采购协议的相关知识,总结如下: 1. ...

  7. C#的类型、变量和值

    大学学了C#,工作也是使用C#,虽然在日常的开发中没什么大的问题,但个人觉得在C#的理解还不是很清晰,所以决定花一定的时间来理一理学过的知识,顺便革新下脑袋里的知识,因为坑爹的学校在教.net的时候, ...

  8. A Swift Tour(4) - Objects and Classes

    Objects and Classes(对象和类) 用 class 关键字后面跟一个类名来创建一个class,在一个类中声明 常亮或变量,他存在于当前类的上下文,函数的方法是同样的 var numbe ...

  9. Android colors.xml

    <?xml version="1.0" encoding="utf-8"?><resources> <color name=&qu ...

  10. mysql 直接从date 文件夹备份表,还原数据库之后提示 table doesn`t exist的原因和解决方法

    补充:正常情况下,建议数据库备份最好用工具进行备份,通过拷贝数据库表进行数据迁移,不同的环境会出现各种不同的意外问题. 背景:今天在整理一个网站的时候,操作系统由于系统自动更新导致一直出现系统蓝屏死机 ...