ACL(Access Control List)主要用于在提供传统的owner、group、others的read、write、execute权限之外进行细部权限设置,可以针对单一用户、单一文件或目录来进行r、w、x的权限设置,对于需要特殊权限的使用状况非常有帮助。
ACL主要可以针对以下几个项目设置权限:用户user、群组group和默认属性mask(在目录下建立新文件或目录时设置新数据的默认权限)。
在SuSe Linux中,ACL是默认启动的,不过在CentOS中则默认没有启动ACL,所以在使用之前需先开启文件系统filesystem对ACL的支持功能。
如何启动ACL?
1、比如要让/home支持ACL,直接这样运行命令即可:mount -o remount,acl /home;完后核实ACL是否启动:mount | grep /home;
2、如果系统开机就让文件系统一并启动ACL,则需要修改/etc/fstab其中的/home目录项目为 LABEL=/home /home ext3 defaults,acl 1 2 这样子,新增加了acl参数。
设置和查看ACL需要用的两个命令:
getfacl:取得某个文件/目录的ACL权限;
setfacl:设置某个目录/文件的ACL权限;
setfacl [-mxdb] 设置值
参数:
-m 设置一个ACL权限;
-x 取消一个ACL权限;
-b 全部的ACL权限都移除;
-d 设置默认的ACL权限,仅能针对目录使用。
三种简易的设置方法:
1、针对用户:设置值语法 u:[用户账号列表]:[rwx],比如 setfacl -m u:dmtsai:rx somefilename 即设置用户dmtsai的rx权限;
2、针对群组:设置值语法 g:[群组名]:[rwx],比如 setfacl -m g:users:rw somefilename 设置users群组的rw权限;
3、针对默认权限:设置值语法 m:[rwx],比如 设置默认权限为rwx setfacl -m m:rwx somefilename。
[root@localhost home]# getfacl project
# file: project <=前面三行只是指出这个文件夹的传统Linux权限
# owner: eric
# group: users
user::rwx <=这是针对“默认用户”的权限设置
user:jordan:rwx <=这是jordan用户的权限设置
group::rwx <=这是“默认群组”权限设置
mask::rwx <=这是默认属性
other::---
[root@localhost home]# ls -ld project
drwxrwx---+ 2 eric users 4096 07-07 03:51 project
以上命令输出结果中权限栏目里多出来的+符号代表该文件夹有额外的ACL权限项目。
mask需要与用户的权限进行逻辑与运算(AND)后才能变成有效地权限(Effective Permission)。
比如某个目录要让所有人都仅能读取不能写入,可以将ACL内的mask设置为r-x,其他人就不需要再额外设置了。
----------主机安全相关----------
常见攻击手段与主机保护方式:
1、预防被猜密码攻击:
减少信息的曝光机会;
建立严格的密码设置规则,包括/etc/shadow、/etc/login.defs等文件的设置;如果主机够稳定且不会持续加入某些账号,可以考虑使用chattr来限制账号(/etc/passwd、/etc/shadow)的更改;
完善的权限设置;
2、预防系统的程序漏洞攻击:
关闭不需要的网络服务;
随时保持更新;
关闭不需要的软件功能;
3、预防利用社交工具欺骗攻击:
追踪对谈者:不要一味地相信对方,需要向上级汇报,不要一时心慌就中计;
不要随意透露账号/密码等信息:最好不要在Internet上填写这些数据,真的很危险,因为Internet上你永 远不知道对方屏幕前坐着的是谁?
4、预防利用程序功能的被动攻击(养成好的习惯最重要):
随时更新主机上的所有软件;
弱化软件的功能;
不要连接到不明主机;
5、预防蠕虫或木马的rootkit攻击(rootkit就是可以取得root权限的一群工具组):
不要随意安装不明来源的文件或是不明网站的文件数据;
不要让系统有太多危险的命令;
可以定时以rkhunter之类的软件追查,下面网站提供有rootkit程序的检查,可以下载并分析主机:
6、DoS攻击(Denial of Service,阻断式攻击,最常见的攻击方法是SYN Flood)
7、预防其他攻击法:IP欺骗(它可以欺骗你的主机告诉该数据包来源于信任的网段,而且通过数据包传送机制,由攻击方持续主动发送出确认数据包与工作命令,如此一来,你的主机就可能会误判数据包确实有响应,而且是来自主机内部):
设置规则完整的防火墙;
内核功能,比较难;
日志文件与监控系统;
主机防护工作的几个方向思考:
1、建立完善的登录密码规则限制;
2、完善主机权限设置;
3、设置自动升级、修补软件漏洞以及移除危险软件;
4、在每项系统服务的设置中,都要强化安全设置的项目;
5、利用iptables、TCP Wrapper强化网络防火墙;
6、利用主机监控软件,如MRTG与Logwatch来分析主机状况和日志文件。