測試可以用修改/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
在限制的目錄下
.htaclearcase/" target="_blank" >ccess 這個名字固定 千萬注意不要寫錯
寫入
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.m.net.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