【问题标题】:how safe is php curl in ssl/https?ssl/https 中的 php curl 有多安全?
【发布时间】:2011-10-15 08:27:00
【问题描述】:

我想要两台服务器,服务器 A 和服务器 B。服务器 A 执行所有身份验证(用户名和密码)。如果用户在服务器 A 上通过了身份验证,那么服务器 A 将发送用户的会话 id、IP 地址、用户代理等的 POST 数据。服务器 B 将通过 SSL 接收所有这些数据,并将信任服务器 A 并向用户授予访问权限。另外,服务器 B 将只接受服务器 A 通过服务器 A 的 IP 发送的 POST 数据。

我的问题是,由于 post 数据是通过 curl/ssl 发送的,在流量中是否会被拦截或窃取?黑客可以以纯文本形式查看会话 ID(这里最重要的组件)吗?

我能做些什么来提高这种方法的安全性吗?

【问题讨论】:

  • 我希望将服务器 A 作为身份验证服务器,将多个子服务器作为服务提供者。服务器 A 只会对它们进行身份验证并将用户指向他们的应用程序所在的位置。如果这有意义的话。

标签: php security session curl


【解决方案1】:

您不想使用 PHP 来实现这一点,因为这很容易通过单独的网络服务器来实现。处理 SSL (there is even hardware for that) 的服务器 A 可以充当服务器 B 的 Central Authentication ServiceReverse Proxy。这是在服务器之间划分职责的常见设置。请研究这些主题。

您可以从各种解决方案中进行选择,包括免费的解决方案,如 nginx as a reverse proxycommercial solutions like IBM's WebSEAL 等。

是的,当您使用 SSL 时,它是 secure enough(如有疑问,请购买审核)。

顺便说一句,这个问题可能更适合 serverfault.com。

【讨论】:

  • 这意味着您应该跳过使用 PHP 执行此操作的想法,并研究我的答案中链接的主题。
  • 我的设置有什么问题?我查看了 nginx,我认为它不提供任何 SSO 功能,它只是 apache 的反向代理,充当 Web 服务器,仅此而已。
  • @user962449 无意冒犯,但 20 分钟的研究是不够的。您不想为此使用 PHP 的主要原因是,您想要实现的所有事情都可以通过 webserver 模块更快地解决。用 PHP 解决这个问题就是重新发明已经存在的东西。
  • 我不认为这些对我来说是解决方案。您推荐的硬件是卸载一些我认为不需要的 SSL 计算。我只是想让一个服务器成为多个服务器的 SSO。我检查过的所有服务都这样做:它们通过安全连接发送令牌。这几乎与我正在做的事情相同,而且我认为我会以自己的方式拥有更大的灵活性。感谢您帮助我解决 Gordon,但我真的不是在寻找替代品,不过感谢您提供的信息。我只是在问 curl+ssl 是否可以安全地发送令牌/会话(我不使用 curl)。
猜你喜欢
  • 2015-11-15
  • 1970-01-01
  • 2015-05-09
  • 1970-01-01
  • 2021-10-04
  • 2015-12-06
  • 2016-07-08
  • 2014-02-28
  • 2012-05-10
相关资源
最近更新 更多