当前位置:K88软件开发文章中心电脑基础基础应用03 → 文章内容

如何修改Linux文件系统的权限及安全设置

减小字体 增大字体 作者:华军  来源:不详  发布时间:2019-1-30 23:09:38

目录的读写执行权限,还有可能影响系统上应用程序的正常运行,因此,如果要兼顾两者,就需要对这两个目录或分区就行特殊的设置。  /dev/shm是Linux下的一个共享内存设备,在Linux启动的时候系统默认会加载/dev/shm,被加载的/dev/shm使用的是tmpfs文件系统,而tmpfs是一个内存文件系统,存储到tmpfs文件系统的数据会完全驻留在RAM中,这样通过/dev/shm就可以直接操控系统内存,这将非常危险,因此如何保证/dev/shm安全也至关重要。  对于/tmp的安全设置,需要看/tmp是一个独立磁盘分区,还是一个根分区下的文件夹,如果/tmp是一个独立的磁盘分区,那么设置非常简单,修改/etc/fstab文件中/tmp分区对应的挂载属性,加上nosuid、noexec、nodev三个选项即可,修改后的/tmp分区挂载属性类似如下:  LABEL=/tmp /tmp ext3 rw,nosuid,noexec,nodev 0 0其中,nosuid、noexec、nodev选项,表示不允许任何suid程序,并且在这个分区不能执行任何脚本等程序,并且不存在设备文件。  在挂载属性设置完成后,重新挂载/tmp分区,保证设置生效。  对于/var/tmp,如果是独立分区,安装/tmp的设置方法是修改/etc/fstab文件即可;如果是/var分区下的一个目录,那么可以将/var/tmp目录下所有数据移动到/tmp分区下,然后在/var下做一个指向/tmp的软连接即可。也就是执行如下操作:  [root@server ~]# mv /var/tmp/* /tmp  [root@server ~]# ln -s /tmp /var/tmp  如果/tmp是根目录下的一个目录,那么设置稍微复杂,可以通过创建一个loopback文件系统来利用Linux内核的loopback特性将文件系统挂载到/tmp下,然后在挂载时指定限制加载选项即可。一个简单的操作示例如下:  [root@server ~]# dd if=/dev/zero of=/dev/tmpfs bs=1M count=10000[root@server ~]# mke2fs -j /dev/tmpfs  [root@server ~]# cp -av /tmp /tmp.old  [root@server ~]# mount -o loop,noexec,nosuid,rw /dev/tmpfs /tmp[root@server ~]# chmod 1777 /tmp  [root@server ~]# mv -f /tmp.old/* /tmp/  [root@server ~]# rm -rf /tmp.old  最后,编辑/etc/fstab,添加如下内容,以便系统在启动时自动加载loopback文件系统:  /dev/tmpfs /tmp ext3 loop,nosuid,noexec,rw 0 0  为了验证一下挂载时指定限制加载选项是否生效,可以在/tmp分区创建一个shell文件,操作如下:  [root@tc193 tmp]# ls -al|grep shell  -rwxr-xr-x 1 root root 22 Oct 6 14:58 shell-test.sh[root@server ~]# pwd  /tmp  [root@tc193 tmp]# 。/shell-test.sh  -bash: 。/shell-test.sh: Permission denied可以看出,虽然文件有可执行属性,但是已经在/tmp分区无法执行任何文件了。  最后,再来修改一下/dev/shm的安全设置。由于/dev/shm是一个共享内存设备,因此也可以通过修改/etc/fstab文件设置而实现,在默认情况下,/dev/shm通过defaults选项来加载,对保证其安全性是不够的,修改/dev/shm的挂载属性,操作如下:  tmpfs /dev/shm tmpfs defaults,nosuid,noexec,rw 0 0  通过这种方式,就限制了任何suid程序,同时也限制了/dev/shm的可执行权限,系统安全性得到进一步提升。  上面就是小编总结的Linux下文件系统权限修改和设置的相关介绍了,为了系统的安全着想,可使用命令锁定重要的文件,合理的文件权限设置也是很重要的。

上一页  [1] [2] 


如何修改Linux文件系统的权限及安全设置