Apache服务器的安全性及实现(1)
3545 点击·0 回帖
![]() | ![]() | |
![]() | Apache Server默认情况下的安全配置是拒绝一切访问。假定Apache Server内容存放在/usr/local/apache/share 目录下,下面的指令将实现这种设置: Deny from all AllowOverride None 则禁止在任一目录下改变认证和访问控制方法。 同样,可以用特有的命令Deny、Allow指定某些用户可以访问,哪些用户不能访问,提供一定的灵活性。当Deny、Allow一起用时,用命令Order决定Deny和Allow合用的顺序。 1、拒绝某类地址的用户对服务器的访问权(Deny) 如:Deny from all Deny from test.cnn.com Deny from 204.168.190.13 Deny from 10.10.10.0/255.255.0.0 2、允许某类地址的用户对服务器的访问权(Allow) 如:Allow from all Allow from test.cnn.com Allow from 204.168.190.13 Allow from 10.10.10.0/255.255.0.0 Deny和Allow指令后可以输入多个变量。 3、实例: Order Allow, Deny Allow from all Deny from www.***.com 则,想让所有的人访问Apache服务器,但不希望来自www.***.com的任何访问。 Order Deny, Allow Deny from all Allow from test.cnn.com 则,不想让所有人访问,但希望给test.cnn.com网站的来访。 有关访问控制的高级设置请阅读Unix系统管理书籍。 五、Apache Sever的用户认证与授权 概括的讲,用户认证就是验证用户的身份的真实性,如用户帐号是否在数据库中,及用户帐号所对应的密码是否正确;用户授权表示检验有效用户是否被许可访问特定的资源。在Apache中,几乎所有的安全模块实际上兼顾这两个方面。从安全的角度来看,用户的认证和授权相当于选择性访问控制。 建立用户的认证授权需要三个步骤: (1)建立用户库 用户名和口令列表需要存在于文件(mod_auth模块)或数据库(mod_auth_dbm模块)中。基于安全的原因,该文件不能存放在文挡的根目录下。如,存放在/usr/local/etc/httpd下的users文件,其格式与UNIX口令文件格式相似,但口令是以加密的形式存放的。应用程序htpasswd可以用来添加或更改程序: htpasswd –c /usr/local/etc/httpd/users martin -c表明添加新用户,martin为新添加的用户名,在程序执行过程中,两次输入口令回答。用户名和口令添加到users文件中。产生的用户文件有如下的形式: martin:WrU808BHQai36 jane:iABCQFQs40E8M art:FadHN3W753sSU 第一域是用户名,第二个域是用户密码。 | |
![]() | ![]() |