FTP之虚拟用户
基于虚拟用户访问ftp
关闭防火墙,selinux
过程如下
1、装包,配置、起服务
配置过程如下:
需写入vsftpd.conf配置文件中的内容如下:
anonymous_enable=NO ---- 匿名用户可登陆
local_enable=YES ---- 本地用户可登陆
write_enable=YES ---- 可以写入
local_umask=022 ----- 设定umask值
dirmessage_enable=YES ---- 目录欢迎信息功能
xferlog_enable=YES ---- 启用日志
connect_from_port_20=YES ---- 链接端口是20
xferlog_std_format=YES ---- 日志格式
listen=YES ---- 开启监听(必须开启) RHEL7可以不开
pam_service_name=vsftpd ---- pam模块验证用户身份
userlist_enable=YES ---- 开启名单机制
tcp_wrappers=YES ----- 支持防火墙
1. yum provides */db_load 查找需要安装数据库建立工具的包,将其安装
RHEL7 需要安装 libdb-utils
2.建立虚拟用户列表
vim /etc/vsftpd/vsftp.users 一个虚拟用户文件,用户名和密码各占一行
xixi
123
haha
456
db_load -T -t hash -f /etc/vsftpd/vsftp.users /etc/vsftpd/vsftp.users.db --- 生成用户数据库文件
-T --- 支持多软件识别
-t --- 指定加密算法
-f --- 指定文件
3.建立一个不可登录用户用来作为虚拟用户的共享目录提供者
useradd -d /var/ftproot -s /sbin/nologin vftpuser
chmod 755 /var/ftproot --给与其他用户有写入权限
4.建立虚拟用户登录认证的pam模块
vim /etc/pam.d/vuserftp
#%PAM-1.0
auth required pam_userdb.so db=/etc/vsftpd/vsftp.users
account required pam_userdb.so db=/etc/vsftpd/vsftp.users
5.修改主配置文件使其支持虚拟用户验证登录
chroot_local_user=yes
guest_enable=YES
guest_username=vftpuser 与上面创建的用户对应
user_config_dir=/etc/vsftpd/vuserdir 设置的一个目录,重启服务自动生成
pam_service_name=vuserftp 与上面/etc/pam.d/vuserftp文件对应
/etc/init.d/vsftpd restart
如果访问报错refusing to run with writable root inside chroot()
配置文件写入allow_writeable_chroot=YES
重启服务
touch /etc/vsftpd/vuserdir/xixi
touch /etc/vsftpd/vuserdir/hahavi
6.为虚拟用户建立不同的权限
vim /etc/vsftpd/vuserdir/xixi
anon_upload_enable=YES
anon_umask=022
实验结果:
xixi用户可上传下载
haha用户只能下载,不能上传
有防火墙需要设置包括selinux
FTP之虚拟用户的更多相关文章
- CentOS FTP基于虚拟用户的配置
详细可以看:http://www.linuxidc.com/Linux/2013-12/94242.htm 所谓虚拟用户就是没有使用真实的帐户,只是通过映射到真实帐户和设置权限的目的.虚拟用户不能登录 ...
- Centos 7.5 搭建FTP配置虚拟用户
Centos 7.5 搭建FTP配置虚拟用户 1.安装vsftpd #vsftpd下载地址 http://mirror.centos.org/centos/7/os/x86_64/Packages/v ...
- 《RHEL6.3 FTP服务器虚拟用户的配置(含图)》——如此简单
虚拟用户就是传说中的ftp服务vip用户,大致分为这么几步: 1.安装ftp软件包 yum install *ftp* 2.启动vsftpd服务 /etc/init.d/vsftpd restart ...
- FTP(虚拟用户,并且每个虚拟用户可以具有独立的属性配置)
VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP 首先安装 主配置文件:/etc/vsftpd/vsftpd. ...
- 008.FTP单独虚拟用户
一 单独虚拟用户概念 给每个虚拟用户单独建立目录,并建立自己的配置文件,方便单独配置权限,并可以单独制定上传目录. 二 单独为虚拟用户设置权限 2.1 创建用户单独保存虚拟用户配置文件的目录 [roo ...
- ftp添加虚拟用户的实例
本文主要讲解添加一个ftp虚拟用户的流程,接上文 https://www.cnblogs.com/tssc/p/9582780.html ========= 完美的分割线 ======== 1.修改授 ...
- ftp建立虚拟用户实现文件上传和下载
环境 centos7 1.开启vsftpd服务 2.检查vsftpd服务是否开启 3.添加虚拟用户口令文件 vi etc/vsftpd/vuser.txt 4.生成虚拟用户口令认证文件 如果没有db_ ...
- ftp的虚拟用户的使用
虚拟用户原理 因为在linux之下,使用vsftp建立用户之后,默认使用ftp访问的时候,是会访问到对应的用户家目录.如果想多个用户同时访问某一个目录,同时对同一目录下有着不同的权限,比如部分用户只能 ...
- FTP服务器虚拟用户配置
FTP服务配置问题及解决方案 使用被动模式,设置云主机IP为被动模式数据传输地址:在配置文件内添加 pasv_enable=YES pasv_promiscuous=YES pasv_address= ...
随机推荐
- Android SDK Web SDK 接口测试总结
什么是SDK SDK就是一个程序,提供一些方法,调用这些方法,可以实现一些功能.如:调用银行提供的SDK,可以实现在线支付的功能. 目前主要接手的SDK有js SDK 和android SDK.JS ...
- PDF解决方案(2)--文件转PDF
相关专题链接: PDF解决方案(1)--文件上传 PDF解决方案(2)--文件转PDF PDF解决方案(3)--PDF转SWF PDF解决方案(4)--在线浏览 前言:上一篇中讲到的文件上传,文件上传 ...
- C语言两个libxml2库使用的问题
最近使用libxml2想做点东西,翻看一些example后还是有些疑问,去segmentfault问了下,感谢@pingjiang的热心解答,问题解决,记录如下 (一)如下是一个XML文件,p为根结点 ...
- String 的intern() 方法说明
1.说明 Java中string.intern()方法调用会先去字符串常量池中查找相应的字符串,如果字符串不存在,就会在字符串常量池中创建该字符串然后再返回. 2.源码说明 public native ...
- 使用sqlldr向Oracle导入大的文本(txt)文件
我们有多种方法可以向Oracle数据库里导入文本文件,但如果导入的文本文件过大,例如5G,10G的文本文件,有些方法就不尽如意了,例如PLSQL Developer中的导入文本功能,如果文本文件过大, ...
- 18 个最新实用的 jQuery 插件
1. Simple Effects for Drop-Down Lists 一个jQuery插件用于将普通的select控件转成一个带有一些简单扩展效果的下拉列表. 2. X-editable 这个插 ...
- HTTP 报文中的 Header 字段进行身份验证
[小技巧][ASP.Net MVC Hack] 使用 HTTP 报文中的 Header 字段进行身份验证 在一些 Web 系统中,身份验证是依靠硬件证书进行的:在电脑上插入 USB 证书,浏览器插件读 ...
- 基于C++11线程池
1.包装线程对象 class task : public std::tr1::enable_shared_from_this<task> { public: task():exit_(fa ...
- Toad for Oracle的安装
分享一下Oracle 10gToad for Oracle的安装步骤 三年前用过Oracle,单纯的“用过”,主要就是说对数据库的一些操作,还不包含创建一些存储过程之类的,所以对Oracle仅仅只 ...
- 基于.NET的微信SDK
超级懒汉编写的基于.NET的微信SDK 一.前言 特别不喜欢麻烦的一个人,最近碰到了微信开发.下载下来了一些其他人写的微信开发“框架”,但是被恶心到了,实现的太臃肿啦. 最不喜欢的就是把微信返回的 ...