Cib王不留行 2021-05-30 13:30 采纳率: 0%
浏览 81

selinux关于用户策略编写?以自己名字创2个用户,一个允许执行passwd,一个不能?

如何用以下要求写TE文件啊?

以自己名字创2个用户,一个允许执行passwd,一个不能

  • 写回答

1条回答 默认 最新

  • 神秘泣男子 运维领域优质创作者 2024-03-13 21:26
    关注

    在SELinux中,用户策略是通过TE(Type Enforcement)模块来定义的。下面是一个简单的例子,演示如何创建两个用户,一个允许执行'passwd
    创建TE模块文件:
    创建一个名为'custom_users.te

    module custom_users 1.0;
    
    require {
        type unconfined_t;
        type shadow_t;
        class passwd_exec_t;
    }
    
    # 允许执行passwd的用户类型
    type passwd_exec_user_t;
    # 不允许执行passwd的用户类型
    type no_passwd_exec_user_t;
    
    # 允许执行passwd的用户
    allow passwd_exec_user_t shadow_t:passwd_exec_t;
    
    # 不允许执行passwd的用户
    dontaudit no_passwd_exec_user_t shadow_t:passwd_exec_t;
    

    在这个例子中,我们定义了两个用户类型:'passwdno_passwd_exec_user_t,分别代表允许执行'passwdpasswd和不允许执行'passwdpasswd的用户。
    编译和加载TE模块:
    使用'checkmodulesemodule_package编译和加载TE模块:

    checkmodule -M -m -o custom_users.mod custom_users.te
    semodule_package -o custom_users.pp -m custom_users.mod
    semodule -i custom_users.pp
    

    创建两个用户:

    sudo useradd -Z passwd_exec_user_t user1
    sudo useradd -Z no_passwd_exec_user_t user2
    

    这样,'user1passwd_exec_user_t用户类型,允许执行passwd,而user2将属于no_passwd_exec_user_t用户类型,不允许执行passwd。

    评论

报告相同问题?

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