-1

在生产中保护 django 应用程序实例的常见步骤是什么。我正在使用 sqlite,所以加密数据库也会很好。

由于数据库是加密的,因此应用程序代码也应该加密或仅编译。简单地删除所有 *py 文件并保留 *pyc 文件是否安全?

另外,是否可以在生产服务器中禁用 django shell(./manage.py shell)?一旦外壳可以访问,所有数据也可以访问。

我正在使用的堆栈是:Nginx + Gunicorn + Django + SQLite 都托管在带有专用防火墙的机架空间专用服务器上。

基本上,目标是任何具有 root 访问权限的人都不能访问数据库内容。

4

1 回答 1

4

保护 django 是一个重要的问题,但我认为你很困惑。

首先,即使您可以使您的代码不那么容易检查,它也不会使它更安全。其次,可以从 pyc 文件中恢复除注释之外的所有内容。

最后,django shell 可以方便地在命令行与您的应用程序交互。如果任何未经授权的人能够运行它,那么您是否禁用它也没关系 - 您的安全性已经完全受到威胁。

我强烈建议您不要以您当前的知识水平来管理自己的生产服务器。使用共享主机,并遵循您的托管服务的安全准则。专注于应用程序的实际 Web 安全方面。

还有一件事:您不是在生产中使用内置服务器吗?

更新:您无法保护自己免受 root 的侵害,即使您可以,他们也可以说,只是将硬盘放在另一台计算机上。

于 2012-06-21T15:17:09.710 回答