我正在考虑从LAMP服务器上的加密分区运行基于PHP的网站(内置symfony)的可能性。原因是因为客户端可以访问服务器,但我不希望他们看到php网站背后的源代码。
如果不可能,我愿意接受其他解决方案。例如,可能从无法轻松访问的虚拟机实例运行站点。
我不是简单地混淆代码的忠实粉丝,因为根据其他帖子,它可以很容易地被逆转。
是否可以在人类无法访问/可读的环境中运行PHP应用程序?
答案 0 :(得分:2)
如果敌人有机会进入机器,你已经输了;它们当然有可能获得源代码。虚拟机内部的加密可能会使其变得更加困难,但它们总是可以转储内存,然后使用techniques described by J. Halderman et al来提取密钥。如果它只是一个加密分区(没有VM),它将被挂载并且易于访问。所以不,除非你控制物理机器,否则你无法保护它免受机器管理员的攻击,无论它是否被加密。
答案 1 :(得分:2)
我没有看到加密分区在这里会有什么帮助,因为Web服务器需要访问它,并且有权访问该机器的人将知道如何使用它。
虚拟机可能是最容易保护的东西,因为您可以提供网页,但限制文件系统/ RDP访问它。
市场上还有可靠的混淆/预编译解决方案。使用后者,您可以分发速度优化的字节码,这是向客户提供的参数。
答案 2 :(得分:1)
原因是因为a 客户端可以访问服务器 但我不希望他们看到 php网站背后的源代码。
垃圾。如何运行一个完全隐藏源代码的网站? Apache需要将其发现以使用PHP进行处理,以便您的网站正常运行。