Skip to content

配置主机白名单与默认页面 ​

主机白名单先决定业务 Host 是否允许继续处理;默认页面再决定未匹配访问服务的 HTTP 请求如何响应。这两项设置都不会替你创建访问服务或 DNS 解析。

操作前准备 ​

  • 使用有权修改系统设置的管理员账号,确认现有业务服务及允许的域名范围。
  • 准备另一台客户端、HiHTTPS 的业务入口地址,以及一个正常业务域名和一个明确不在允许范围内的测试 Host。
  • 验证默认页面时,另准备一个由自己控制、已加入白名单但未创建访问服务的测试域名。不要为了测试关闭生产白名单。
  • 继续使用管理网、VPN、防火墙和平台账号保护管理入口,不把本页设置当作管理端口 81 的访问限制。

主机白名单 ​

主机白名单按请求的 Host 域名决定是否处理业务请求,不是按访问者 IP 放行,也不会创建 DNS 解析或访问服务。主要用于拒绝指向本机、但不在允许范围内的域名请求;如果要限制访问者来源 IP,请使用业务访问控制。

配置步骤 ​

  1. 进入 设置 -> 主机白名单。
  2. 开启 启用主机白名单。升级环境可能保留原设置,不要假定已经开启。
  3. 通常保留 自动包含已配置的访问服务域名,让已启用的业务服务域名进入允许范围;停用、删除服务后需重新确认影响。
  4. 确需额外允许时,在 附加白名单域名 填写如 status.example.com 的域名;多个值用英文逗号、空格或换行分隔。仅确有必要时使用 *.example.com,避免放大允许范围。
  5. 如果页面出现被排除的域名,核对是否仍应排除;需要恢复允许时移除对应排除项,再保存。
  6. 点击 保存,分别用合法业务域名和明确未加入的域名验证。

主机白名单中的启用选项、自动纳入服务域名及附加白名单输入区域

验证允许与拒绝 ​

从另一台客户端检查 HTTP 入口,将域名和地址替换为实际环境中的值:

bash
# 将域名和地址替换为实际已配置的 HTTP 服务
curl -i --resolve web.example.com:80:192.168.8.10 http://web.example.com/
# 确保该测试域名未被任何白名单或通配符覆盖
curl -i --resolve not-allowed.example.net:80:192.168.8.10 http://not-allowed.example.net/

第一条应按访问服务正常处理,第二条应被直接断开。Nginx 的 444 表示不发送 HTTP 响应就关闭连接,curl 可能显示 Empty reply from server,不一定能读到字面上的 444 状态行。不要用服务器回环请求或文件验证路径作为拒绝测试,它们有单独处理规则。

不用这项设置替代管理入口防护

直接访问管理端口 81 不受这套业务 Host 白名单保护;管理入口仍应由管理网、VPN、防火墙及平台账号保护。如果另建业务访问服务反代管理界面,该业务入口仍按自身规则处理。

添加白名单只表示允许请求继续处理,不代表该域名已有网站或证书;后续响应还取决于访问服务和默认页面。

默认页面 ​

默认页面用于没有匹配访问服务的 HTTP 80 请求,不是所有网站错误页的统一替换功能。已匹配网站但后端返回 404、或匹配到路径规则的请求,仍按该服务处理。默认 HTTPS 443 对未匹配的连接拒绝 TLS 握手,不会展示同一默认页面。

主机白名单先于默认页面生效:Host 未被允许时会先断开连接,即使默认页选择“成功页面”也不会显示。

选择默认响应 ​

  1. 进入 设置 -> 默认页面。
  2. 按运维要求选择响应方式;重定向或自定义页面还需填写对应内容。
  3. 点击 保存,确认没有配置错误。
  4. 使用一个由自己控制、已加入白名单,但未创建访问服务的测试域名访问 HTTP 80,核对状态、响应内容或跳转地址。不为测试而关闭生产白名单。
选项行为适用说明
成功页面展示系统默认成功页可确认请求到达默认站点,不表示业务已发布
错误页面(404)返回默认 404 页面告知该入口未提供目标站点
无响应(444)直接关闭连接不提供页面内容,客户端可能显示空响应
重定向跳转到填写的目标 URL先确认目标有效且不会绕回当前默认站点形成循环
自定义页面展示填写的 HTML 内容用于统一提示,不在内容中嵌入内部地址、凭据或敏感信息

默认页面中的成功页面、错误页面、无响应、重定向与自定义页面选项

重定向或自定义页面还需在当前选项下方填写对应内容,图中未展示填写区域。

验证默认页面 ​

例如,已单独允许 unused.example.com 且没有创建该域名的访问服务时:

bash
curl -i --resolve unused.example.com:80:192.168.8.10 http://unused.example.com/

将地址替换为 HiHTTPS 业务入口,确认返回所选默认行为,而不是某个已有访问服务的页面。

完成检查 ​

  • 正常业务域名未被误拦截,非预期 Host 被拒绝;拒绝可能表现为空响应,不要求读到字面上的 444 状态行。
  • 已允许但未匹配访问服务的 HTTP 80 测试请求返回所选默认行为;现有网站仍返回原业务页面。
  • 未将 HTTPS 443 的未匹配握手失败误认为默认页面未保存,也未假定白名单保护管理端口 81。
  • 测试结束后,移除不再需要的附加白名单域名并重新保存。

常见问题与下一步 ​

  • 白名单已添加,但没有显示网站:白名单只放行 Host;还需创建访问服务,或对没有服务的 HTTP 请求使用默认页面。
  • 已选成功页面,却看到连接断开:先核对 Host 是否被白名单拒绝;若通过 HTTPS 访问未匹配的域名,默认 443 会拒绝握手。详见已设置默认页面,却看到连接断开或握手失败。
  • 想把所有后端 404 改成默认页面:本项不替换已匹配网站的业务响应,应检查对应服务和后端应用。
  • 需要为管理入口换证书:使用配置管理后台 HTTPS,不要通过关闭主机白名单排查管理证书问题。