vsftpd配置虚拟用户

在VSFTP中,虚拟用户认证使用的是单独的口令库文件(pam_userdb),由可插入认证模块(PAM)认证。使用这种方式只能访问服务器为其提供的FTP服务,而不能访问系统的其它资源,由此来提高系统的安全性。并且配置更加灵活。

下面介绍配置过程。注意防火墙和selinx


1.生成虚拟用户口令文件。

# vim /etc/vsftpd/login.txt

ftpu1#用户名

1234#密码

ftpu2

qwer

ftpu3

5678

2.生成口令库文件,并修改其权限:

# db_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/vsftpd_login.db
# chmod 600 /etc/vsftpd/vsftpd_login.db

3.编辑虚拟用户的PAM文件。清空并添加以下内容:

# > /etc/pam.d/vsftpd
# vim /etc/pam.d/vsftpd

32位系统:

auth  required  pam_userdb.so db=/etc/vsftpd/vsftpd_login

account  required  pam_userdb.so db=/etc/vsftpd/vsftpd_login

64位系统:

auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

说明:/etc/vsftpd/vsftpd_login文件为第2部中生成的虚拟用户的db文件,不可加.db。

4.建立虚拟用户(www),不允许登录系统

# useradd -M -s /sbin/nologin www

5.编辑vsftpd配置文件

# /etc/vsftpd/vsftpd.conf

anonymous_enable=NO    #不允许匿名访问

local_enable=YES    #本地用户可以访问,如果为NO 则所有虚拟用户都将不能访问,因为虚拟用户的访问在主机上其实是以本地用户访问的

local_umask=022

xferlog_enable=YES#开启日志

xferlog_file=/var/log/vsftpd.log#日志保存路径

connect_from_port_20=YES

xferlog_std_format=YES

listen=YES

write_enable=YES

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

one_process_model=NO

chroot_local_user=YES#限定用户不可立刻家目录

ftpd_banner=Welcom to lst FTP_server.

anon_world_readable_only=NO

guest_enable=YES#开启虚拟用户功能

guest_username=www#指定虚拟用户的宿主内置用户

pam_service_name=vsftpd    #指定pam认证文件名,第3部中的/etc/pam.d/vsftpd

user_config_dir=/etc/vsftpd/vuser.conf.d    #虚拟用户独立配置文件

6.创建每个虚拟用户的独立配置文件。

# mkdir /etc/vsftpd/vuser.conf.d
# vim /etc/vsftpd/vuser.conf.d/ftpu1

local_root=/www/ftpsite/ftpu1    #虚拟用户ftpu1的根目录

anon_world_readable_only=NO

anon_umask=022

write_enable=YES    #可写权限

anon_mkdir_write_enable=YES

anon_upload_enable=YES

anon_other_write_enable=YES

7.创建虚拟用户的家目录,并赋予权限

# mkdir /www/ftpsite/ftpu1
# cd /www/ftpsite/
# chown -R www.www /ftpu1/    #设置文件所有者.所有者为本地用户www
# chmod 700 /www/ftpsite/ftpu1

8.重新启动VSFTP:

# service vsftpd restart

9.本地测试

# ftp 127.0.0.1

Connected to 127.0.0.1 (127.0.0.1).

220 Welcom to my FTP server.

Name (127.0.0.1:root): ftpu1#使用虚拟用户ftpu1登录

331 Please specify the password.

Password:

230 Login successful. Have fun.

Remote system type is UNIX.

Using binary mode to transfer files.

10.添加FTP用户的步骤

1.在/etc/vsftpd/login.txt中添加用户名和密码

2.更新口令库文件

# db_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/vsftpd_login.db

3.创建虚拟用户的独立配置文件,文件名与虚拟用户名相同

# vim /etc/vsftpd/vuser.conf.d/ftpuN

4.为新用户新建家目录并修改权限

时间: 2024-10-18 19:11:04

vsftpd配置虚拟用户的相关文章

VSFTPD配置虚拟用户 -V2

1.安装vsftpd #yum install  vsftpd 2.建立虚拟用户,格式为第一行为用户名名,第二行为密码,然后类推 #vim /home/loginuser.txt 3.为虚拟用户生成建立db数据库,同时只有root用户才能读写 # db_load -T -t hash -f /home/loginuser.txt /etc/vsftpd/vsftpd_login.db # chmod 600 /etc/vsftpd/vsftpd_login.db 4.配置pam文件 # u (6

