如何实现Apache的用户认证

有时候,我们会有这样一个需求,就是需要让一些文件经过用户账号密码认证后才能进行访问,并且限定某些站点只有固定的用户才能登陆。下边,则对实现认证的步骤进行详细说明:

一、安装httpd软件包,并重启服务(这个就不多说了吧)

二、编辑/etc/httpd/conf/httpd.conf

在文件中大约330行左右有一行

“AllowOverride  none” 这个是系统默认的,无控制列表,见附。

我们这里将none改为AuthConfig参数,并添加以下几行内容,如下:

AllowOverride AuthConfig

AuthType  Basic                         # 用户认证类型

AuthName  "Restricted Site"             # 认证时显示的名字

AuthUserFile  /etc/httpd/conf/htpasswd  # 认证时用户的账号密码文件

AuthGroupFile  /etc/httpd/conf/htgroup  #基于组的认证

# Require user  tom                   # 只有tom用户才能登录

# Require group myusers             # 允许哪个组中的用户登录

Require valid-user        # 出现在账号密码文件中的用户都能登录

三、创建/etc/httpd/conf/htpasswd文件,及用户

使用htpasswd命令创建用户,在第一次创建时加-c可创建文件

# htpasswd -c -m /etc/httpd/conf/htpasswd  tom

# htpasswd -m /etc/httpd/conf/htpasswd  jerry

四、创建组文件/etc/httpd/conf/htgroup

在文件中写入一行

myusers:  tom  jerry

五、重启服务即可

# service  httpd  restart

六、验证(本地IP地址为172.16.13.1)

可在本地中检验,也可在浏览器中验证。

更多精彩内容:http://www.bianceng.cn/Servers/web/

附:

AllowOverride  none,默认无控制列表,即不使用用户认证,而使用下边的认证机制:基于IP的认证。

Order  allow,deny --> allow,deny的顺序表示执行其限定的先后次序

Allow  from  all  (系统默认允许所有主机登录)

1、若只允许一台主机登录,则

Order  allow,deny

Allow  from  172.16.13.2

2、若只拒绝某台主机登录,则

Order  deny,allow

Deny  from  172.16.13.3

你的问题解决了吗?很高兴给大家分享我的学习经验。

本文出自 “对着阳光微笑着” 博客,请务必保留此出处http://dongld.blog.51cto.com/4234800/1174199

时间: 2025-01-14 20:22:41

如何实现Apache的用户认证的相关文章

Apache服务器的用户认证(3)

apache|服务器 目前,Apache.PHP4.MySQL三者是Linux下构建Web网站的最佳搭档,这三个软件都是免费软件.将三者结合起来,通过HTTP协议,利用PHP4和MySQL,实现Apache的用户认证功能. PHP4以Apache的模块方式来运行的时候才能进行用户认证.为此,在编译Apache时需要加入PHP4模块一起编译.假设PHP4作为Apache的模块,编译.安装Apache到/usr/local/apache目录,编译.安装MySQL到/usr/local/mysql目录

Apache服务器的用户认证 (转)

apache|服务器 经常上网的读者会遇到这种情况:访问一些网站的某些资源时,浏览器弹出一个对话框,要求输入用户名和密码来获取对资源的访问.这就是用户认证的一种技术.用户认证是保护网络系统资源的第一道防线,它控制着所有登录并检查访问用户的合法性,其目标是仅让合法用户以合法的权限访问网络系统的资源.基本的用户认证技术是"用户名+密码". Apache是目前流行的Web服务器,可运行在Linux.Unix.Windows等操作系统下,它可以很好地解决"用户名+密码"的认

Apache服务器的用户认证

apache|服务器 作者:徐辉 经常上网的读者会遇到这种情况:访问一些网站的某些资源时,浏览器弹出一个对话框,要求输入用户名和密码来获取对资源的访问.这就是用户认证的一种技术.用户认证是保护网络系统资源的第一道防线,它控制着所有登录并检查访问用户的合法性,其目标是仅让合法用户以合法的权限访问网络系统的资源.基本的用户认证技术是"用户名+密码". Apache是目前流行的Web服务器,可运行在Linux.Unix.Windows等操作系统下,它可以很好地解决"用户名+密码&q

Apache服务器攻略 用户认证简单配置方案集

Apache是目前流行的Web服务器,可运行在linux.Unix.Windows等操作系统下,它可以很好地解决"用户名+密码"的认证问题.Apache用户认证所需要的用户名和密码有两种不同的存贮方式:一种是文本文件:另一种是MSQL. Oracle.MySQL等数据库.下面以Linux的Apache为例,就这两种存贮方式,同时能对Windows的 Apache用户认证作简要的说明.下面我们来介绍下通过文本认证而实现的方式. 建立用户的认证授权需要三个步骤: 1.建立用户库 2.配置服

Apache服务器的用户认证_服务器

经常上网的读者会遇到这种情况:访问一些网站的某些资源时,浏览器弹出一个对话框,要求输入用户名和密码来获取对资源的访问.这就是用户认证的一种技术.用户认证是保护网络系统资源的第一道防线,它控制着所有登录并检查访问用户的合法性,其目标是仅让合法用户以合法的权限访问网络系统的资源.基本的用户认证技术是"用户名+密码".  Apache是目前流行的Web服务器,可运行在Linux.Unix.Windows等操作系统下,它可以很好地解决"用户名+密码"的认证问题.Apache

Linux+Apache实现用户身份认证

一.序言 现在很多网站对用户的访问权限进行了严格的限制,用户在访问某些资源时需要给出"用户名/口令"来确认自己的身份. 目前,使用最多的身份认证方法是将用户名.口令存放在一个数据库中,当用户要访问某些受限制的资源时,要在某一个页面中输入用户名和口令,程序将用户输入的用户名和口令与数据库存放的"用户名/口令"相比较,如果输入正确,则正常使用资源,否则,资源访问被拒绝.但是,这种身份认证方式有两个很大的问题,一方面只要用户有一次身份认证成功,就可以记录下受限资源的链接地

Apache服务器的用户认证(1)

apache|服务器 经常上网的读者会遇到这种情况:访问一些网站的某些资源时,浏览器弹出一个对话框,要求输入用户名和密码来获取对资源的访问.这就是用户认证的一种技术.用户认证是保护网络系统资源的第一道防线,它控制着所有登录并检查访问用户的合法性,其目标是仅让合法用户以合法的权限访问网络系统的资源.基本的用户认证技术是"用户名+密码". Apache是目前流行的Web服务器,可运行在Linux.Unix.Windows等操作系统下,它可以很好地解决"用户名+密码"的认

Apache用户认证方法汇总 (转载)

apache Apache用户认证方法汇总 一.基本的Apache用户认证方法: 若对某一目录下的文件如/home/ftp/pub需要做到用户认证,则在httpd.conf中加入下面的行 <> options indexes followsymlinks allowoverride authconfig order allow,deny allow from all <> 用在目录/home/ftp/pub下放文件.htaccess,内容如下: authname "sha

针对Apache 2.x的MySQL用户认证模块的安装

前面谈到 Samba 服务器的 MySQL 用户认证,实际上我老早就写过 Apache 针对 MySQL 的认证.不过以前只是测试而已,没有实际使用.前文提到知识管理,实际上在公司内部我们运行着一个基于 pLog 的博客系统.原先的系统没有发布到互联网,后来为了能让公司异地的各分支机构也能使用该博客系统,所以,决定发布到互联网.为了最小程度的降低对博客系统的 Hack ,所以我决定采用外挂的 mod_auth_mysql 模块来实现用户认证,从而降低公司内部系统暴露给非授权用户的风险. 在这次安