如何“安全”允许其他人在我的服务器上工作?

时间:2015-07-05 00:09:26

标签: linux apache server virtual-machine

我有时需要付钱给别人来执行一些超出我专业知识的编程。有时候某人是我可能不知道的人。

我目前需要的是配置恰好在Centos上运行的Apache。

在我的主物理服务器上通过SSH提供root访问权限不是一种选择。

我有什么选择?

一种想法是使用virtualbox(或相等)在我的主物理服务器(操作系统为Linux)上创建VPS(guest虚拟机作为Linux),让他们完成工作,弄清楚他们做了什么,并手动实现更改我的自我。

似乎安全吗?也许更好的选择?谢谢

2 个答案:

答案 0 :(得分:1)

我建议查看chroot命令。 chroot() changes the root directory of the calling process to that specified in path. This directory will be used for pathnames beginning with /. The root directory is inherited by all children of the calling process.

这一点的含义是,一旦进入chroot" jail"用户无法看到"外部"监狱您已更改其根文件。您可以包含自定义二进制文件,或者根本不包含自定义二进制文件(我不明白您为什么要这样做,但请注意您决定开发人员能够并且无法看到的内容。)

我们可以使用chroot的目录,或者你可以使用我个人的最爱:一个已安装的文件,所以你的" jail"很容易携带。

不幸的是我是Debian用户,我会使用  debootstrap为一个小文件(比如5GB)构建一个最小系统,但似乎并不是官方的RPM等价物。但是这个过程相当简单。创建一个文件,我会使用dd if=/dev/zero of=jailFile bs=1M count=5120。然后我们可以mkfs.ext4 jailFile。最后,我们必须安装并包含我们希望被监禁用户使用的任何文件(这是debootstrap所做的。它可以手动或使用工具下载/ bin中的所有默认好东西。

完成这些步骤后,您可以复制此文件,进行备份或移动服务器。在用户方面几乎没有任何努力。

通过简短的谷歌搜索,似乎有第三方工具与debootstraphere几乎完全相同。如果您愿意编译此工具,可以手动构建最小系统,或者可以找到替代方案;便携式ext4监狱的想法对你很有吸引力,我建议采用这种方法。

如果这个想法没有吸引力,你可以随时chroot一个非常简单的目录。

以下是chroot上的一些很棒的链接:

https://wiki.archlinux.org/index.php/Change_root

https://wiki.debian.org/chroot

http://www.unixwiz.net/techtips/chroot-practices.html

此外,herehere是关于在OpenSSHServer中使用chroot的重要链接。

旁注:我不认为这个问题不合适,但如果你认为这里的答案不充分,你也可以随时询问https://serverfault.com/

答案 1 :(得分:0)

控制权限是Linux世界核心的魔力。

你...... 可以将个人添加为非root用户,然后努力提供对您希望他处理的文件的特定访问权。

这样做需要相当多的“nixing”才能做到正确。

当然,这是一条路线...如果用户正在编辑类似Apache配置文件的内容,为什么不在私有bitbucket或github存储库中设置文件?

通过这种方式,您可以看到所做的更改,确认它们是合适的,然后在闲暇时将它们投入生产。