下载安装vsftpd服务,db4用来支持文件数据库
yum install -y vsftpd db4-utils ftp
 建立宿主用户 vsftpd
useradd -s /sbin/nologin -M vsftpd
useradd -s /sbin/nologin -M www
编辑 vsftpd 配置文件
vim /etc/vsftpd/vsftpd.conf

anonymous_enable=NO
listen_port=
local_enable=YES
write_enable=YES
local_umask=
dirmessage_enable=YES
xferlog_enable=YES
xferlog_file=/var/log/xferlog
dual_log_enable=YES
vsftpd_log_file=/var/log/vsftpd.log
connect_from_port_20=YES
chown_uploads=NO
xferlog_std_format=YES
idle_session_timeout=
data_connection_timeout=
allow_writeable_chroot=yes
chroot_local_user=YES
listen=YES
tcp_wrappers=YES
userlist_enable=YES
user_config_dir=/etc/vsftpd/user.d
ascii_upload_enable=YES
ascii_download_enable=YES
check_shell=NO
pasv_addr_resolve=YES
pasv_enable=YES
pasv_min_port=
pasv_max_port=
pam_service_name=virtusers
virtual_use_local_privs=YES
guest_enable=YES
guest_username=www

vsftpd.conf

建立用户配置文件目录
mkdir /etc/vsftpd/user.d
设定 PAM 验证文件,并指定虚拟用户数据文件读取,原vsftpd不变
vim /etc/pam.d/virtusers
#PAM-1.0
auth required pam_userdb.so db=/etc/vsftpd/virtusers
account required pam_userdb.so db=/etc/vsftpd/virtusers
session required pam_loginuid.so
创建虚拟用户
touch /etc/vsftpd/virtusers.txt
添加可访问的用户和密码,一行一用户,一行一密码
echo -e 'user1\n123456' >> /etc/vsftpd/virtusers.txt
db_load -T -t hash -f /etc/vsftpd/virtusers.txt /etc/vsftpd/virtusers.db
chmod 700 /etc/vsftpd/virtusers.db
规划好虚拟用户的主路径
mkdir -p /data/vsftpd
建立测试用户的FTP主目录
mkdir -p /data/vsftpd/user1
定制测试用户的配置文件
vim /etc/vsftpd/user.d/user1
添加:
local_root=/data/vsftpd/user1
write_enable=YES
anon_world_readable_only=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
目录赋权
chown -R www:www /data/vsftpd/
重启
centos6:service vsftpd restart
centos7:systemctl restart vsftpd
创建新用户
echo -e 'user2\n123456' >> /etc/vsftpd/virtusers.txt
db_load -T -t hash -f /etc/vsftpd/virtusers.txt /etc/vsftpd/virtusers.db
chmod 700 /etc/vsftpd/virtusers.db
mkdir -p /etc/vsftpd/user.d/user2
vim /etc/vsftpd/user.d/user2
添加:
local_root=/data/vsftpd/user2
write_enable=YES
anon_world_readable_only=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
故障处理
若出现500错误

创建/home/www目录,重新连接即可

 

vsftpd 安装与配置的更多相关文章

  1. Debian 8下vsftpd安装与配置

    Debian 8下vsftpd安装与配置 0.环境 root@remote:/# uname -r 3.16.0-4-amd64 root@remote:/e# lsb_release No LSB ...

  2. centos下vsftpd安装与配置

    1.已经配置好可以上网了,所以即可通过yum install vsftpd安装啦.如果不能上网则可以通过dvd2.iso工具集rpm方式进行安装. 2.安装好后,默认本地可以通过匿名用户登录,但是其它 ...

  3. [转]非常好的vsftpd安装于配置

    环境:CentOS 5.0 操作系统一.安装:1.安装Vsftpd服务相关部件:[root@KcentOS5 ~]# yum install vsftpd*Dependencies Resolved= ...

  4. CentOS7 vsftpd 安装及配置

    0x:卸载vsftpd [root@localhost ~]# yum remove vsftpd [root@localhost ~]# find / -name "vsftpd*&quo ...

  5. Linux中vsftpd安装和配置

    目录 Redhat/CentOS安装vsftp软件 Ubuntu/Debian安装vsftp软件 Redhat/CentOS安装vsftp软件 1. 安装vsftp $ yum install vsf ...

  6. 【linux运维】Linux服务器玩转vsftpd安装与配置

    Linux服务器搭建ftp详细教程. 前言 本文,主要以vsftp软件为主进行讲解,版本为3.0.2.以介绍设置虚拟用户.权限验证为主,linux权限知识默认大家都有所了解.vsftpd设置有两种模式 ...

  7. vsftpd安装与配置--研究tcp与防火墙

    vsftpd的配置文件 /etc/vsftpd/vsftpd.conf 主配置文件 /usr/sbin/vsftpd Vsftpd的主程序 /etc/rc.d/init.d/vsftpd 启动脚本 / ...

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

    本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我微信ilanniweb. 以前搭建vsftpd都是在centos下,本以为在ubuntu按照以前的步骤搭建即可.可 ...

  9. vsftpd安装及虚拟用户配置

    服务器环境:CentOS6.9 Linux 2.6.32-696.10.1.el6.x86_64 安装vsftpd.db4.db4-utils # yum -y install vsftpd db4 ...

随机推荐

  1. Python—randonm模块介绍

    random是python产生伪随机数的模块 >>> random.randrange(1,10) #返回1-10之间的一个随机数,不包括10 >>> random ...

  2. 注入技术--LSP劫持注入

    1.原理 简单来说,LSP就是一个dll程序. 应用程序通过winsock2进行网络通信时,会调用ws2_32.dll的导出函数,如connect,accept等. 而后端通过LSP实现这些函数的底层 ...

  3. Pseudo Registers

    Pseudoregister Description @ERR Last error value; the same value returned by the GetLastError() API ...

  4. React Native之微信分享(iOS Android)

    React Native之微信分享(iOS Android) 在使用React Native开发项目的时候,基本都会使用到微信好友或者微信朋友圈分享功能吧,那么今天我就带大家实现以下RN微信好友以及朋 ...

  5. [转帖]Runtime, Engine, VM 的区别是什么?

    这就是个WiFi和WLAN关系的问题嘛.Runtime是指用于支持程序运行时的组件,它可以是个Engine和/或VM.VM是一种系统抽象,它提供代码执行所需的API环境.Engine是一种处理抽象,它 ...

  6. git fetch 和git pull 的差别

    1.git fetch 相当于是从远程获取最新到本地,不会自动merge,如下指令: git fetch orgin master //将远程仓库的master分支下载到本地当前branch中 git ...

  7. Spark源码编译,官网学习

    这里以spark-1.6.0版本为例 官网网址   http://spark.apache.org/docs/1.6.0/building-spark.html#building-with-build ...

  8. day 7-20 视图,触发器,事务

    一.视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,可以将该结果集当做表来使用. 使用视图我们可以把查询过程中的 ...

  9. mysql定时任务event——清理过期数据

    需要删除数据的表名:t_req_log 建表sql CREATE TABLE `t_req_log` ( `id` ) NOT NULL AUTO_INCREMENT, `host` ) DEFAUL ...

  10. java 中的迭代

    package cn.zhou.com; import java.util.ArrayList; import java.util.Collection; import java.util.Itera ...