AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题

问题[htpasswd](server)

Martin Hope
Patoshi パトシ
Asked: 2021-06-17 06:06:41 +0800 CST

允许在查看目录时列出文件,但在直接访问时受保护(通过 HTTP 身份验证)

  • 1

.htaccess我使用and创建了一个受密码保护的目录.htpasswd,但是当我转到目录 URL 时,这些文件没有显示出来。

我有这个.htaccess:

#Protect multiple files
<FilesMatch "^(.*).csv$">
AuthName "Dialog prompt"                                                                                                                                                                                       
AuthType Basic
AuthUserFile /xxxxx/test                                                                                                                                              
#AuthUserFile ".htpasswd"                                                                                                                                                                                      
Require valid-user                                                                                                                                                                                             
</FilesMatch>       

目录列表 - 不显示 CSV 文件

更新:我正在保护该目录中的 CSV 文件。当设置了 auth 指令时,它们会从目录列表中消失。当我删除它时,它们会出现。我希望至少能够看到目录列表中的文件,但是在访问这些文件时,它会提供身份验证提示。

linux permissions .htaccess apache-2.4 htpasswd
  • 1 个回答
  • 181 Views
Martin Hope
Jürgen Steinblock
Asked: 2020-08-18 03:33:47 +0800 CST

使用 mysql 生成 apache 兼容密码

  • 2

我目前正在迁移旧的网络服务器。

旧服务器使用存储在 mysql 表中并mod_auth_mysql启用的用户的基本身份验证。

密码存储在 apaches 的 sha1 函数SELECT sha1('secret')中,适用于mod_auth_mysql

不幸mod_auth_mysql的是不再支持。这就是为什么我找到mod_authn_dbd了替代方案。

https://documentation.help/httpd-2.4-es/mod_authn_dbd.html

我已经设法让所有东西都启动并运行,直到我可以使用基本身份验证和固定密码登录为止

<Location />
        AuthType Basic
        AuthName "Test"
        AuthBasicProvider dbd
        Require valid-user
        AuthDBDUserPWQuery "SELECT '{SHA}qUqP5cyxm6YcTAhz05Hph5gvu9M=' FROM users WHERE user = %s"
</Location>

我只将 sha1 哈希存储在用户表中。虽然由 mysql ( ) mod_authn_dbd 生成的旧mod_auth_mysql接受的哈希SELECT sha1('test')=a94a8fe5ccb19ba61c4c0873d391e987982fbbd3没有。

根据https://documentation.help/httpd-2.4-es/password_encryptions.html

SHA1 "{SHA}" + Base64 编码的密码 SHA-1 摘要。

接受 htpasswd 生成的密码。

htpasswd -bns user test
user:{SHA}qUqP5cyxm6YcTAhz05Hph5gvu9M=

现在我需要将此值a94a8fe5ccb19ba61c4c0873d391e987982fbbd3(存储在我的数据库中用于密码测试)转换qUqP5cyxm6YcTAhz05Hph5gvu9M=为 mysql 内部的(密码测试的接受值)

我已经试过了

