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 / 问题 / 1159532
Accepted
divB
divB
Asked: 2024-05-17 05:39:18 +0800 CST2024-05-17 05:39:18 +0800 CST 2024-05-17 05:39:18 +0800 CST

基本身份验证到 NTLM 转换代理

  • 772

有没有什么解决方案不仅可以代理 NTLM,而且可以将输入端的 HTTP Basic Auth 转换为输出端的 NTLM?

背景:使用 NTLM Auth 的内部 SharePoint 服务器应该可以通过 Apache 反向代理进行访问。问题是 NTLM 是有状态的,mod_proxy 无法处理它。现在,带有 mod_proxy 的 Apache 可以只提供基本身份验证(并通过 passwd 文件或类似文件进行身份验证)并代理到另一个内部基本身份验证到 NTLM 转换器。这只是读取我们的 http 身份验证凭据并将其传递到 SharePoint 服务器。

reverse-proxy
  • 1 1 个回答
  • 63 Views

1 个回答

  • Voted
  1. Best Answer
    Nikita Kipriyanov
    2024-05-20T16:40:28+08:002024-05-20T16:40:28+08:00

    不存在纯粹基于 Apache 的解决方案。您的选择(我知道并亲自尝试过)是:

    • Caddy——免费,尽管需要定制构建,这可以使用他们的网络界面,一种可以与任何东西共存的服务,以及
    • Kerio Control — 付费,更易于设置,需要小型专用虚拟机。

    还有Nginx Plus声称支持,但我没有尝试。

    您可以将新的反向代理放在 Apache 前面。不是“Apache 服务某些东西并代理某些东西”,而是“Caddy 代理一切,在不同后端之间分发”。这将产生一个更好的整体架构,具有明确定义的角色和较弱的服务相互依赖性:代理服务器仅执行代理,而 Web 服务器仅提供服务,并且每个部分都可以独立替换或管理(例如由不同的管理员团队, ETC。)。


    如果您选择使用 Caddy,首先您需要将 Apache 移至 80/443 以外的一些端口。将会监听 Caddy,它不仅必须反向代理您的 NTLM 内容,还必须反向代理 Apache 所服务的内容。作为奖励,您可以使用 Caddy 的自动 SSL 功能(例如,它具有内置 ACME 客户端,可与 Let's Encrypt 和零 SSL 交互)、剥离 SSL 并仅对 Apache 的 HTTP 使用一个非默认端口。

    或者,您可以将所有负载完全转移到 Caddy 上,从而摆脱 Apache。但我不会那样做。

    或者,您可以仅使用 Caddy 运行专用的小型 VM(或容器)并将其暴露给外部;这是我过去在解决完全相同的问题时最终得到的解决方案(OWA 和其他一些网站的反向代理,仅使用单个公共 IP 地址)。如果您选择 Kerio,这也将是唯一可能的解决方案。

    • 2

相关问题

  • 反向代理设备[关闭]

  • 清漆配置仅缓存未登录用户

  • Varnish 缓存如何处理不同的域?

  • Varnish 与其他反向代理

  • 内省 Varnish 的工具

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