linux vsftp创建虚拟用户

前言:

  FTP有三种登录方式:匿名登录、本地系统用户登录和虚拟用户登录。

  虚拟用户是ftp服务器的专用用户,它的特点是只能访问服务器为其提供的FTP服务,而不能访问系统的其它资源。所以,如果想让用户对FTP服务器站内具有写权限,但又不允许访问系统其它资源,可以使用虚拟用户来提高系统的安全性。在VSFTP中,认证这些虚拟用户使用的是单独的口令库文件(pam_userdb),由可插入认证模块(PAM)认证。使用这种方式更加安全,并且配置更加灵活。


1

2

3

4

5

yum install -y vsftpd

vi /etc/vsftpd/vsftpd.conf #开启用户登录认证

anonymous_enable=NO

local_root=/data

chroot_local_user=YES

1.生成虚拟用户口令库文件(为了建立此口令库文件,先要生成一个文本文件。)


1

2

3

4

5

vi /etc/vsftp/user_list.txt

user1

pass

user2

pass

2.生成用户数据库


1

2

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

chmod 600 /etc/vsftpd/user_list.db

3.创建虚拟用户PAM文件


1

2

3

vi /etc/pam.d/vsftpd.vu

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

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

4.建立本地用户来映射虚拟用户


1

2

useradd -s /sbin/nologin vftp

chmod 700 /home/vftp

5.启动虚拟用户并映射到本地用户


1

2

3

4

vi /etc/vsftpd/vsftpd.conf

guest_enable=YES

guest_username=vftp

pam_service_name=vftpd.vu

6.默认虚拟用户都在vsftp家目录,需要设置指定的目录,添加虚拟用户配置文件位置

添加用户配置目录:


1

2

3

vi /etc/vsftpd/vsftpd.conf

user_config_dir=/etc/vsftpd/vsftpd_user_conf

mkdir /etc/vsftpd/vsftpd_user_conf

添加用户配置文件:


1

2

3

4

5

6

7

vi /etc/vsftpd/vsftpd_user_conf/user1

local_root=/ftp/share

write_enable=YES

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_world_readable_only=NO   #开放用户浏览、下载权限

anon_other_write_enable=YES   #重命名权限、续传,不建议开

设置权限:


1

2

chown vftp:root -R /ftp/share

service vsftpd restart


时间: 2024-09-11 17:55:26

linux vsftp创建虚拟用户的相关文章

linux中vsftpd虚拟用户配置脚本示例

每次新安装服务器后,都要进行一系列的配置,安装软件,修改配置等,为了今后更好的部署vsftpd,特此写了个脚本用于部署 登录FTP有三种方式,匿名登录.本地用户登录和虚拟用户登录. 匿名登录:在登录FTP时使用默认的用户名,一般是ftp或anonymous. 本地用户登录:使用系统用户登录,在/etc/passwd中. 虚拟用户登录:这是FTP专有用户,有两种方式实现虚拟用户,本地数据文件和数据库服务器. FTP虚拟用户是FTP服务器的专有用户,使用虚拟用户登录FTP,只能访问FTP服务器提供的

linux下Postfix虚拟用户的配置

1.建立虚拟用户数据库 [root@mail ~]#service mysqld restart //重新启动一下mysql数据库 [root@mail ~]#tar zxf extman-0.2.5.tar.gz [root@mail ~]#cd extman-0.2.5/docs [root@mail docs]#mysql -u root -p123456 < extmail.sql //导入extmail.sql脚本,root用户登入数据库密码为123456 [root@mail doc

VSFTP+MySQL虚拟用户配置过程讲解,互联网营销

