You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

网站/.well-known/目录可公网访问是否正常?如何设置安全权限?

关于.well-known目录的安全配置与权限设置

核心问题解析

.well-known是ACME协议(如Let's Encrypt)用于域名验证的标准目录,但公开可遍历确实存在风险——攻击者可能通过目录枚举发现敏感验证文件或其他意外存放的内容。

正确的权限配置

目录权限

  • 保持755是合理的,但要确保目录的所有者为web服务器用户(比如www-data、apache),而非匿名或不可控用户。755权限意味着所有者可读写执行,组和其他用户可读执行,既能让ACME客户端(如certbot)写入验证文件,也能让web服务器读取文件完成验证,同时避免其他用户修改目录内容。
  • 若ACME客户端以root运行,后续可调整目录所有者为web用户,规避root权限残留风险。

文件权限

  • 验证文件使用644完全合规,这类文件仅需web服务器能读取,无需执行权限,也不允许其他用户写入。

禁止目录遍历的关键配置

权限只是基础,更重要的是通过web服务器配置禁用.well-known目录的索引遍历,这才是解决“能访问子目录及文件列表”问题的核心:

Nginx配置示例

在站点配置中添加:

location /.well-known/ {
    allow all;
    autoindex off; # 禁用目录索引
    try_files $uri $uri/ =404;
}

Apache配置示例

在.htaccess或站点配置中添加:

<Directory "/path/to/your/site/.well-known">
    Options -Indexes # 关闭目录索引
    AllowOverride None
    Require all granted
</Directory>

配置后,访问https://yourdomain/.well-known/会返回403或404,而非目录文件列表,但ACME验证所需的单个文件(如/.well-known/acme-challenge/xxxx)仍可正常访问,不影响证书续期。

额外安全建议

  • 定期清理.well-known目录下的旧验证文件,ACME客户端通常会自动清理,但手动检查可避免残留敏感内容。
  • 不要在.well-known目录存放任何非ACME验证相关的文件,该目录仅用于协议规定的验证用途。

内容的提问来源于stack exchange,提问作者blogob

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 21:12:37