• 如何在Linux中使用Firejail运行应用程序


    有时您可能希望使用在不同环境中未经过良好测试的应用程序,但您必须使用它们。在这种情况下,关注系统的安全性是正常的。在Linux中可以做的一件事是在沙箱中使用应用程序。

    “沙盒”是在有限环境中运行应用程序的能力。这样,应用程序就可以提供运行所需的大量资源。由于名为Firejail的应用程序,您可以安全地在Linux中运行不受信任的应用程序。

    Firejail是一个SUID(设置所有者用户ID)应用程序,它通过使用Linux命名空间和seccomp-bpf限制不受信任程序的运行环境来减少安全漏洞的暴露。

    它使一个进程及其所有后代拥有自己的全局共享内核资源的秘密视图,例如网络堆栈,进程表,挂载表。

    Firejail使用的一些功能:

    • Linux名称空间
    • 文件系统容器
    • 安全过滤器
    • 网络支持
    • 资源分配

    有关Firejail功能的详细信息,请参阅官方页面。

    如何在Linux中安装Firejail

    可以使用git命令从项目的github页面下载最新的软件包来完成安装,如图所示。

    linuxidc@linuxidc:~/www.linuxidc.com$ git clone https://github.com/netblue30/firejail.git
    正克隆到 'firejail'...
    remote: Enumerating objects: 23, done.
    remote: Counting objects: 100% (23/23), done.
    remote: Compressing objects: 100% (18/18), done.
    remote: Total 38395 (delta 11), reused 11 (delta 5), pack-reused 38372
    接收对象中: 100% (38395/38395), 9.82 MiB | 87.00 KiB/s, 完成.
    处理 delta 中: 100% (30820/30820), 完成.
    linuxidc@linuxidc:~/www.linuxidc.com$ cd firejail
    linuxidc@linuxidc:~/www.linuxidc.com/firejail$ ./configure && make && sudo make install-strip
    checking for gcc... gcc
    checking whether the C compiler works... yes
    checking for C compiler default output file name... a.out
    checking for suffix of executables...
    checking whether we are cross compiling... no
    checking for suffix of object files... o
    

    如何在Linux中使用Firejail运行应用程序如何在Linux中使用Firejail运行应用程序

    如果您的系统上没有安装git,可以使用以下命令安装它:

    $ sudo apt install git  [在 Debian/Ubuntu]
    # yum install git       [在 CentOS/RHEL]
    # dnf install git       [在 Fedora 22+]
    

    安装firejail的另一种方法是下载与Linux发行版相关联的软件包,并使用其软件包管理器进行安装。 可以从项目的SourceForge页面下载文件。 下载文件后,可以使用以下命令安装:

    $ sudo dpkg -i firejail_X.Y_1_amd64.deb   [在 Debian/Ubuntu]
    $ sudo rpm -i firejail_X.Y-Z.x86_64.rpm   [在 CentOS/RHEL/Fedora]

    如何在Linux中使用Firejail运行应用程序

    您现在可以使用firejail运行应用程序了。 这是通过启动终端并在您希望运行的命令之前添加firejail来实现的。

    下面是一个例子:

    如何在Linux中使用Firejail运行应用程序如何在Linux中使用Firejail运行应用程序

    $ firejail firefox    #启动 Firefox网络浏览器
    $ firejail vlc        # 启动 VLC 播放器

    创建安全配置文件

    Firejail包含许多针对不同应用程序的安全配置文件,它们存储在:

    /etc/firejail
    

    如果您从源代码构建项目,则可以在以下位置找到配置文件:

    # path-to-firejail/etc/
    

    如果您使用了rpm/deb软件包,则可以在以下位置找到安全配置文件:

    /etc/firejail/
    

    用户应将其配置文件放在以下目录中:

    ~/.config/firejail
    

    如果要扩展现有安全配置文件,可以使用包含配置文件路径的include,然后添加行。 这应该是这样的:

    $ cat ~/.config/firejail/vlc.profile
    
    include /etc/firejail/vlc.profile
    net none
    

    如果您希望限制应用程序访问某个目录,您可以使用黑名单规则来实现这一目标。 例如,您可以将以下内容添加到安全配置文件中:

    blacklist ${HOME}/Documents
    

    实现相同结果的另一种方法是实际描述您希望限制的文件夹的完整路径:

    blacklist /home/user/Documents
    

    您可以通过许多不同的方式配置安全配置文件,例如禁止访问,允许只读访问等。如果您有兴趣构建自定义配置文件,可以查看以下firejail说明。

    对于想要保护系统的安全用户来说,Firejail是一个很棒的工具。

  • 相关阅读:
    Linux pytorch安装 cuda,torch,torchvision版本选择
    R 语言 缺失值处理并使用SMOTE处理不平衡数据集
    Unable to fit model using “lrm.fit” in R
    Linux系统安装软件(搜狗拼音,teamviewer等)
    win10+anaconda3+pytorch安装
    支持向量机理论+R语言实现
    算法学习:给定一个序列求最大子序列的和
    13 HTTP传输大文件的方法
    12 HTTP的实体数据
    11 HTTP的特点,优点和缺点
  • 原文地址:https://www.cnblogs.com/linuxprobe-sarah/p/10535202.html
Copyright © 2020-2023  润新知