Apr23

【转载】Linux常用服务ACL规则详解

Author: 匿名  Click: 8321   Date: 2011.04.23 @ 09:55:00 am Category: linux

前几年学的不用也忘的差不多了,重新记录一下。

-------------------------------------------------------------------------------------------------------

本文主要讲解服务程序有:apache、tcp_wapper、sendmail、samba、nfs、squid、ssh的访问控制。

实验中可以用修改/etc/hosts文件加

127.0.0.1 student.example.com student localhost.localdomain localhost
192.168.100.102 student1.example.com student1
192.168.100.103 abc.crack.org abc

apache测试
----------回顾
deny from 192.168.100.
deny from 192.168.100
deny from 192.168.100.101/24
都可以


域名用.example.com

Order allow,deny
allow from .example.com
表示只允许.example.com访问。
果加上deny from all,表示全部都拒绝,

order deny,allow
deny from .example.com
表示只拒绝.example.com
如果加上allow from all 表示全部都允许,


Deny,Allow
Deny指令在 Allow指令之前被评估。缺省允许所有访问。 任何不匹配Deny指令或者匹配 Allow指令的客户都被允许访问服务器。
Allow,Deny
Allow指令在 Deny指令之前被评估。缺省禁止所有访问。 任何不匹配Allow指令或者匹配 Deny指令的客户都将被禁止访问服务器。

用户登陆认证

directory中加
AllowOverride AuthConfig

在限制的目录下
.htaccess 这个名字固定 千万注意不要写错
写入
AuthName "Auth service"
AuthType basic
AuthUserFile /etc/httpd/conf/.htpasswd 这个名字和位置都不固定,
require valid-user


用htpasswd -c /etc/httpd/conf/.htpasswd 用户名


\\\\\\\\\小结\\\\\\\\\\
只允许.example.com的域访问。
Order allow,deny
allow from .example.com

只不允许.example.com访问
Order deny,allow
deny from .example.com


********************************************************************************************
tcp_wapper
----回顾

1。tcpd先检查hosts.allow再检查hosts.deny,如果前者允许的IP或者域名 后者即使有也不起作用


2。写法不支持24/32/8等mask的写法,必须把掩码写全
如:
sshd: 192.168.0.0/255.255.255.0
单个IP可以不写。
域名用 .example.com


还可以写sshd: all except .example.com

3。rhel3里常用
sshd
vsftpd
ipop3d


例题:
ssh可以被本地子网访问,但是不能让其他网段的用户访问
/etc/hosts.deny
sshd :ALL EXCEPT 192.168.0.

\\\\\\\\\小结\\\\\\\\\\
只允许example.com访问
hosts.allow
sshd:ALL EXCEPT .example.com
hosts.deny无

只不允许example.com访问
hosts.deny
sshd:ALL EXCEPT .example.com
hosts.allow无

**以上的理解是错误的,在tcp_wrapper中,拒绝只能用host.deny**

如果只允许example.com访问
hosts.allow 写sshd:.example.com
hosts.deny 写sshd:all

如果只不允许example.com访问
hosts.allow不写
hosts.deny 写sshd:.example.com

所以:
对于sshd:ALL EXCEPT .example.com这一句,表示的是hosts.allow中对sshd 都允许进入但是除了example.com不运用这个规则,但不表示拒绝,只是表示不进入,如果想拒绝还需要在 hosts.deny中加规则。


***********************************************************************************************
sendmail
写入文件
access中

192.168.0 拒绝是REJECT
无最后的点

域名

******************************************************************************************

ssh限制
如果限制用户登陆
在sshd_config中加入
AllowUsers root 那么除了这个用户都不可以登陆
DenyUsers sshtest 那么对这个用户拒绝登陆
************************************************************************************************


samba限制
------回顾
机制和tcp_wrapper一样,先看allow再看deny

hosts deny = 150.203.4. badhost.mynet.edu.au

hosts allow = 150.203. EXCEPT 150.203.6.66

hosts deny = all except .crack.org

hosts allow = 192.168.100.

Where the lists conflict, the allow list takes precedence.
如果冲突以allow优先。


\\\\\\\\\小结\\\\\\\\\\
只允许example.com访问
hosts allow = .example.com(如果同时不写hosts deny,默认deny all)
或者
hosts deny = all except .example.com

只拒绝example.com访问
hosts deny = .example.com

注意:这里也不能加hosts allow =all,不需要如果有了hosts.deny默认允许其他,加了反而允许全部访问,因为allow优先,和apache里的设置类似。


************************************************************************************
nfs限制


/var/smbtest *.example.com(ro,no_root_squash,async) *.crack.org(rw,root_squash,sync)
注意这里域名前要用 * 号

ip写法:
192.168.100.* == 192.168.100.0/24

/usr/src *.siyongc.domain(ro,root_squash,sync) 192.168.100.*(ro,root_squash,sync)
/var/ftp/pub/incoming 192.168.100.24(rw,all_squash,anonuid=50,anongid=50)


只允许example.com访问
/var/smbtest *.example.com(ro,no_root_squash,async)

**************************************************************************************
squid限制


和sendmail一样默认是deny all

他的规则和tcp_wrapper一样,如果allow通过,那么将不在检查deny

写法 需要先定义,然后在使用


搜索acl all,在之前定义
acl example src 192.168.100.0/24

acl spams dstdomain .hotmail.com

然后 搜索YOUR,使用
http_access deny spams
http_access allow example


只为.example.com的域提供代理,拒绝允许代理的域访问 .hotmail.com的页面
acl allowdomain srcdomain .example.com
acl spams dstdomain .hotmail.com
http_access deny spams
http_access allow example



TAG:   linux acl http tcp nfs mail

    评论
    • 提交

    分类

    标签

    归档

    最新评论

    Abyss在00:04:28评论了
    Linux中ramdisk,tmpfs,ramfs的介绍与性能测试
    shallwe99在10:21:17评论了
    【原创】如何在微信小程序开发中正确的使用vant ui组件
    默一在09:04:53评论了
    Berkeley DB 由浅入深【转自架构师杨建】
    Memory在14:09:22评论了
    【原创】最佳PHP框架选择(phalcon,yaf,laravel,thinkphp,yii)
    leo在17:57:04评论了
    shell中使用while循环ssh的注意事项

    我看过的书

    链接

    其他

    访问本站种子 本站平均热度:8823 c° 本站链接数:1 个 本站标签数:464 个 本站被评论次数:94 次