apache实现网页浏览权限设置
2012-08-17 10:52
495 查看
单位内部实现的网站需要进行权限控制,起初同事说实现一个用户登录功能。后来想想,觉得没必要,而且有漏洞。然后想起nagios就有权限认证的实现,上网查了下资料,发现只在apache上就可以实现网页的浏览权限的控制。现在将我实验成功的方法分享出来。
一、编辑虚拟目录配置文件,设置认证方式
<Directory "/var/www/html/MySite">
Options Indexes MultiViews
AllowOverride All #表示可以从.htaccess文件继承访问权限
Order allow,deny
Allow from all
</Directory>
二、在网站目录中创建.htaccess文件
vim /var/www/html/MySite/.htaccess
AuthName "Web Security zoo" #此处为描述,自定义
AuthType Basic 验证类型
AuthUserFile /var/www/html/MySite/.htpasswd #密码文件的路径
require valid-user
注意:
1.密码文件推荐使用.htpasswd,因为apache默认系统对“.ht”开头的文件默认不允许外部读取,安全系数会高一点哦。
2..htaccess文件最后的 “require”告诉服务器哪些用户可以进入。require valid-user是指只要是.htpasswd中的任何一个都可以进入。也可以指定名单上的某人或某几人可以通过,使用require user username或require user username1
username2 username3。还可以指定某组人可以通过,使用require group groupname。
文件权限
-rw-r--r-- .htaccess
-rw--r--r-- .htpasswd #密码文件如果没有rwx权限,可能会验证失败
三、创建用户密码
就是创建apache的验证用户
htpasswd -c /var/www/test/.htpasswd 用户名
#第一次创建用户要用到-c 参数 第2次添加用户,就不用-c参数
htpasswd -m .htpasswd 用户名 更改密码
htpasswd -D .htpasswd 用户名 删除用户
/*------------------------------------------------------
ps 也可将 1,2 步骤归结到同一步骤,如下:
<Directory /var/www/test>
Options Indexes MultiViews
AuthType basic #类型
AuthName "welcome test"
AuthUserFile /var/www/test/.htpasswd #密文配置文件路径
require valid-user = user test #test 为用户名 如有其它用户以此 列在 test 之后
# Order allow,deny
# Allow from all
</Directory>
--------------------------------------------------------*/
重启apache,OK ! 重启方法:service httpd restart
四、通过用户组方式访问
alias /test01 "/data/web/test01/"
<Directory /data/web/test01>
Options Indexes MultiViews
AuthType basic
AuthName "welcome test"
AuthUserFile /etc/httpd/httppwd
AuthGroupFile /etc/httpd/httpgrp #用户组文件路径
require group admin #admin 是用户组
</Directory>
创建用户组配置文件
vi /etc/httpd/httpgrp #创建路径与配置文件中指定文件相同
内容如下:admin:test #注意test 是已经创建好的用户,如果该组中有其它用户,一次排列以空格隔开
重启apache ok!
一、编辑虚拟目录配置文件,设置认证方式
<Directory "/var/www/html/MySite">
Options Indexes MultiViews
AllowOverride All #表示可以从.htaccess文件继承访问权限
Order allow,deny
Allow from all
</Directory>
二、在网站目录中创建.htaccess文件
vim /var/www/html/MySite/.htaccess
AuthName "Web Security zoo" #此处为描述,自定义
AuthType Basic 验证类型
AuthUserFile /var/www/html/MySite/.htpasswd #密码文件的路径
require valid-user
注意:
1.密码文件推荐使用.htpasswd,因为apache默认系统对“.ht”开头的文件默认不允许外部读取,安全系数会高一点哦。
2..htaccess文件最后的 “require”告诉服务器哪些用户可以进入。require valid-user是指只要是.htpasswd中的任何一个都可以进入。也可以指定名单上的某人或某几人可以通过,使用require user username或require user username1
username2 username3。还可以指定某组人可以通过,使用require group groupname。
文件权限
-rw-r--r-- .htaccess
-rw--r--r-- .htpasswd #密码文件如果没有rwx权限,可能会验证失败
三、创建用户密码
就是创建apache的验证用户
htpasswd -c /var/www/test/.htpasswd 用户名
#第一次创建用户要用到-c 参数 第2次添加用户,就不用-c参数
htpasswd -m .htpasswd 用户名 更改密码
htpasswd -D .htpasswd 用户名 删除用户
/*------------------------------------------------------
ps 也可将 1,2 步骤归结到同一步骤,如下:
<Directory /var/www/test>
Options Indexes MultiViews
AuthType basic #类型
AuthName "welcome test"
AuthUserFile /var/www/test/.htpasswd #密文配置文件路径
require valid-user = user test #test 为用户名 如有其它用户以此 列在 test 之后
# Order allow,deny
# Allow from all
</Directory>
--------------------------------------------------------*/
重启apache,OK ! 重启方法:service httpd restart
四、通过用户组方式访问
alias /test01 "/data/web/test01/"
<Directory /data/web/test01>
Options Indexes MultiViews
AuthType basic
AuthName "welcome test"
AuthUserFile /etc/httpd/httppwd
AuthGroupFile /etc/httpd/httpgrp #用户组文件路径
require group admin #admin 是用户组
</Directory>
创建用户组配置文件
vi /etc/httpd/httpgrp #创建路径与配置文件中指定文件相同
内容如下:admin:test #注意test 是已经创建好的用户,如果该组中有其它用户,一次排列以空格隔开
重启apache ok!
相关文章推荐
- apache实现网页浏览权限设置
- 【C#】.NET中设置代理服务器浏览网页的实现
- 初步实现了Apache2.2.9+Subversion1.5.5在windows下的配置与权限设置
- 【C#】.NET中设置代理服务器浏览网页的实现--转载
- Apache 目录权限的设置
- Java 并发专题 :FutureTask 实现预加载数据 在线看电子书、浏览器浏览网页等
- Apache下实现禁止目录浏览
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(23)-设置角色遗留问题和为权限设置角色以及EasyUI Tabs的使用
- mac配置本地环境,用brew下载redis及apache,实现手机访问本地网页
- Apache结合Thinkphp实现伪静态的设置方法
- 对类成员访问权限的控制,是通过设置成员的访问控制属性实现的,下列不是访问控制属性的是( )
- 安全浏览网页 巧妙防范网页木马侵扰设置方法
- Linux Apache上实现Web页面访问权限控制
- Apache-2.2用户权限设置与认证
- 通过配置Apache,利用压缩网页来提升网站浏览速度
- NET 利用 jquery+ztree 实现 角色权限设置(以树结构显示导航菜单)
- 运维笔记22 (apache的基本配置,静态网页,动态cgi,论坛搭建,squid实现正向,反向代理,简易cdn加速)
- Ubuntu Linux Apache安装设置(中文网页乱码的解决方法)
- hive2hive mtods自动设置权限实现
- 如何实现访问apache时的目录浏览功能(apache file list view)