linux - 确保网络服务器上文件安全的最佳方法

标签 linux security nginx webserver

上下文:我在 Linux Web 服务器上有一些文件,例如 create_db.txt。它们在我的 php 脚本中使用,但现在每个人都可以通过直接链接观看它们

http://url/create_db.txt

拒绝访问此文件并且仍然有机会从 php 脚本编写和读取其中的信息的正确方法是什么?谢谢。

最佳答案

如果您使用的是 Apache,您可以通过在 Web 根目录中添加 .htaccess 文件来限制对特定文件的访问:

<Files create_db.txt>
Order allow, deny
Deny from all
</ Files>

Files上面的部分将限制所有用户对 create_db.txt 文件的访问。

运行 nginx 可以通过在配置中添加以下内容来实现相同的效果:

location ^~ /create_db.txt {
  deny all;
}

就像其他答案中所述,您确实应该考虑将文件移动到 webroot 之外的目录。当然,网络服务器必须能够访问该文件夹。这可以通过在文件夹上设置正确的权限以及将所有者更改为网络服务器的所有者来完成。像这样的事情:

mkdir -m 755 -p /path/outside/webroot
mv create_db.txt /path/outside/webroot
chown -R <user>:<group> /path/outside/webroot

关于linux - 确保网络服务器上文件安全的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47960831/

相关文章:

linux - 如何在 Linux 进程的命令行参数中隐藏密码

api - API 的安全客户端 token 身份验证

algorithm - SSL 证书 : Signature Algorithm shows "sha256rsa" but thumbprint algorithm shows "sha1"

linux - CentOS initscript 启动 chroot nginx 问题

python - 如何在 dreambox 的启动/启动时运行基于 enigma2 的插件?

ruby-on-rails - RVM 找不到系统版本

linux - 如何在 SLES 12 中自动完成命令的选项?

linux - 如何从命令输出中删除空格/制表符

nginx - 如何通过解析nginx日志文件自动拒绝ip地址

configuration - Nginx 403 错误 : directory index of [folder] is forbidden