Security 如何保护具有服务器shell访问权限的其他用户的数据库设置

Security 如何保护具有服务器shell访问权限的其他用户的数据库设置,security,mediawiki,Security,Mediawiki,我将mediawiki安装在Web服务器上的某个文件夹中 drwxr-xr-x /server/web/mediawiki 此目录包含一个文件LocalSettings.php。最初,该文件以纯文本形式包含数据库设置(用户/密码) 遵循指南 https://www.mediawiki.org/wiki/Manual:Securing_database_passwords 1我尝试使用chmod读取protect LocalSettings.php -rwx------ LocalSetti

我将mediawiki安装在Web服务器上的某个文件夹中

drwxr-xr-x /server/web/mediawiki 
此目录包含一个文件LocalSettings.php。最初,该文件以纯文本形式包含数据库设置(用户/密码)

遵循指南

https://www.mediawiki.org/wiki/Manual:Securing_database_passwords
1我尝试使用chmod读取protect LocalSettings.php

-rwx------ LocalSettings.php
尝试在web浏览器中重新加载mediawiki页面时出错

failed to open stream: Permission denied in .../includes/WebStart.php
因此,我必须授予LocalSettings.php的读取权限才能继续

    -rwx---r-- LocalSettings.php
所以,简单的方法因为某种原因对我不起作用

问题1:如果你知道为什么简易方法不起作用,请解释我

2之后,我按照指南中描述的另一种方式。我将LocalSettings.php中的所有数据库设置(用户/密码)剪切到一个外部文件(DBpsw.php),该文件位于可访问web的文件夹之外:

    drwxr-xr-x /home/mediawikiDBpsw/

    -rw-r--r-- /home/mediawikiDBpsw/DBpsw.php
并包括/home/mediawikiDBpsw/DBpsw.php/server/web/mediawiki/LocalSettings.php

但正如您所看到的,文件夹/server/web/mediawiki/home/mediawikiDBpsw/和文件/home/mediawikiDBpsw/DBpsw.php/server/web/mediawiki/LocalSettings.php可供其他人访问(可读)。因此,任何有权访问服务器的“其他人”都可以通过ssh连接到文件夹/server/web/mediawiki读取文件LocalSettings.php,从那里学习路径/home/mediawikibpsw/DBpsw.php,并从/home/mediawikibpsw/DBpsw.php读取数据库设置(用户/密码)

问题2:如何保护数据库设置(用户/密码)不受访问服务器的“其他”用户的影响


提前谢谢你

带有数据库设置的文件组应更改为Web服务器的用户组(使用chgrp)

文件的权限应更改为(使用chmod)


现在,mediawiki将运行,因为webserver的用户将有权访问数据库设置。但是,数据库设置仍然是安全的,因为其他人没有对/home/mediawikiDBpsw/DBpsw.php的读取权限(除非他们与Web服务器的用户在同一组中,情况不应该如此)。

您是否执行了此步骤:“检查您的发行版,了解Web服务器的用户是什么(这有所不同,例如“apache”、“nobody”,“httpd”)。然后像这样设置密码文件的权限[…]”?Gumbo,谢谢!将组更改为web服务器用户解决了问题。现在其他人无法读取该文件,但mediawiki可以像服务器用户一样读取该文件。相关:仅保护数据库配置文件是不够的。一些恶意用户可能会更改应用程序源代码,并使web服务器将密码转储到另一个文件。请确保所有文件为不需要的用户提供写保护。另外,最好以不同的用户身份运行每个应用程序。否则,其他应用程序可能会被用来入侵您的MediaWiki站点。@skalee。我使用MediaWiki按组检查目录中的可写文件,其他人使用find.-perm/o+w,g+w检查目录中的可写文件,但没有找到任何可写文件。我从中了解到,最好do sudo-u nobody find.-可写,但我无权访问服务器上的sudo命令。我很感激您的建议,即使用自己的密码创建其他用户作为mediawiki目录的所有者,但我不能这样做,因为我没有创建用户的权限。
w-rw-r----- /home/mediawikiDBpsw/DBpsw.php