首页 > Web开发 > 详细

LAMP搭建6:Apache用户认证

时间:2017-01-12 03:27:54      阅读:230      评论:0      收藏:0      [点我收藏+]

搭好了网站,需要进行一系列设置来加强网站安全。比如1.网站有些目录和文件是不便对所有人公开的,2.管理员密码泄露,都会都网站安全造成威胁。因此我们需要给网站设置相应的用户认证,通过认证的用户可以访问指定的目录和文件,或者通过认证的用户才可以有权限登入管理员后台。

1.假设网站根目录/data/www/下有个比较重要的目录important/,里面的内容不宜被人访问。

[root@CentOS6 www]# mkdir important

[root@CentOS6 www]# cd important/

[root@CentOS6 important]# cp /etc/passwd ./passwd.txt

2.正常情况下,任何人都能访问这个文件的内容

技术分享

3.为了让用户只有输入正确的用户名和密码才能访问important目录下的内容,需要更改一下虚拟主机配置:

[root@CentOS6 important]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf

4.修改为如下样式:

……

<VirtualHost *:80>

DocumentRoot "/data/www"

ServerName www.test.com

ServerAlias www.mydiscuz.com

   <Directory /data/www/important/>

       AllowOverride AuthConfig

       AuthName "username"

       AuthType Basic

       AuthUserFile /data/.htpasswd

       require valid-user

   </Directory>

</VirtualHost>

……

5.使用Apache自带的密码创建工具htpasswd命令创建/data/.htpasswd文件,创建认证用户guest,输入密码123456(首次使用需要加-c选项,表示创建.htpasswd文件)

[root@CentOS6 important]# htpasswd -c /data/.htpasswd guest

New password:

Re-type new password:

Adding password for user guest

6.查看/data/.htpasswd内容

[root@CentOS6 important]# cat /data/.htpasswd

guest:hfsn08YHyrcAs

7.添加用户guest2就不用加-c选项了,因为.htpasswd文件已存在。

[root@CentOS6 important]# htpasswd /data/.htpasswd guest2

New password:

Re-type new password:

Adding password for user guest2

[root@CentOS6 important]# cat /data/.htpasswd

guest:hfsn08YHyrcAs

guest2:1XAmJe5eCrLSY

8.重新加载apache配置文件

[root@CentOS6 important]# apachectl -t

Syntax OK

[root@CentOS6 important]# apachectl graceful

9.重新访问/important/passwd,提示需要进行身份认证。

技术分享

10.输入正确的用户名和密码才能看到important/目录下的内容。

技术分享

设置了用户认证你的网站是不是更安全了呢?!


LAMP搭建6:Apache用户认证

原文:http://rachy.blog.51cto.com/11428504/1891100

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!