客户需求:请在数据仓库接口机134.224.40.67上增加ftp账号:sjjs,权限仅为:/infdata3/TDSS_SAVE目录下文件的查询权限
这个看似简单,但还是让我磨了好久才出来,特此记录下来,供大家分享;
一、检查Linux中vsftpd的安装情况
ps -ef |grep vsftpd
二、将系统中的SELinux关闭,然后重新启动电脑
关闭SELinux的方法:
修改/etc/selinux/config文件中的SELINUX="" 为 disabled ,然后重启。
如果不想重启系统,使用命令setenforce 0
注:
setenforce 1 设置SELinux 成为enforcing模式
setenforce 0 设置SELinux 成为permissive模式
在lilo或者grub的启动参数中增加:selinux=0,也可以关闭selinux
setsebool ftpd_disable_trans 1 ----重启之后失效
所以可以加上-P参数永久生效
setsebool -P ftpd_disable_trans 1 ------此命令是为了避免出现 500 OOPS: cannot change directory的错误
三、建立用户和指定目录
#useradd -d /home/sjjs sjjs
#passwd sjjs
建立用户sjjs,并指定其ftp目录为sjjs
这样sjjs用户就被指定到相应的文件夹下,在后期的设置中也可以改变用户的指定目录,在后面可以看到
四、修改vsftpd.conf配置文件
将anonymous_enable改为NO,阻止匿名上传
将chroot_list_enable和chroot_list_file的注释去掉,阻止用户访问上级目录
userlist_enable=yes #禁止文件/etc/vsftpd/user_list文件中的用户登陆FTP
user_config_dir=/etc/vsftpd/userconf #添加读取用户配置目录(注:本行配置默认没有,需要手动输入)
五、在/etc/vsftpd下建立chroot_list文件
建立完成后,在其中添加用户sjjs,使其只允许访问指定目录。(注意:是完整路径)
六、建立用户配置目录
mkdir -p /etc/vsftpd/userconf
七、建立用户登陆后的目录
mkdir /test
因用户已要求目录指定为/infdata3/TDSS_SAVE,所以不需要创建新的目录
八、添加用户配置文件(用户配置里面,可以根据要求加入相应的参数)
已知有用户sjjs
注:有很多用户时,需要建每个用户相对应的文件
vi /etc/vsftpd/userconf/sjjs
local_root=/infdata3/TDSS_SAVE #用户需求的目录,FTP用户登陆后指定的目录
因为只要求有查询权限,即只读权限,所以该用户配置文件里还需要增加
download_enable=NO #如果设为NO,下载请求将返回“permission denied”
write_enable=NO #这决定是否容许一些FTP命令去更改文件系统
九、启动或是重启ftp服务
#service vsftpd restart
启动成功后,就可以按用户的要求访问FTP服务了
注:配置文件中的解释
anonymous_enable=YES开启匿名用户登录
local_enable=YES开启本地用户登录
write_enable=YES开启写权限以便上传
local_umask=022设置上传后文件为user=rwx, group=, other=
这样,用户上传文件后,是不能删除和修改了。因为用户属于group组。
解决方法是,设置local_umask=002。
最终文件权限是777-文件夹掩码-local_umask掩码
anon_upload_enable=YES开启匿名用户上传权限
统一匿名上传用户上传的文件的属性
chown_uploads=YES
chown_username=ftp
设定chroot配置,禁止特定用户访问上一级目录
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
userlist_enable=YES这个选项如果是YES,那/etc/vsftpd/user_list中的用户将被禁止访问ftp。如果是NO,则只有user_list里面的用户才能访问ftp
原文地址:http://blog.csdn.net/jiejie5945/article/details/8125449
相关推荐
linux安装软件到指定目录linux安装软件到指定目录
在工作或者学习的时候,我们常常会遇到这样的需求,限制一个Linux用户,让他只能在指定的目录下进行添加、修改、删除操作,并且只能使用sftp登录服务器,不能用ssh操作。这些可以通过配置sftp服务实现。 方法如下 ...
本资源包含Linux常用的用户和用户组增加和修改的命令,以及用户划分权限目录
linux创建用户与目录权限
Linux用户管理与文件权限
linux用户和组权限管理 1.用户文件/etc/passwd 2.密码文件/etc/shadow * 现在用户的密码都是加密保存在这个文件里了,需要管理员权限才能打开,不再保存在passwd里。
linux如何判断指定用户对指定目录具有的权限具体介绍.docx
今天遇到的问题,如何一个用户如www的权限复制给我的用户? 目录的权限表示:dwrxr–r– ... 您可能感兴趣的文章:Linux中改变文件权限的chmod命令详析修改linux文件权限命令:chmod命令详解Linux 下目录文件权限(命
linux下为目录和文件设置权限,包括子目录的循环递归设置 chmod 命令可以改变所有子目录的权限
linux新建用户
linux命令行工具:删除指定目录下指定时间前的某些文件。 可以将包含delbefday的脚本加入crontab中自动定时删除指定目录下指定时间前的某些文件。 含源代码。
Linux文件目录的权限和属性实践讲解 图文并茂讲解,通俗易懂
linux赋予普通用户修改系统时间权限linux赋予普通用户修改系统时间权限
linux里面怎么设置用户只能看某个目录下的文
1.理解linux多用户,多任务的特性 2.linux下用户的角色分类 3.用户和组的概念 4.用户和组的关系 二 用户配置文件概述 1.用户和组相关的配置文件 (1)/etc/passwd文件 系统用户配置文件,是用户管理中最重要的...
此命令新建了一个用户gem,该用户的登录Shell是/bin/sh,它属于group用户组,同时又属于adm和root用户组,其中group用户组是其主组。 增加用户账号就是在/etc/passwd文件中为新用户增加一条记录,同时更新其他...
Linux文件和目录读写执行权限解析 本文对linux系统下各种权限的文件和目录的新建、复制和删除等进行了测试和分析总结!
linux新建用户
linux下添加用户并赋予root权限
anon_root=/var 指定匿名用户目录 chroot_local_user=yes 锁定所有用户到用户主目录 chroot_list_enable=yes/no 锁定列表中的用户到主目录,需要配合下一参数使用 chroot_list_file=/etc/vsftpd/chroot_list 指定存储...