Apache如何配置身份认证

在本文中,我们将使用Apache HTTP服务器配置基本身份验证

on  it road.com

Apache 配置基本身份验证

首先,我们必须创建一个Apache可以读取的密码文件。
为此,我们可以使用 htpasswd 命令。
htpasswd 命令与 httpd-tools 包一起打包。
但是,在其他 Linux 发行版上安装时,我们可能会在 apache2-utils 包中找到它。

检查所需的软件包是否已安装在服务器上。

[root@lampserver ~]# rpm -qa | grep httpd
httpd-tools-2.4.6-40.el7.centos.x86_64 
httpd-2.4.6-40.el7.centos.x86_64 
[root@lampserver ~]#

创建密码文件并添加两个用户。
在将第二个用户添加到已创建的 .htpasswd 文件时省略 -c 选项,否则它将覆盖该文件。

[root@lampserver ~]# htpasswd -c /var/www/html/phpmyadmin/setup/.htpasswd JackLiu
New password: 
Re-type new password: 
Adding password for user JackLiu 
[root@lampserver ~]# htpasswd /var/www/html/phpmyadmin/setup/.htpasswd mansoor
New password: 
Re-type new password: 
Adding password for user mansoor

检查密码文件的内容。

[root@lampserver ~]# cat /var/www/html/phpmyadmin/setup/.htpasswd
JackLiu:$apr1$OLXoiAD6$gtz1kEOcGXXSPVTHARTBt1 
mansoor:$apr1$W1rsynDg$VLbBWc2neqIq3W3LHmfuo1 
[root@lampserver ~]#

如我们所知,我们也可以在不同位置定义 Apache 指令,例如

  • a) 在 httpd.conf 文件中,
  • b) 在 /etc/httpd/conf.d 目录中创建的单独 .conf 文件中,或者
  • c) 使用 .htaccess 文件覆盖。

如果我们为网站设置了允许覆盖,那么我们可以使用 .htaccess 文件实现基本身份验证。
.htaccess 的优点之一是,它不需要在配置后重新启动 httpd 服务。
因此,对于繁忙的 Web 服务器,这种技术更好。

[root@lampserver ~]# cat >> /var/www/html/private/.htaccess << EOF 
> AuthType Basic 
> AuthName "Restricted Content" 
> AuthUserFile /var/www/html/private/.htpasswd 
> Require valid-user 
> EOF 
[root@lampserver ~]#

现在访问 http://192.168.79.130/private/
将要求我们进行身份验证。

日期:2020-09-17 00:16:35 来源:oir作者:oir