🔐如何用密码保护托管在Apache,Nginx,WordPress中的特定页面?

您可能需要密码保护某种机密页面。 让我们看看如何在各种乐器上执行此操作。

这是可能的,而且非常简单。

为什么用密码保护网页?

原因可能有很多,包括:

  • 页面上的机密数据
  • 该页面尚未准备就绪,您不想将其公开,但是想与特定的人共享。

无论是什么,让我们看看如何保护数据。

需求

让我们举个例子。

我想在lab.itsecforu.ru上保护/客户端,这意味着如果任何人都可以访问https://lab.itsecforu.ru/client,则系统必须要求输入密码。

阿帕奇

让我们先从Apache开始。

我们需要创建的第一件事是将保存所有凭据的密码文件。 文件名将是.htpasswd,您可以将其放置在服务器上的任何位置。 我将在/ etc / httpd / conf中创建它。

您可以使用touch命令创建文件:

touch /etc/httpd/conf/.htpasswd

让我们添加一个将被允许访问/客户端的用户。 为此,我们需要使用htpasswd命令。

htpasswd /etc/httpd/conf/.htpasswd itsecforu

itsecforu的最后一部分是用户名。

进行更改,然后按Enter。

htpasswd /etc/httpd/conf/.htpasswd itsecforu
New password:
Re-type new password:
Adding password for user itsecforu

如果打开文件,您会注意到密码以加密格式存储。

 cat /etc/httpd/conf/.htpasswd
itsecforu:$apr1$EHvl0Bc5$nh4u0w3.Cj3wzPT7XUXqW1

接下来,我们需要指示Apache保护所需的URI。 修改用于Apache实例的httpd.conf文件或配置文件。 我正在使用默认安装,所以我在使用/etc/httpd/conf/httpd.conf在文件中的任何位置添加以下内容

<Directory "/var/www/html/client">
Options Indexes FollowSymLinks
AuthType Basic
AuthName "Protected Content for Client"
AuthUserFile /etc/httpd/conf/.htpasswd
Require valid-user
</Directory>

如果您已经有/ var / www / html / client指令,则不必添加新的部分,而只需将以下内容添加到现有的指令中。

AuthType Basic
AuthName "Protected Content"
AuthUserFile /etc/httpd/conf/.htpasswd
Require valid-user

重新启动Apache

service httpd restart

尝试访问/客户端页面,它应该要求输入密码。 输入您之前设置的凭据以查看内容。

Nginx的

让我们在Nginx中实现基本身份验证,如下所示。

我们需要Apache Utils帮助来创建凭证。

如果服务器上未安装Apache HTTP,则需要单独安装实用程序,如下所示。

如果不确定,您可以运行htpasswd看看它是否有效。

如果不是,那么您就知道需要安装它。

CentOS / RHEL 8

dnf install httpd-tools

CentOS / RHEL 7

yum install httpd-tools

的Ubuntu

apt-get install apache2-utils

让我们以与在Apache中相同的方式创建凭据。

htpasswd -c /etc/nginx/.htpasswd itsecforu

记住要用您想要的真实用户名替换itsecforu,接下来,我们需要配置Nginx以使用密码限制特定的URI。

  • 假设我们需要保护/ admin URI
  • 将以下内容添加到nginx.conf文件或其他活动的nginx配置文件中
location /admin {
auth_basic "Admin Area";
auth_basic_user_file /etc/nginx/.htpasswd;
}

重新加载Nginx

如果您需要通过Nginx限制整个网站的服务,该怎么办?

简单!

将以下内容添加到nginx.conf或位置/ {directive中的活动配置文件中

auth_basic "Admin Area";
auth_basic_user_file /etc/nginx/.htpasswd;

SiteGround

有许多平台提供用户友好的工具,SiteGround是其中之一。

如果您使用SiteGround托管网站,则可以从管理控制台轻松保护URL。

假设您使用的是WordPress,并且需要安全/ wp-admin。

  • 登录到SiteGround并转到需要启用基本身份验证的站点。
  • 单击安全性>>受保护的URL >>用户
  • 输入用户名和密码以创建凭据

然后,我们将使用刚刚创建的凭据来保护wp-admin。

  • 转到URL选项卡
  • 在路径中输入wp-admin并单击保护
  • 单击“管理访问”,然后分配刚创建的用户。

尝试访问该页面,SiteGround将提示您输入凭据。

WordPress的

您是否正在使用WordPress,并希望用密码保护特定的帖子,页面,类别,角色或整个网站?

当然!

认识PPWP(WordPress密码保护插件)

安装插件并配置如何保护WordPress资源。

这适用于Elementor,Divi,Beaver等页面构建器。

另外,如果您想要一个简单的受密码保护的帖子或页面,则可以利用内置的WP功能。

不需要插件。

  • 转到要启用密码的帖子或页面。
  • 在“出版物”部分中,单击“可见性:公共”旁边的“编辑”。
  • 选择密码保护,然后输入密码。

🔐如何用密码保护托管在Apache,Nginx,WordPress中的特定页面?

单击确定,您就完成了!

寻找更多保护WordPress的方法吗?

查看以下指南:

🌍13个安全最佳实践来保护您的WordPress网站

安全分析,性能和分析WordPress排名前100万的网站

WordPress网站上的5大安全漏洞

如何为WordPress网站创建活动日志(以及为什么要这样做)

如何在Linux上备份WordPress网站

WordPress被黑客入侵时如何恢复网站

如何通过SSH修复损坏的https WordPress网站

🌐如何在WordPress中禁用对Xmlrpc.php的访问

🤖6种方法来禁止和驱逐网站中的机器人

如何更改WordPress管理员网址以防止暴力攻击?

🌐WPintel:一个Chrome扩展程序,旨在扫描WordPress漏洞并收集信息

⚓如何在Apache,Nginx和WordPress中阻止不需要的用户代理和源代码?

面板

如果您在共享主机上,那么很可能将拥有cPanel。

好消息是,cPanel提供了一个名为Directory Privacy的实用程序。 从那里您可以为目录设置密码。

选择您要保护的文件夹。

如下所示,我选择了一个名为chandan的文件夹,该文件夹位于public_html中

🔐如何用密码保护托管在Apache,Nginx,WordPress中的特定页面?

之后,您会注意到该文件夹​​已锁定。

结论

我希望这可以帮助您通过基本身份验证来保护特定的URI,密码文件夹。

如果您正在寻找全面的网站安全性,则应考虑实施WAF。

Sidebar