码迷,mamicode.com
首页 > 其他好文 > 详细

vsftp安装与配置(通过虚拟用户登录)

时间:2014-11-04 06:56:20      阅读:236      评论:0      收藏:0      [点我收藏+]

标签:centos vsftp 虚拟用户

在网上多方查找,并成功运行,归纳以下文档

操作环境:

虚拟机:virtualbox4.3.14

系统:centos6.4 i386

登录用户:root


创建文件夹

mkdir /data

增加ftp虚拟用户对应的宿主账户

groupadd www
useradd -g www -d /data/www -s /sbin/nologin www 
#注意:www不需要密码,自作多情的我不小心加了个密码,然后一个下午503.....,你知道的。

安装ftp

yum -y install vsftpd pam* db4*
......
chkconfig vsftpd on
service vsftpd start

配置文件

vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO #不允许匿名用户访问
local_enable=YES  #允许本地用户访问
write_enable=YES  #允许写入
local_umask=022   #上传后文件的权限掩码
xferlog_enable=YES #开启日志
xferlog_std_format=YES  #使用标准文件日志
connect_from_port_20=YES  #是否使用20端口传输数据(是否使用主动模式)
idle_session_timeout=600  #会话超时,客户端连接到ftp但未操作
data_connection_timeout=120 #数据传输超时
ascii_upload_enable=NO  #是否允许ascii码方式上传文件
ascii_download_enable=NO  #是否允许ascii码方式下载二进制文件
ftpd_banner=Welcome to FTP service.  #欢迎语
chroot_local_user=YES   #限制所有的本地用户在自家目录
ls_recurse_enable=YES   #是否允许使用ls -R等命令
listen=YES              #开启ipv4监听,以 standalone 的方式来启动的
listen_port=21          #监听端口
pam_service_name=vsftpd #使用pam模块控制,vsftpd文件在/etc/pam.d目录下
userlist_enable=YES     #此选项被激活后,vsftpd将读取userlist_file参数所指定的文件中的用户列表。当列表中的用户登录FTP服务器时,该用户在提示输入密码之前就被禁止了。即该用户名输入后,vsftpd查到该用户名在列表中,vsftpd就直接禁止掉该用户,不会再进行询问密码等后续步聚
#userlist_deny=NO #决定禁止还是只允许由userlist_file指定文件中的用户登录FTP服务器。此选项在userlist_enable 选项启动后才生效。YES,默认值,禁止文件中的用户登录,同时也不向这些用户发出输入密码的提示。NO,只允许在文件中的用户登录FTP服务器
tcp_wrappers=YES #是否允许tcp_wrappers管理
use_localtime=YES #是否使用主机的时间?!预设使用GMT 时间(格林威治)
guest_enable=YES #设定启用虚拟用户功能
guest_username=www #指定虚拟用户的宿主用户
virtual_use_local_privs=YES #设定虚拟用户的权限符合他们的宿主用户
user_config_dir=/etc/vsftpd/vconf #设定虚拟用户的配置文件存放路径

建立虚拟用户文件

mkdir /etc/vsftpd/vconf/ 
vim /etc/vsftpd/vconf/vir_user
web #登录用户名
123456 #登录密码
#注:单数行是用户名,偶数行是密码

生成数据库文件

db_load -T -t hash -f /etc/vsftpd/vconf/vir_user /etc/vsftpd/vconf/vir_user.db

设置数据库文件的访问权限

chmod 600 /etc/vsftpd/vconf/vir_user
chmod 600 /etc/vsftpd/vconf/vir_user.db

修改/etc/pam.d/vsftpd内容

vi /etc/pam.d/vsftpd
auth required pam_userdb.so db=/etc/vsftpd/vconf/vir_user
account required pam_userdb.so db=/etc/vsftpd/vconf/vir_user
#注:据说64位系统这里配置不一样,还未试验过

创建虚拟用户的配置文件

vi /etc/vsftpd/vconf/web
#注:文件名与vir_user里的用户一致
local_root=/data/www
anonymous_enable=NO
......

重启vsftpd,这样,可以通过web登录

vsftp安装与配置(通过虚拟用户登录)

标签:centos vsftp 虚拟用户

原文地址:http://huangcx.blog.51cto.com/1128124/1571346

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!