database - Ubuntu 网络服务器权限

标签 database security ubuntu permissions backup

现在我买了一个 Ubuntu Cloud 服务器。我今天早上安装了 Webmin,现在我有一个问题。是否可以创建只能使用一个目录的用户,SVN、FTP、PHP、Python、MySQL、Apache?例如,用户 Kevin 只能使用/var/www/kevin/?哦,目录创建后,SVN 结帐应该填满目录。管理所有数据库的最佳方法是什么?很多人都会使用数据库,那么我怎样才能保证它的安全呢?每次执行查询时是否可以备份数据库?

非常感谢,

问候,
凯文

最佳答案

这可能更适合 https://askubuntu.com/

也就是说,在每次查询后备份数据库听起来像是糟糕性能的秘诀,而且可能没有真正的好处。配置或修改您的应用程序以将审计日志发送到另一台机器可能更容易实现。

您可以配置您的标准 Unix permissions允许 kevin 只在 /var/www/kevin 中写入.限制 kevin 可以运行的程序可能需要一个更像 AppArmor 的工具。 , SElinux , TOMOYO , 或 SMACK .这些中的任何一个mandatory access control工具可以防止用户执行不受信任的程序或在标准 Unix 权限之上提供额外的安全层。

我已经在 AppArmor 上工作了十多年,这将是我为这项工作首先选择的工具,但其他工具非常出色,可能更适合您的环境。 (AppArmor 可能已经预装。检查 aa-status(8) 输出以查看。:)

但首先要确保您的 Unix 权限是正确的——它们可能是老派,但它们非常棒。

更新

But how can I make that when 'kevin' signs into SSH, he automatically goes to directory /var/www/kevin/ (and can't go to /var/www/ or directories below)?



您可以添加 cd /var/www/kevin凯文的命令~/.bash_profile~/.profile文件。这可能比有用更烦人。 (我不建议将 kevin 的主目录(在 /etc/passwd 中)设置为 /var/www/kevin,因为这会将 ~/.bash_history~/.ssh/* 信息存储在 /var/www/kevin/.bash_history/var/www/kevin/.ssh/ 中,可能会暴露过多的 kevin 私有(private)信息。 )

让kevin进入/var/www/kevin/ , kevin 需要能够输入 /var/www -- 但他不一定需要看/var/www的内容:
root:root   755 /var
root:root   751 /var/www
kevin:kevin 755 /var/www/kevin
other:www   750 /var/www/other
priv:www    750 /var/www/private

如果您的网络服务器与组或补充组一起运行 www ,它将能够遍历和读取所有这些目录。凯文不能。 (假设 kevin 不在组或补充组中 www 。) Kevin 可以 cd /var/www , 如果凯文猜到 /var/www/other/var/www/private ,他可以确定它们存在,但他不能真正进入目录或列出它们的内容。

关于database - Ubuntu 网络服务器权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5578673/

相关文章:

database - 数据库中表和列的命名约定

database - 使用特殊字符的复杂查询

node.js - 安装(运行)国外 npm 模块有哪些风险?我们可以限制风险吗?

html - 如何告诉浏览器不要提供保存不正确的密码?

php - 在 ubuntu 上的 php 5.4.9 中使用 mysql_connect 清空 $_POST,Globals

java - 在 Ubuntu 中设置 Antlr CLASSPATH

database - 在 REST API 中的何处存储资源 URI

database - 在数据库列中存储分隔列表真的那么糟糕吗?

Node.js 和密码安全 : three questions

matlab - 为什么 fopen 第一次失败,但第二次工作?