linux限制目录访问权限,linux用户的访问权限限制的方法都有哪些
如果你不希望自己的文件被人读取,又或者只是不想某个特定的用户读取修改文件,限制访问权限是最好的处理方法,下面小编就给大家介绍下Linux下限制用户访问权限的方法,一起来学习下吧。
现在需要限定某个用户对特定目录/文件的访问权限,或者把某个用户的访问范围限制在某个目录/文件中。现实情况下,还是能遇到这样的需求的,比如说ubuntu下有多个可登录用户,默认情况下,用户A的工作目录(一般为/home/A)对任何其他用户来说都是可读的,但是用户A可能不希望其他用户(或者某个特定用户)读取A的文件。
这里提出三个解决方案。
第一种:使用chmod更改特定目录的权限。这能起到限制特定目录被某些人访问的作用,限定某个用户的目的也能达到,但是会误伤其他用户。
第二种:使用linux容器,例如lxc。耗费空间,设置稍显麻烦。
第三种:使用setfacl命令设定访问控制。
其中,第三个方案是最符合要求的。本文主要讲该方案的具体实现并在我自己的本上测试。我的系统为Linux Mint 15 64位,根目录/使用的是ext4文件系统,/home使用的btrfs文件系统。
安装acl
代码如下:
sudo apt-get install acl
有资料说是要重启系统,但是测试的时候我发现这个在以前就已经安装好了(不知道是Mint自带了还是我胡乱装的),没有重启依旧有效。
使用setfacl
以root的身份执行下面的命令:
代码如下:
# mkdir /home/test
# touch /home/test/foo.txt
# vim /home/test/foo.txt
# ls -ld /home/test/
drwxr-xr-x 1 root root 14 Jan 16 09:46 /home/test/
# ls -ld /home/test/foo.txt
-rw-r--r-- 1 root root 6 Jan 16 09:46 /home/test/foo.txt
上面的命令在/home目录下创建目录test,在test目录下创建文件foo.txt,并在foo.txt下随便加了些内容。然后以普通用户letian的身份访问foo.txt,可以读foo.txt。
现在以root身份运行setfacl,使得/home/test目录及其里面的文件和目录不能被letian访问。
代码如下:
# setfacl -R -m u:letian:- /home/test/
-R表示递归,-m表示修改,u:letian:-表示用户(user)letian对/home/test没有任何权限。可以根据需要添加r、w、x及其组合。 我们查看一下test目录的详细信息:
代码如下:
# ls -ld /home/test/
drwxr-xr-x+ 1 root root 14 Jan 16 09:46 /home/test/
文件权限后面出现了一个+号,这说明该文件或者目录设置了ACL。foo.txt的权限信息后面也会有+号。 然后,以letian的身份访问该目录:
代码如下:
$ ls /home/test
ls: cannot open directory /home/test: Permission denied
使用getfacl
getfacl用来查看对某个目录/文件设置的acl。
代码如下:
$ getfacl /home/test
# file: /home/test
# owner: root
# group: root
user::rwx
user:letian:---
group::r-x
mask::r-x
other::r-x
删除设置的acl
代码如下:
# setfacl -b /home/test/
# getfacl /home/test
# file: /home/test
# owner: root
# group: root
user::rwx
group::r-x
other::r-x
上面就是Linux限制用户访问权限的介绍了,本文一共提供了三个解决方案,每个方案都能解决你的问题,其中以第三方案为佳,希望对你有所帮助。
linux限制目录访问权限,linux用户的访问权限限制的方法都有哪些相关推荐
- 使用Xshell连接Linux服务器操作Mysql给Root用户添加远程访问权限
Mysql是为了安全考虑,初始的时候并没有开启Root用户的远程访问权限,Root只能本地localhost,127.0.0.1访问,但是我们操作起来实在是不方便,下面我们就使用Xshell连接Lin ...
- Linux中如何添加/删除FTP用户并设置权限
在linux中添加ftp用户,并设置相应的权限,操作步骤如下: 1.环境:ftp为vsftp.被设置用户名为test.被限制路径为/home/test 2.创建建用户:在root用户下: userad ...
- linux打理ftp用户,Linux中如何添加/删除FTP用户并设置权限
在linux中添加ftp用户,并设置相应的权限,操作步骤如下: 1.环境:ftp为vsftp.被设置用户名为test.被限制路径为/home/test 2.创建建用户:在root用户下: userad ...
- 【Linux】目录组织结构、文件类型和文件权限
文章目录 1.目录组织结构 1.1目录特点 1.2目录结构 1.3目录说明 2.文件类型 2.1普通文件类型 2.2目录文件类型 2.3字符设备文件 2.4块设备文件 2.5套接字文件 2.6管道文件 ...
- 我的Linux学习记录(蓝桥)————用户及文件权限管理
我的Linux学习记录(蓝桥)三 Linux 是一个可以实现多用户登录的操作系统,比如"李雷"和"韩梅梅"都可以同时登录同一台主机,他们共享一些主机的资源,但他 ...
- linux sftp目录无法切换,linux – SFTP用户无法编辑或创建文件
要正确chroot sftponly组成员,您需要在/ etc / ssh / sshd_config中设置此选项: Subsystem sftp internal-sftp Match Group ...
- linux树形目录结构存放,Linux目录结构
Linux下的文件系统为树形结构,入口为/ 树形结构下的文件目录: 无论哪个版本的Linux系统,都有这些目录,这些目录应该是标准的.各个Linux发行版本会存在一些小小的差异,但总体来说,还是大体差 ...
- 在linux返回目录并查看,Linux命令(十四) 查看工作目录文件 ls
目录 命令简介 ls 命令是 Linux 下最常用的命令. ls 就是 list 的缩写.默认情况下 ls 命令用来打印出当前目录的清单, 如果 ls 指定其他目录,那么就会显示指定目录里的文件及其文 ...
- linux 列出目录结构6,Linux系统目录结构及文件管理命令
Linux目录结构及文件管理命令 目录结构 1.图示 2.目录功能 文件管理命令 1.创建文件 2.创建目录 3.复制 4.移动 5.删除 6.查看文件内容 7.修改文件内容 8.光标定位命令(命令模 ...
- linux 关于目录的命令,Linux ---- 关于目录基本命令
Linux ---- 关于目录基本命令 Linux ---- 关于目录基本命令 我们知道Linux的目录结构为树状结构,最顶级的目录为根目录 /. 其他目录通过挂载可以将它们添加到树中,通过解除挂载可 ...
最新文章
- Ardino基础教程 19_舵机控制
- winxp上传文件到服务器,通过SQLServer的xp_cmdshell在服务器之间传送文件
- angularjs增删改查数据_MongoDB数据读写操作(增删改查)总结
- ORACLE数据库事务隔离级别
- java中的特殊字符集合
- html a 的写法,HTML超链接a标记CSS样式写法示例
- 安装签名不一致什么意思_探灵之夜嫁安装失败签名不一致怎么办-夜嫁安装失败签名不一致解决方法-松松手游网...
- java多线程执行任务(工具)
- 【HBuilder】前端IDE神器
- MacOS Big Sur 11.2.3 (20D91) with Clover 5131 and OC 0.6.7 and PE 三EFI分区原版DMG黑苹果镜像
- MICCAI 2022 | ASA:用于预训练脑核磁分割的注意力对称自动编码器
- 用计算机如何修改wif密码,电脑怎么修改无线网(WIFI)密码?
- 琴岛学院java书_​师生共品书 传承优秀传统文化 琴岛学院第十三届金秋读书节开幕...
- adm怎么下bt连接_【使用教程】序列模式——福禄克BT系列电池测试仪
- 干货分享:数据分析面试一般都问啥?
- 数字公路探索新范式,维谛技术(Vertiv)助力智慧高速“再提速”
- You must have administrator privileges to run...
- Python安装Pyinstaller失败,Preparing wheel metadata ... error
- Excel排序,数据透视图,公式预测
- 通过PS把荒野草地变成大雪纷飞的雪景