VSFTPD是一种在 UNIX/Linux中非常安全且快速的FTP服务器,目前已经被许多大型站点所采用.VSFTPD支持将用户名和口令保存在数据库文件或数据库服务器中.VSFTPD称这种形式的用户为虚拟用户.相对于FTP的本地(系统)用户来说,虚拟用户只是FTP服务器的专有用户,虚拟用户只能访问FTP服务器所提供的资源,这大大增强系统本身的安全性.相对于匿名用户而言,虚拟用户需要用户名和密码才能获取FTP服务器中的文件,增加了对用户和下载的可管理性.对于需要提供下载服务,但又不希望所有人都可以匿

linux中Pure-FTPd虚拟用户管理脚本(PureDB)

<lnmp一键安装包>之前添加虚拟主机账号是保存在数据库,因此必须安装php和数据库才能正常使用,现更改为PureDB方式(不依赖php和MySQL),将用户信息保存在本地(非数据库).但是这种方式管理ftp虚拟账号需要手工敲命令,于是写这个脚本来可视化的管理账号. 功能如下(pureftpd_vhost.sh): 1.创建账号 2.更改目录 3.更改密码 4.删除账号 5.列出所有账号 6.显示某个账号详细信息 q. 退出 如下图: ps://blog.linuxeye.com/wp-con

Linux中创建管理用户、用户组命令

  使用Linux时,需要以一个用户的身份登陆,从而限制一个使用者能够访问的资源:而组则是用来方便组织管理用户. 用户与组 •每个用户拥有一个UserID •每个用户属于一个主组,属于一个或多个附属组 •每个组拥有一个GroupID •每个进程以一个用户身份运行,并受该用户可访问的资源限制 •每个可登陆用户有一个指定的SHELL 系统中的文件都有一个所属用户及所属组,用户.组信息保存在以下三个文件中: /etc/passwd   用户信息 /etc/shadow  用户密码 /edc/group

VSFTP设置虚拟用户并且每个虚拟用户可以具有独立的属性配置

VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP 首先安装 主配置文件:/etc/vsftpd/vsftpd.conf [匿名用户] anonymous_enable=yes 是否可以匿名访问 anon_umask=022  设置匿名用户所上传文件的默认权限掩码值 anon_root=/var/ftp 设置匿名用户的FTP根目录(缺省为/var/ftp/) anon_upload_enable=yes  是否可以匿名用户上传文件 a

linux中Vsftp虚拟用户配置

1.添加虚拟用户列表 创建一个虚拟用户列表文件,保存需要配置的虚拟帐号,格式为:第一行用户名,第二行密码,依次类推. # vi /etc/vsftpd/virtual_user_list ftp_www 123456 ftp_log 123456 2.生成虚拟用户口令认证文件   通过db_load命令生成认证文件.查询db_load命令是否已安装,未安装则先安装. # rpm -qa |grep db4-utils 本地CentOS未安装,直接通过yum安装即可. # yum -y insta

Linux FTP管理之虚拟用户的搭建与部署

项目环境: 西安凌云高科技有限公司由于业务的需求,需要架设一台FTP服务器.由于系统稳定和安全等方面的考虑.公司决定采用RHEL.4作为服务器平台,在平台上面安装VSFTP软件包.在安装的过程中考虑系统安全性和流量控制.配置VSFTP服务器对最大连接数.最大传输速率等进行限制,保证系统资源的合法性. 项目标准: 能够实现FTP虚拟目录的上传和下载保证公用虚拟目录的上传下载.针对不同的虚拟目录设置不同的权限. 项目实施: 配置虚拟目录之前,VSFTP软件包我们已经安装完成.关于FTP的简单部署<菜

linux下FTP下创建虚拟账户db_load

Linux_FTP配置虚拟用户问题 执行db_load -T -t hash -f login.txt /etc/vsftpd/vsftpd_login.db时报错 -bash: db_load -T -t hash -f login.txt /etc/vsftpd/vsftpd_login.db: No such file or directory db_load应该linux下创建虚拟账户: 选项-T允许应用程序能够文本文件转译载入进数据库由于我们之虚拟用户信息文件方式存储文件里了让Vsft