4.4. 为非特权用户管理对非标准共享目录的访问


您可以通过查找和映射对应的 SELinux 文件类型,为通用非特权 SELinux 用户 user_u 配置对非标准共享目录的访问。user_u 用户具有默认角色 user_r 和默认域 user_t

先决条件

  • selinux-policy-docsetools-console 软件包已安装在您的系统中。

步骤

  1. 在终端中打开 user_selinux (8) 手册页:

    $ man user_selinux

    MANAGED FILES 部分中,找到与您的场景对应的属性或类型。例如,user_home_type 属性。

  2. 可选:要列出分配给属性的所有类型,请使用 seinfo 命令和 -x-a 选项,例如:

    $ seinfo -x -a user_home_type
    
    Type Attributes: 1
       attribute user_home_type;
    …
    	chrome_sandbox_home_t
    	config_home_t
    	cvs_home_t
    	data_home_t
    	dbus_home_t
    	fetchmail_home_t
    	gconf_home_t
    	git_user_content_t
    …
  3. 在找到相应类型的候选后,本例中的 data_home_t 类型会检查其 SELinux 映射:

    $ semanage fcontext -l | grep data_home_t
    …
    /root/\.local/share(/.*)?                          all files          system_u:object_r:data_home_t:s0
    …
  4. 将对应的类型映射到您要供 user_u 访问的目录,例如 /shared-data

    $ semanage fcontext -a -t data_home_t '/shared-data(/.*)?'

验证

  1. 检查您配置的目录的映射:

    # semanage fcontext -l | grep "shared-data"
    /shared-data(/.*)?                             	all files      	system_u:object_r:data_home_t:s0
  2. 以映射到 user_u SELinux 用户的 Linux 用户身份登录,并验证您可以访问该目录。

其他资源

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.