CentOS 6.4下安装vsftpd、配置虚拟用户登录

概述: vsftpd是Linux下比较著名的FTP服务器,搭建FTP服务器当然首选这个. 本文介绍了在CentOS 6.4下安装vsftpd.配置虚拟用户登录FTP的过程. 正文: 一:安装vsftpd 查看是否已经安装vsftpd rpm -qa | grep vsftpd 如果没有,就安装,并设置开机启动 yum -y install vsftpd chkconfig vsftpd on 二:基于虚拟用户的配置 所谓虚拟用户就是没有使用真实的帐户,只是通过映射到真实帐户和设置权限的目的.虚拟

vsftpd+pam_mysql 虚拟用户配置

公司项目需求: 我们公司是化妆品电子商务公司 1.搭建一台ftp服务器用于上传包裹快递面单图片,实现基本的上传下载功能 2.vsftpd通过虚拟用户登录,可以外网访问 3.限制虚拟用户登录ip 4.虚拟用户相关配置文件可以界面操作添加.修改等,而且要及时更新 下面主要是1.2两步实现步骤及注意事项 3.4两步在另一篇博客里有详细的说明及代码(vsftpd+pam_mysql+shell) 安装pam_mysql  (请一定要安装,下面安装vsftpd错误3给出了解释)这里没有给出mysql的安装

Azure + vsftpd + ubntu14 + 虚拟用户 遇到的问题:从网上摘抄

:在Azure安装好ubuntu虚拟机,安装包选择ubuntu14.04 LTS,选择LTS,以便微软对其以后的更好支持,不选就可能技术支持不会很久,现只开一台,端口默认选择22 :打开虚拟机,进入端点设置,已经启用端口22 :在本地windows中用Xshell连接虚拟机,用ssh2方式,主机地址在虚拟机的仪表盘下面ssh详细信息看到,端口选22 :连接成功了先安装vsftpd : sudo apt-get install vsftpd : 然后配置:sudo vim /etc/vsftpd.

vsftpd使用虚拟用户认证

1.vsftpd安装ip:192.168.20.129 Centos 6.4-64系统) [[email protected] ~]# yum install -y vsftpd db4-utils 2.配置vsftp [[email protected] ~]#mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak [[email protected] ~]# vim /etc/vsftpd/vsftpd.conf listen=YES a

vsftp配置虚拟用户

1.首先创建账号列表,基数行为账号,偶数行为密码. vim /etc/vsftpd/user.list down down up up 2.安装vsftp和加密程序,系统光盘都有这两个软件. rpm -Uvh /media/cdrom/Server/vsftpd-2.0.5-10.el5.i386.rpm rpm -Uvh /media/cdrom/Server/db4-utils-4.3.29-9.fc6.i386.rpm 加密账号密码 cd /etc/vsftp/user.list db_l

生产环境搭建ftp并配置虚拟用户

虚拟用户的特点是只能访问服务器为其提供的FTP服务,而不能访问系统的其它资源.所以,如果想让用户对FTP服务器站内具有写权限,但又不允许访问系统其它资源,可以使用虚拟用户来提高系统的安全性.在VSFTP中,认证这些虚拟用户使用的是单独的口令库文件(pam_userdb),由可插入认证模块(PAM)认证. 虚拟用户并非系统上的用户,但它必须映射到系统上的某个用户,虚用户的家目录属主和属组就这系统上的这个用户.并且每个虚用户有自己的用户名和密码,每个虚用户也可以单独设定对家目录的访问权限.使用文件的

Vsftp安装及配置虚拟用户

Vsftp安装及配置虚拟用户 一.安装 采用yum安装 [[email protected]_64_122_centos vsftpd]# yum installvsftpd 安装完成以后vsftpd的默认配置文件在/etc/vsftpd 二.建立虚拟用户的过程 1,创建虚拟用户文本文件,添加虚拟用户和密码 [[email protected]_64_122_centos vsftpd]# vivuser.txt 奇数行是用户名,偶数是密码. 比如: admin [email protected

vsftpd-mysql配置虚拟用户

实验环境: Linux centos-server 2.6.32-504.el6.x86_64 vsftpd-2.2.2-13.el6_6.1.x86_64 mysql-5.1.73-3.el6_5.x86_64 搭建所需环境: yum install mysql mysql-server openssl pam-devel yum -y groupinstall "Development Tools" "Development Libraries" 安装pam_m