7.28第三课课堂笔记
课堂笔记:由于老师讲的很多内容,之前都已经预习过,所以这里只记录一些个人感觉重要的内容。
alias abc='/root/123/abc' 或者使用ln软连接 ln /root/123/abc /bin/abc
>重置文件内容 >>追加文件内容
chattr 常用a和i参数
a:如果对文件设置a属性,那么只能在文件中增加数据,但是不能删除也不能修改数据;如果对目录设置a属性,那么只允许在目录中建立和修改文件,但是不允许删除。
i: 如果对文件设置i属性,那么不允许对文件进行删除,改名,也不能添加和修改数据;如果对目录设置i属性,那么只能修改目录下文件的数据,但不允许建立和删除文件。
课后作业:
1、把用户限定在家目录下 chroot
1、首先useradd创建test用户:useradd test
修改账号密码:passwd test
2、创建用户的默认根目录:
mkdir /home/test_root
cd /home/test_root
mkdir home
mkdir etc
mkdir bin
mkdir lib
mkdir user
3、将需要用到的命令cp至test用户限定的根目录下的相应目录下去:
cp /bin/* /home/test_root/bin
/bin/cp /etc/* /home/test_root/etc
/bin/cp /lib/* /home/test_root/lib
4、建立/home/test_root/etc/passwd,内容为/etc/passwd里面test那一行。只要那一行:
tail -1 /etc/passwd > /home/test_root/etc/passwd
5、修改/etc/pam.d/ssh 加一句:
session required pam_chroot.so
6、修改/etc/security/chroot.conf 添加:
test /home/test_root
2、facl相关资料
facl=filesystem access control list,即文件系统访问控制列表
Linux(和其他Unix等POSIX兼容的操作系统)有一种被称为访问控制列表(ACL)的权限控制方法,它是一种权限分配之外的普遍范式。例 如,默认情况下你需要确认3个权限组:owner、group和other。而使用ACL,利用文件扩展属性保存额外的访问控制权限,你可以增加权限给其他用户或组别,而不单只是简单 的"other"或者是拥有者不存在的组别。可以允许指定的用户A、B、C拥有写权限而不再是让他们整个组拥有写权限。
ACL支持多种Linux文件系统,包括ext2, ext3, ext4, XFS, Btfrs, 等。如果你不确定你的文件系统是否支持ACL,请参考文档。
安装acl管理工具
yum install acl
安装ACL完成后,需要**我们磁盘分区的ACL功能,这样我们才能使用它。
首先,我们检查ACL功能是否已经开启。
vim /etc/fstab
查看到/ /boot均没有开启ACL功能,在需要开启ACL的分区的选项前增加acl标记。
基础ACL通过两条命令管理:setfacl用于增加或者修改ACL,getfacl用于显示分配完的ACL。
setfacl
-m: 设定
u:UID:perm
g:GID:perm
d:u:UID:perm
d:g:GID:perm
为某一个目录设置默认的访问控制列表。意味着在这个目录下新建的文件将自动继承目录的访问控制列表权限。
setfacl -m u:hadoop:rw inittab
-x:取消
u:UID
g:GID
setfacl -x u:hadoop inittab
--mask: