子用户 - 一个帮助您在容器中安全且可移植地运行其他程序的程序。
项目描述
子用户 - 使用 Docker 保护 Linux 桌面
------------------------------------------ --------
.. image:: http://subuser.org/_static/images/subuser-logo.png
:target: http://subuser.org
`访问我们的 subuser.org <http:// /subuser.org>`_
作为自由软件开发者,我们喜欢分享。我们在网上冲浪并发现新代码。我们渴望尝试一下。我们过着爱与信任的狂欢,不怕我们从 Git 克隆的某些代码可能有错误或恶意。我们生活在 60 年代,无忧无虑的嬉皮士。
这是乌托邦。
但是共享代码并不安全。每次我们尝试一些陌生人的剧本时,我们都会把自己置于危险之中。尽管偶尔声称 Linux 是一个安全的操作系统,但随意共享程序并不安全。
此外,Linux 桌面的碎片化意味着打包工作是不必要的重复。在 Fedora 上构建和运行的程序必须为 Ubuntu 重新打包。
使用 Docker 的子用户同时攻击这两个问题。Docker 为您的程序运行提供了一个隔离且一致的环境。子用户使您的桌面程序可以访问它们正常运行所需的资源。
Subuser 将 Docker 容器变成普通的 Linux 程序:
---------------------------------------- -------------------
现在我正在 ``vim`` 中编辑这个文件。``vim`` 没有安装在我的电脑上。它安装在 docker 容器中。然而,为了编辑这个文件,我只需要输入::
$ vim README.md
Subuser 将一个 docker 容器变成一个普通程序。但是这个程序并没有完全特权。它只能访问调用它的目录,`不是我的整个主目录 <https://xkcd.com/1200/>`_。每个子用户都被分配了一组特定的权限,就像在 Android 中一样。您可以在下面看到一个示例 ``permissions.json`` 文件。
::
{
"description" : "一个网络浏览器。"
“维护者”:“蒂莫西霍布斯 <timothyhobbs (at) seznam dot cz>”
,“可执行”:“/usr/bin/firefox”
,“用户目录”:[“下载”]
,“gui”:{“剪贴板“:真,”
,"allow-network-access" : true
}
有关子用户支持的所有权限的列表,请参阅`子用户标准 <http://subuser.org/subuser-standard/permissions-dot-json-file-format。 html>`_.
安装
------------
系统要求
--------
* `Docker <http://www.docker.io/gettingstarted /#h_installation>`_ 1.3 或更高版本
* Python >= 3
* Git
* X11 和 xauth 实用程序(你几乎肯定有这个)
* sudo(如果你不想成为 docker 组的成员)
使用 pip3 安装: 稳定版
--------------------------------
1. 将自己加入 sudo 组(或 docker 组)。
::
$ sudo nano /etc/group
找到 ``sudo`` 并将你的用户名添加到行尾。
2. 从 pip3 安装子用户。
$ sudo pip3 install subuser
3. 将 ``~/.subuser/bin`` 添加到你的路径,方法是在 ``.bashrc 的末尾添加``PATH=$HOME/.subuser/bin:$PATH`` 行``文件。
4. 注销然后重新登录。
5. 完成!
从 git 安装:开发版
-------------------------------------
1. 将自己添加到` sudo` 组(如果您已经是 docker 组的成员,则不需要这样做)。
2.下载子用户仓库
::
$ cd
$ git clone https://github.com/subuser-security/subuser
3. 通过添加 PATH=$HOME/subuser/logic:$HOME/.subuser/bin:$PATH 行将 ``subuser/logic`` 和 ``~/.subuser/bin`` 添加到你的路径` 到你的 .bashrc 文件的末尾。
.. 注意:: 您需要将路径更改为“子用户/逻辑”以引用您下载子用户的位置。
4. 注销然后重新登录。
5. 完成!
要了解更多信息并阅读完整手册,请访问 `subuser.org <http://subuser.org>`_
------------------------------------------ --------
.. image:: http://subuser.org/_static/images/subuser-logo.png
:target: http://subuser.org
`访问我们的 subuser.org <http:// /subuser.org>`_
作为自由软件开发者,我们喜欢分享。我们在网上冲浪并发现新代码。我们渴望尝试一下。我们过着爱与信任的狂欢,不怕我们从 Git 克隆的某些代码可能有错误或恶意。我们生活在 60 年代,无忧无虑的嬉皮士。
这是乌托邦。
但是共享代码并不安全。每次我们尝试一些陌生人的剧本时,我们都会把自己置于危险之中。尽管偶尔声称 Linux 是一个安全的操作系统,但随意共享程序并不安全。
此外,Linux 桌面的碎片化意味着打包工作是不必要的重复。在 Fedora 上构建和运行的程序必须为 Ubuntu 重新打包。
使用 Docker 的子用户同时攻击这两个问题。Docker 为您的程序运行提供了一个隔离且一致的环境。子用户使您的桌面程序可以访问它们正常运行所需的资源。
Subuser 将 Docker 容器变成普通的 Linux 程序:
---------------------------------------- -------------------
现在我正在 ``vim`` 中编辑这个文件。``vim`` 没有安装在我的电脑上。它安装在 docker 容器中。然而,为了编辑这个文件,我只需要输入::
$ vim README.md
Subuser 将一个 docker 容器变成一个普通程序。但是这个程序并没有完全特权。它只能访问调用它的目录,`不是我的整个主目录 <https://xkcd.com/1200/>`_。每个子用户都被分配了一组特定的权限,就像在 Android 中一样。您可以在下面看到一个示例 ``permissions.json`` 文件。
::
{
"description" : "一个网络浏览器。"
“维护者”:“蒂莫西霍布斯 <timothyhobbs (at) seznam dot cz>”
,“可执行”:“/usr/bin/firefox”
,“用户目录”:[“下载”]
,“gui”:{“剪贴板“:真,”
,"allow-network-access" : true
}
有关子用户支持的所有权限的列表,请参阅`子用户标准 <http://subuser.org/subuser-standard/permissions-dot-json-file-format。 html>`_.
安装
------------
系统要求
--------
* `Docker <http://www.docker.io/gettingstarted /#h_installation>`_ 1.3 或更高版本
* Python >= 3
* Git
* X11 和 xauth 实用程序(你几乎肯定有这个)
* sudo(如果你不想成为 docker 组的成员)
使用 pip3 安装: 稳定版
--------------------------------
1. 将自己加入 sudo 组(或 docker 组)。
::
$ sudo nano /etc/group
找到 ``sudo`` 并将你的用户名添加到行尾。
2. 从 pip3 安装子用户。
$ sudo pip3 install subuser
3. 将 ``~/.subuser/bin`` 添加到你的路径,方法是在 ``.bashrc 的末尾添加``PATH=$HOME/.subuser/bin:$PATH`` 行``文件。
4. 注销然后重新登录。
5. 完成!
从 git 安装:开发版
-------------------------------------
1. 将自己添加到` sudo` 组(如果您已经是 docker 组的成员,则不需要这样做)。
2.下载子用户仓库
::
$ cd
$ git clone https://github.com/subuser-security/subuser
3. 通过添加 PATH=$HOME/subuser/logic:$HOME/.subuser/bin:$PATH 行将 ``subuser/logic`` 和 ``~/.subuser/bin`` 添加到你的路径` 到你的 .bashrc 文件的末尾。
.. 注意:: 您需要将路径更改为“子用户/逻辑”以引用您下载子用户的位置。
4. 注销然后重新登录。
5. 完成!
要了解更多信息并阅读完整手册,请访问 `subuser.org <http://subuser.org>`_