SELECT to_base64(sha1('test')), to_base64(ucase(sha1('test'))), to_base64(lcase(sha1('test')));`

但没有一个产生预期的结果。

我要么需要一种方法将我现有的密码哈希转换为预期的格式,要么说服mod_authn_dbd我接受我现有的 sha1 哈希。

任何帮助,将不胜感激

mysql apache2 htpasswd mod-auth-mysql
  • 2 个回答
  • 358 Views
Martin Hope
GeoffAtkins
Asked: 2016-09-27 08:00:22 +0800 CST

受密码保护时,Wordpress 子目录中的 AStats 显示 404 错误

  • 0

我在 CentOS/WHM/Apache 2.2 服务器上运行(对于客户端)一个 Wordpress 站点,并且在我们安装了 AWStats 的子目录中。在我们通过 htaccess 文件应用密码保护之前,一切正常。如果设置了密码保护,则在尝试查看 AStat 时会导致 404 错误。

经过大量试验和错误,我们发现这取决于 Wordpress htaccess 规则。

使用以下方法调整它们:

# BEGIN WordPress  
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]  
# The following line is the line we added  
RewriteCond %{REQUEST_URI} ^wp-content/stats(.*) 
RewriteCond %{REQUEST_FILENAME} !-f  
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

(AWStats 安装在 wp-content 的子文件夹中,因为这导致 Wordpress 出现的问题最少)

效果很好,直到 Wordpress 自动更新删除了所有更改并将此 htaccess 块恢复为默认值。进行此更改并删除 # Begin/End Wordpress 标记会在下一次 Wordpress 更新发生时导致 500 错误,因为它只是添加了这些块中的另一个。

我尝试过的一切似乎都不起作用。

我试过的:

  1. 在 Wordpress 段之前和之后分别添加带有write-to-self规则的 htaccess 重写条件。这会导致 404 问题。

  2. 在 AWSStats 目录中的 htaccess 文件中添加带有write-to-self规则的 htaccess 重写条件。这会导致 404 问题。

  3. 使用指令在 AWSStats 目录中添加一个 htaccess 文件;重写引擎关闭。这会导致 404 问题。

  4. 为 AStats 目录创建子域。这只会导致 AWStats 中的配置错误(我似乎无法修复,因此对于比我更了解 AWStats 配置设置的人可能能够使用此解决方案)。

  5. 删除密码保护。不理想,这个网站已经成为 Wordpress 垃圾评论发送者、推荐垃圾邮件发送者以及所有其他 PITA 想要滥用一个可怜的手无寸铁的 Wordpress 网站的目标。

我想在不授予客户访问 cPanel 的情况下解决此问题,因为他们希望几个人可以访问 AWStats 中的统计数据(是的,我们确实在网站上安装了 Analytics,客户也需要 AWStats )谁不应访问 cPanel 将提供给他们的所有内容。

有没有人有解决这个特定问题的建议或经验?

apache-2.2 .htaccess wordpress awstats htpasswd
  • 1 个回答
  • 421 Views
Martin Hope
ThomasK
Asked: 2012-07-06 02:21:04 +0800 CST

保护单个 .exe 文件以使用 htaccess 和 htpasswd 下载?

  • 0

在我的下载文件夹中的 .htaccess 文件中,只有这个:

<FilesMatch "\.(exe)$">
  AuthType Basic
  AuthName "Downloads"
  AuthUserFile path/to/.htpasswd
  Require valid-user
</FilesMatch>

单击下载链接后a href="fileName.exe">FileName</a>,出现 500 服务器错误。

如果我省略了<FilesMatch>-part; 保护部分正在工作,我猜,因为我得到了登录框。但是一旦进入保护区,就会出现500服务器错误。

我在这里做错了什么?

我的意图是只保护一个 .exe 文件以防止被任何人下载。

有没有更简单或更正确的方法来做到这一点?

authentication .htaccess htpasswd
  • 2 个回答
  • 1063 Views
Martin Hope
Matthew Gall
Asked: 2012-06-13 02:46:53 +0800 CST

使用 nginx 和 htpasswd,重定向用户

  • 0

在我的服务器上,我在我客户的一些网站(以及相关的访问日志文件)上运行 Webalizer。现在这个过程没问题了,日志文件也正确生成并存储了。

我试图设置 nginx 的目的是让用户访问域(日志记录。{我的服务器的主机名})并显示通常的 htpasswd 支持的登录框。然后用户输入我给他们的用户名和密码,根据哪个用户登录,我希望他们被重定向到我指定的相关文件夹。

我做了很多研究,但我不知道这是否可行,如果可行,如何实现。似乎没有必要为每个文件夹设置单独的登录名。

提前致谢!

authentication web-server nginx htpasswd
  • 1 个回答
  • 856 Views
Martin Hope
Brandon G
Asked: 2010-04-17 11:00:33 +0800 CST

处理子目录中的身份验证时需要 .htaccess 重新路由异常

  • 2
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

我将身份验证添加到根目录下的目录“/pb”中,并且我被重定向了。有什么办法可以在此重写规则中添加一个例外,以在访问 /pb 时不允许重写?

谢谢!!

apache-2.2 .htaccess htpasswd
  • 1 个回答
  • 476 Views
Martin Hope
Mnebuerquo
Asked: 2010-02-11 12:39:18 +0800 CST

我应该将我的 htpasswd 文件放在 plesk 域中的什么位置以便与 .htaccess 一起使用?

  • 0

我的域中有一条路径需要 apache 提示输入密码。我将使用 .htaccess 文件来执行此操作,因此我可以通过添加或删除文件来保护或取消保护。

我需要一个地方来存储由 htpasswd 创建的密码文件。有几个要求。

apache 进程可以访问它来进行身份验证。为了更好的安全性,它位于文档根目录之外。它不需要更改 plesk 创建的目录的权限。(可选)它存在于域所有者可以写入它的某个地方。

这个问题假设 Plesk 8.6 并且遵循正常的 Plesk 约定。

有推荐的位置吗?

apache-2.2 security .htaccess htpasswd
  • 2 个回答
  • 3522 Views
Martin Hope
hsz
Asked: 2010-01-30 02:07:39 +0800 CST

如何为除 LAN 之外的所有人设置 htpasswd?

  • 2

我如何htpasswd为除了局域网的人之外的每个想要访问某些服务器的人设置提示(192.168.0.*)?

感谢您的回答!

apache-2.2 .htaccess htpasswd
  • 1 个回答
  • 1295 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve