Vsftp用户限制
背景
Oracle全库备份,异地备份
在实现异地备份后,由第三方人员登录服务器拉取dmp文件.
为了确保安全,创建一个特定ftp账号用于第三方人员使用
要求
1.可以登录服务器
2.可以拉取dmp文件
3.仅限在dmp文件的目录下,不能cd其他路径,ls其他目录
解决过程
yum 安装ftp服务
[root@78778e06dc0a /]# yum install vsftpd -y
修改vsftp配置文件,开启限制
[root@78778e06dc0a /]# vim /etc/vsftpd/vsftpd.conf
最后加上以下几行:
chroot_list_enable=YES
chroot_local_user=YES
chroot_list_file=/etc/vsftpd/chroot_list
user_config_dir=/etc/vsftpd/user.d
vsftpd.conf配置文件说明
anonymous_enable=YES #设置是否允许匿名用户登录
local_enable=YES #设置是否允许本地用户登录
local_root=/home #设置本地用户的根目录
write_enable=YES #是否允许用户有写权限
local_umask=022 #设置本地用户创建文件时的umask值
anon_upload_enable=YES #设置是否允许匿名用户上传文件
anon_other_write_enable=YES #设置匿名用户是否有修改的权限
anon_world_readable_only=YES #当为YES时,文件的其他人必须有读的权限才允许匿名用户下载,单单所有人为ftp且有读权限是无法下载的,必须其他人也有读权限,才允许下载
download_enbale=YES #是否允许下载
chown_upload=YES #设置匿名用户上传文件后修改文件的所有者
chown_username=ftpuser #与上面选项连用,表示修改后的所有者为ftpuser
ascii_upload_enable=YES #设置是否允许使用ASCII模式上传文件
ascii_download_enable=YES #设置是否允许用ASCII模式下载文件chroot_local_user=YES #设置是否锁定本地用户在自己的主目录中,(登录后无法cd到父目录或同级目录中)
chroot_list_enable=YES #设置是否将用户锁定在自己的主目录中
chroot_list_file=/etc/vsftpd/chroot_list #定义哪些用户将会锁定在自己的主目录中
userlist_enable=YES #当为YES时表示由userlist_file文件中指定的用户才能登录ftp服务器
userlist_file=/etc/vsftpd/user_list #当userlist_enable为YES时才生效
为每个用户建立对应的配置文件
如
[root@78778e06dc0a /]#mkdir /etc/vsftpd/user.d
[root@78778e06dc0a /]#vim /etc/vsftpd/user.d/ftp
加入以下内容
local_root=/home/ftp
然后启动ftp服务
[root@78778e06dc0a /]#service vsftpd start
登录测试
问题
1. 500 OOPS: could not bind listening IPv4 socket
原因:因为同时指定了 inetd和standalone 两种运行方式,端口冲突了.
解决方法:
1).使用XINET模式
去掉/etc/rc.local文件中的vsftpd的启动脚本/usr/local/sbin/vsftp &;
重启xinetd服务, service xinetd restart
运行service vsftpd restart命令启动vsftpd2).使用STANDALONE独立模式
在服务器的负担比较重的情况下最好用这个模式
或者直接修改/etc/xinetd.d/vsftpd文件,把disable=no改成disable=yes就行了!
2. service vsftpd start时出现Starting vsftpd for vsftpd: [ FAILED ]
修改/etc/logrotate.d/vsftpd.log
把 missingok 注释掉3. 500 OOPS: cannot change directory:/home/...
sestatus -b | grep ftp
setenforce 0
setenforce: SELinux is disabled
[root@78778e06dc0a /]# getenforce
Disabled
[root@78778e06dc0a /]# setsebool -P ftp_home_dir=1
setsebool: SELinux is disabled.
[root@78778e06dc0a /]# setsebool -P allow_ftpd_full_access 1
setsebool: SELinux is disabled.再次尝试,OK
Vsftp用户限制的更多相关文章
- 为VSFTP用户指定登录后的目录.原创测试通过.
VSFTP用户目录指定1修改VSFTP配置文件Vi /etc/vsftpd/vsftp.conf #启动chroot列表chroot_list_enable=YES#指定列表位置chroot_lis ...
- linux怎么设置vsftp用户访问目录权限
1.在指定的目录创建文件夹(访问的目录): mkdir picture 2.创建一个用户组(zdhgroup): groupadd zdhgroup 3.创建一个用户并指定路径和组: useradd ...
- Linux基础入门之vsFTP+MySQL/MariaDB认证实现虚拟用户配置详解
https://www.dwhd.org/20150603_144841.html 摘要 VSFTP可以使用系统账户或者匿名账户登录,但是出于安全的考虑,通常建议使用vsftp虚拟账户来登录ftp服务 ...
- Centos6.5中安装和配置vsftp详细总结
一.vsftp安装篇 #查看是否安装:rpm -qa|grep vsftpd#卸载vsftpdrpm -e vsftpd-2.2.2-11.el6_3.1x86_64 --nodeps# 安装vsft ...
- CentOs6.5中安装和配置vsftp简明教程
一.vsftp安装篇 # 查看是否已经安装了vsftp: rpm -qa|grep vsftpd # 安装vsftpd(需要root权限)yum -y install vsftpd# 启动vsftpd ...
- CentOs6.5中安装和配置vsftp
一.vsftp安装篇 复制代码代码如下: # 安装vsftpdyum -y install vsftpd# 启动service vsftpd start# 开启启动chkconfig vsftpd o ...
- CentOs6.5中安装和配置vsftp简明
这篇文章主要介绍了CentOs6.5中安装和配置vsftp简明教程,需要的朋友可以参考下 一.vsftp安装篇 复制代码代码如下: # 安装vsftpdyum -y install vsftp ...
- 170113、CentOs6.4中安装和配置vsftp简明教程
一.vsftp安装篇 代码如下: # 安装vsftpdyum -y install vsftpd# 启动service vsftpd start# 开启启动chkconfig vsftpd on 二. ...
- centos 7 最小安装后 安装FTP服务器 vsftp
1.首先查看下 系统配置 rpm -q ftp #肯定是没安装, 2.安装 vsftpd yum -y vsftpd 3.vim /etc/vsftpd/vsftpd.conf anonymous_e ...
随机推荐
- spring中BeanPostProcessor之一:InstantiationAwareBeanPostProcessor(02)
在上篇博客中写道了bean后置处理器InstantiationAwareBeanPostProcessor,只介绍了其中一个方法的作用及用法,现在来看postProcessBeforeInstanti ...
- 四、【Docker笔记】Docker容器
容器是Docker的另一个核心概念,容器就是镜像的一个运行实例,只是它具有一个可写的文件层,而镜像是一个只读的文件. 一.创建容器 1.新建容器 我们可以使用 docker create 命令来创建一 ...
- wsl中配置SML环境
配置SML/NJ #安装 sudo apt install smlnj #但是wsl不支持32位程序,所以需要下面配置 sudo dpkg --add-architecture i386 sudo a ...
- 1067 Sort with Swap(0, i) (25分)
Given any permutation of the numbers {0, 1, 2,..., N−1}, it is easy to sort them in increasing order ...
- 为什么MySQL要用B+树?聊聊B+树与硬盘的前世今生【宇哥带你玩转MySQL 索引篇(二)】
为什么MySQL要用B+树?聊聊B+树与硬盘的前世今生 在上一节,我们聊到数据库为了让我们的查询加速,通过索引方式对数据进行冗余并排序,这样我们在使用时就可以在排好序的数据里进行快速的二分查找,使得查 ...
- awk扩展应用
awk扩展应用 案例1:使用awk提取文本 案例2:aw ...
- PHP中涉及文件路径的讨论
#1 $_SERVER中的PHP_SELF,当前执行脚本的文件名,与 document root 有关.例如,在地址为 http://example.com/test.php/foo.bar 的脚本中 ...
- 微信小程序H5预览页面框架
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- orm层面的删除的注意事项
orm层面的删除 当两张表的外键约束设置为RESTRICT or ACTION时,在sql的层面上想要删除父级表的数据时吗,mysql会拒绝删除,但是 使用orm的delete还是会删除父级表的数据. ...
- 基础类封装-Requests库封装
#!/usr/bin/env python3 # -*- coding: utf-8 -*- # @Time : 2020/03/18 23:37 # @Author : Tang Yiwei # @ ...