服务器 Gind.cn

服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器

如何确保docker主机不允许生根

我正在尝试使服务器上的docker更安全。 主要的问题是,大多数人都说“如果一个人可以访问泊坞窗,他们也可以是root”,对于一个pipe理员来说,这不是你想要的。 详细说一下,他们可以使用-v并将/etc挂载到容器中的/mnt上,并更改影子文件并获得对主机的访问权限。 他们可以使用-d或特权选项来做更多的事情。 所以基本上,有一些我想“尝试”和限制的东西。 卷绑定挂载 特权 –add-cap -d (某些项目?) 我的想法到目前为止: docker的bash脚本的别名,使用sudo和正则expression式,他们不应该做的。 打开远程api,保护它,也许反向使用nginx和正则expression式在nginx中代理它们不应该做的事情。 使用其他工具? Mesos /马拉松/群/船厂/无论 可选项是将容器提交给git代码,并让“检查器”validationDockerfile的内容并为其创build映像。 然后签署该图像并自动部署。 (但是这不会给他们太多的自由) 另外,删除绑定量并不是最好的。 如果我们有一个Dockerfile插件,说“你只能挂载在/data ,用户X”, Dockerfile中的USER是那个用户X,会更简单些。 像docker-novolume-plugin这样的东西对于卷来说已经是一个不错的开始,但是并不限制绑定卷。 最后问题是,我怎么让用户build立/拉/运行泊坞窗图像作为自己的用户/docker,不能根系统。 只要工作,就不一定是完美的。

为什么OpenVPN会给出中间证书的“不支持的证书目的”的错误?

编辑:我真的很抱歉,不得不说,这个问题魔术般地修复自己,我不知道为什么。 作为对其中一个答案的回应,我从CA链中删除了所有的EKU,但它不起作用。 休假回来后,我一次创build了证书链1, RootCA->VPN然后是RootCA->IntermediateCA->VPN ,最后是RootCA->IntermediateCA->ServerCA->VPN ,它仍然工作! 我不知道为什么这是工作,但我很激动。 只是为了确定这是解决EKU的问题,我回去了,把EKU随机添加到了CA的链中,然后瞧,它仍然有效……这是绝对令人愤慨的,我很抱歉所有试图帮助的人。 我发誓,绝对没有其他改变,没有人在我不在的时候触及任何东西。 结束编辑 当试图连接OpenVPN客户端(Android或Windows 7/10)到我的testing服务器时,我收到以下错误: VERIFY ERROR:深度= 1,错误=不支持的证书目的:C = CA,ST = QC,L =蒙特利尔,O =公司,OU = PKI,CN =服务器authentication中心 我在OpenBSD上运行OpenVPN 2.3.7。 我正在使用使用XCA创build的以下PKI CA层次结构: RootCA -> IntermediateCA -> ServerCA 我为我的ServerCA签署的VPN服务器创build了一个证书。 请注意深度= 1 。 这似乎不是最终的VPN服务器证书的问题。 OpenVPN正在抱怨VPN服务器证书的颁发者。 即使错误消息中的CN是ServerCA NOT的VPN服务器。 就我所能确定的,连锁中的CA没有任何其他目的而不是签署证书的要求。 这是VPN服务器的证书configuration。 请注意,根据OpenVPN的要求,旧的Netscape服务器扩展在那里: nsCertType=server, email extendedKeyUsage=serverAuth, nsSGC, ipsecEndSystem, iKEIntermediate keyUsage=digitalSignature, keyEncipherment, dataEncipherment, keyAgreement authorityKeyIdentifier=keyid, […]