centos7 vsftp 虚拟账号,限制目录,上传下载权限
(1)查看是否已经安装了vsfptd:
vsftpd -v
(2)下载安装:
yum -y install vsftpd
(3)创建:chroot_list 文件:
touch /etc/vsftpd/chroot_list
(4)安装 FTP 虚拟用户需要用到的软件及认证模块:
yum install pam* db4* --skip-broken –y
(5)创建一个ftpusers.txt文件:
vim /etc/vsftpd/ftpusers.txt
(6)写入账号及密码,用来保存虚拟用户账号及密码信息,格式是:比如第1行为账号,第2行就是秘密
testftp
12345
(7)修改权限:
chmod 700 /etc/vsftpd/ftpusers.txt
(8)生成虚拟用户数据库文件(注意:以后对虚拟用户的增删操作完之后需要再次执行此命令,使其生成新的数据文件):
db_load -T -t hash -f /etc/vsftpd/ftpusers.txt /etc/vsftpd/vsftpd_login.db
(9)修改权限:
chmod 700 /etc/vsftpd/vsftpd_login.db
(10)设置PAM验证文件,并制定虚拟用户数据库文件进行读取,对原验证文件备份后进行更改:
cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd.back
(11)修改/etc/pam.d/vsftpd文件:vim /etc/pam.d/vsftpd
在最顶部添加以下两项:
auth sufficient pam_userdb.so db=/etc/vsftpd/vsftpd_login
account sufficient pam_userdb.so db=/etc/vsftpd/vsftpd_login
(12)创建虚拟用户配置目录,用来单独配置不同虚拟用户访问不同目录等。
mkdir /etc/vsftpd/vsftpd_user_conf
(13)创建一个与虚拟用户同名称的文件,用来单独配置这个虚拟用户的访问目录。
vim /etc/vsftpd/vsftpd_user_conf/test1
写入配置内容:
local_root=/home/www/test1 #根据实际来写,目录不存在需创建
write_enable=YES
anon_world_readable_only=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
(14) 创建 vsftpd 映射本地用户:
所有的 FTP 虚拟用户需要使用一个系统用户,这个系统用户不需要密码,也不需要登录。 主要用来做虚拟用户映射使用。
useradd -d /home/www -s /sbin/nologin ftpuser
(15) 设置主目录权限(否则无法写入):
chown -R ftpuser:ftpuser /home/www
(16) 备份vsftpd.conf文件:
cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.back
清空vsftpd.conf内容:
> /etc/vsftpd/vsftpd.conf
写入以下内容
vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO # 禁止匿名登录
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
idle_session_timeout=600
data_connection_timeout=6
listen=YES
listen_port=21
allow_writeable_chroot=YES
local_root=/home/www
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
userlist_enable=YES
userlist_deny=YES
userlist_file=/etc/vsftpd/user_list
pasv_enable=YES
pasv_min_port=10240
pasv_max_port=10260
pam_service_name=vsftpd
guest_enable=YES
guest_username=ftpuser
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/vsftpd_user_conf
reverse_lookup_enable=NO
(17)添加用户,加入组,设置访问目录,不能telnet登录:
useradd -d /opt/test_ftp -g ftp -s /sbin/nologin testftp
(18)允许用户修改密码,但是又没有telnet登录系统的权限:
usermod -s /usr/bin/passwd testftp //用户telnet后将直接进入改密界面
(19)启动服务: service vsftpd start
(20) 加入开机启动: systemctl enable vsftpd.service
(21)测试: ftp ip,根据提示输入用户名和密码
如果修改用户密码:passwd testftp, 记得 db_load -T -t hash -f /etc/vsftpd/ftpusers.txt /etc/vsftpd/vsftpd_login.db
centos7 vsftp 虚拟账号,限制目录,上传下载权限相关推荐
- php蓝奏云网盘源码,蓝奏云网盘打开目录/上传/下载源码
.如果 (超级列表框1.取标题 (超级列表框1.现行选中项, 1) = "文件夹") 信息框 ("此文件属于文件夹下载失败", 0, , ) .否则 超级列表框 ...
- 使用java对ftp进行文件的上传下载demo
本文引用了https://www.cnblogs.com/lr393993507/p/5502266.html资源,并做了一些优化 这里有个写好的java项目demo,csdn好像擅自给我的资源加了很 ...
- vsftp 虚拟账号部署
环境:CentOS 7.4操作系统 一.安装: 1.安装Vsftpd服务相关部件: [root@KcentOS5 ~]# yum install vsftpd* !!!--记得关selinux 和 f ...
- 上传下载文件实例(vsftp服务器+nginx)
上传下载文件实例(vsftp服务器+nginx) 页面(上传+下载) <form action="/pic/upload" enctype="multipart/f ...
- linux ftp匿名只能下载,04. 创建匿名用户能够上传下载,或只能下载的目录
Re:FTP 文件传输服务 ========================== FTP 服务不论在企业或教学中,是很常用的文件共享方式,它既可以做到匿名访问,也可以做到用户名和密码访问,更可以做到只 ...
- 怎么linux中创建虚拟路径,linux服务器创建虚拟路径解决文件上传路径隔离问题...
需求环境 图片上传最简单的就是上传web项目下,这样图片与项目不可分离会产生很多不必要的影响.例如:重新部署项目需要把所有上传的图片再copy一份等. 图片与项目分离有好几种方式: 方式一.在linu ...
- JSP中的文件操作:数据流、File类、文件浏览、目录操作、上传下载
文件可以永久地存储信息,从本质上讲文件就是存放在盘上的一系列数据的集合.应用程序如果想长期保存数据,就必须将数据存储到文件中,这就涉及到文件的操作.而在编写网站应用程序的过程中,有许多地方要对文件 ...
- Linux下scp无密码上传 下载 文件 目录的方法
这篇文章主要介绍了Linux下scp无密码上传 下载 文件 目录的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下 在Linux下远程备份的时候,需要配置scp的 无密码复制文件.目录.就把这个 ...
- python get 下载 目录_python实现支持目录FTP上传下载文件的方法
本文实例讲述了python实现支持目录FTP上传下载文件的方法.分享给大家供大家参考.具体如下: 该程序支持ftp上传下载文件和目录.适用于windows和linux平台. #!/usr/bin/en ...
最新文章
- Linux内存管理Linux Memory Management Notes
- 玩转mini2440开发板之【如何使用JLink下载烧录boot程序到NorFlash】
- P4047-[JSOI2010]部落划分【最小生成树】
- 资深架构专家聊架构之道:灵活、稳定、高可用15点精要
- 最大的矩形(ccf)
- python 学习笔记二 搭建ftp服务器
- Matlab二进制文件的读写
- Swift - 环形进度条(UIActivityIndicatorView)的用法
- 正确率能很好的评估分类算法吗_机器学习算法:分类知识超全总结!
- linux下vscode配置c++,使其和Visual Studio2019一样调试
- 浙江大学计算机科学与技术博士培养研究方向,浙江大学计算机科学技术学院博士研究生导师简介:王跃明...
- JDK动态代理(介绍理解,如何实现)
- python和R的区别
- 刚刚想起猴子布丁,查了点资料,自己实践了下,记录汇总下。
- 【深度】关于跨境出口B2C,你只需要看这篇文章!从“产品、物流、流量”三个维度分析出口B2C电商
- Javascript特效:五彩小球
- 小书MybatisPlus第1篇-整合SpringBoot快速开始增删改查
- 前端提高篇(十一)JS进阶8函数参数及arguments
- SSD算法理解(1)
- unity3d培训_001
热门文章
- 阿里云数加大数据计算服务MaxCompute文章索引(持续更新201705)
- 小米10获取root权限_OPPO A33(移动4G)ROOT教程,简单获取ROOT权限
- 设计模式系列之--忘备录模式
- KeepAlive详解
- python暑期实践8.10
- scatter python cmap_使用matplotlib中scatter方法画散点图
- 多节点CDN缓存加速系统wdcdn2.0.1版本发布
- 科智星获8000万元天使轮融资,2020年9月开始临床实验
- 2021年制冷与空调设备运行操作考试APP及制冷与空调设备运行操作找解析
- 迅雷5总提示要升级到迅雷7才能用,不升级时也能用,如何恢复正常