Distributions
› Ubuntu
› Fedora
› CentOS
中文资源站
› 网易开源镜像站
TossPig
V2EX  ›  Linux

Linux 系统中可以限制 root 的权限?

  •  
  •   TossPig · Nov 15, 2023 · 5523 views
    This topic created in 1083 days ago, the information mentioned may be changed or developed.

    又到一年等保季,又是这种狗屁倒灶的事情,前年查我 HTTP 方法

    今年给了新课题,当前服务器仅有 root 账户,无安全管理员、审计管理员,未实现管理用户的权限分离。而且标记为高风险必须整改!

    最后给出的修改建议是,把 root 用户改名,再新建两个用户去权限分离

    ???

    root 改名了,还能改掉UID=0?这种脱了裤子放屁的事为什么要做?

    还是说这样有什么特别意义?感恩有懂得大佬指教一下啊

    36 replies  •  2023-11-16 16:41:26 +08:00
    cheng6563
    cheng6563
    Nov 15, 2023❤️1
    1
    等保就是这样的啊,他说啥是啥就行了
    johnidy
    johnidy
    Nov 15, 2023
    2
    应试,让怎么改就怎么改,给 pass 就行。
    tf2
    tf2
    Nov 15, 2023
    3
    你新建一个 not_root 加入到 sudoer 禁止 root 登录不就整改完毕了?
    cheng6563
    cheng6563
    Nov 15, 2023
    4
    之前给出一堆运维电脑的整改要求,洋洋洒洒好几页,然而我们运维用的 mac ,就说 mac 已经够安全了什么都不用做。
    iminto
    iminto
    Nov 15, 2023
    5
    当前服务器仅有 root 账户,通常来说确实不合规,也不合理。

    root 的权限也可以限制啊,selinux 不就是嘛,不过是限制了后 root 可以自己解开。
    cheng6563
    cheng6563
    Nov 15, 2023
    6
    服务器也是全容器管理的,就在安装 k8s 时登录过一下,之后服务器就没登录过,还不是得把什么劳什子审计管理员用户建出来
    TossPig
    TossPig
    OP
    Nov 15, 2023❤️1
    7
    @cheng6563 说到 mac 让我想起了数据库也是,mysql 就需要这调整那修改的,pgsql 不会测就是安全。我们是私有部署,服务器是客户的,他们根本没 k8s

    @johnidy 就很讨厌这种无意义的行为

    @lambdaq 他们测试的时候都是要求 root 权限

    @iminto 实际情况是就一个很边缘的系统,两三年都不会进操作系统一次,

    还有一个讨厌的东西要求 90 天更换所有数据库密码,数据库端口都没外放。。。。

    现在直接用定时脚本改,需要密码的时候再去看配置文件中的密码
    defunct9
    defunct9
    Nov 15, 2023
    8
    真想抽死这帮人,满嘴胡说八道,把 root 改掉,系统还跑的起来么。
    NotFoundEgg
    NotFoundEgg
    Nov 15, 2023
    9
    root 用户改名这个操作真是秀到了
    ruanimal
    ruanimal
    Nov 15, 2023
    10
    SELinux ?
    liuliancao
    liuliancao
    Nov 15, 2023
    11
    搭建个 Jumpserver 吧 配置下用户看看
    euph
    euph
    Nov 15, 2023 via Android
    12
    上面本意是好的,只是下面的人执行歪了(狗头)
    julyclyde
    julyclyde
    Nov 15, 2023
    13
    仅有 root 肯定有问题啊
    后台服务不应该用 root 身份运行
    你应该单独建一个服务用户

    至于说把 root 改名……这建议过于业余
    dengshen
    dengshen
    Nov 15, 2023 via iPhone
    14
    你不能用 Ubuntu 啊我们要求使用 Linux 🐶
    x1aoYao
    x1aoYao
    Nov 15, 2023
    15
    @julyclyde 是的。而且登录也一般是普通账户登录,登录之后再切 root 都可以。
    error451
    error451
    Nov 15, 2023❤️1
    16
    无安全管理员、审计管理员,未实现管理用户的权限分离
    这个是等保的常见项目啊, 等保天天都在做这玩意。

    但是这个整改的方案都是新增审计用户,开启审计,新增安全管理员,新增普通用户, 然后禁止 root ssh 登录(用普通用户登录,然后 su root 这样是不违规的) 这个方案

    头一回听说要求改 root 用户的。

    请问这是哪一家逗 B 提供的方案?

    说出来好让大家以后避坑啊。
    julyclyde
    julyclyde
    Nov 15, 2023
    17
    @x1aoYao su 命令、sudo 命令、setuid 函数都是用 uid 来表示的,其实 root 用户叫啥名字是无所谓的
    大概能扛一些 login/sshd 的攻击?
    julyclyde
    julyclyde
    Nov 15, 2023
    18
    @error451 要求改 root 用户的审计供应商其实不少
    不知道这个行业怎么能,从行业刚兴起就这么烂
    TossPig
    TossPig
    OP
    Nov 15, 2023
    19
    @julyclyde 服务器上装了宝塔的,默认应用服务是 www 用户在跑,系统是 debian 12 怎么都不可能只有 root 用户

    中间还有个坑,要求 root 也要密码过期,但是我给的是密钥登录,测试的人不会制作密钥,临时开启了密码登录,然后把密码相关都列为非检测项🐶
    TossPig
    TossPig
    OP
    Nov 15, 2023
    20
    真的就我遇到的等保公司,没有一家的测试人员会制作 ssh 密钥🐶
    billlee
    billlee
    Nov 15, 2023
    21
    @iminto SELinux 只是默认策略不限制 root, 真要限制 root 也是解不开的。它的权限体系和基于用户那套是平行的
    IvanLi127
    IvanLi127
    Nov 15, 2023 via Android
    22
    众所周知,搞等保并不是为了安全。
    不过感觉找个有脑子的测评机构至少不会花钱买恶心,有些机构钱真特喵好赚
    lanlanye
    lanlanye
    Nov 15, 2023
    23
    我之前还遇到一个"使用高权限用户的 Token 可以访问高权限的接口"。
    怎么?难道要我给你做个生物识别?
    duzhuo
    duzhuo
    Nov 15, 2023
    24
    @TossPig 这样还能考别人的吗,还在上学的我大开眼界
    yanqiyu
    yanqiyu
    Nov 15, 2023
    25
    @billlee 倒不是默认不限制
    只是默认情况下用户的登录会话都不限制

    [root@karubook]~# id -Z
    unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023

    但是对于作为服务启动的程序而言:
    [root@karubook]~# systemd-run --shell --collect --quiet
    [root@karubook]~# id -Z
    system_u:system_r:initrc_t:s0

    虽然还是 root ,但是就受到了 system_u:system_r:initrc_t 这一属性的约束

    要限制传统登录上来的要 semanage ,但是很容易翻车(把自己权限改没了改不回去了)
    yanqiyu
    yanqiyu
    Nov 15, 2023
    26
    毕竟要限制登录上来的 root 的权限,你就要把登录上来的 root 用户设置成不能修改 SELinux 状态...然后改错了就除非设置 kargs 重启不让恢复不了了;)
    ruanimal
    ruanimal
    Nov 15, 2023
    27
    提供一个想法,应该可以糊弄过去
    在 bashrc 里面做一些检测,当识别到 ssh 登陆 root 时,做一些特定的配置(比如屏蔽一些命令)。
    zzznow
    zzznow
    Nov 15, 2023❤️1
    28
    应该是禁止 root 用户直接登录或远程。平常使用普通用户
    inframe
    inframe
    Nov 15, 2023
    29
    合规而已,适当地糊弄一下算了。这看起来对面也不大专业啊
    SunZm
    SunZm
    Nov 16, 2023
    30
    走个形式而已, 不用太较真, 简单点, 建三个新用户, 然后说给他们权限分离了, 问 root 就说禁了, 他们检查的也是工作而已, 并不会特别较真...
    cwcc
    cwcc
    Nov 16, 2023
    31
    作业指导书的问题,这个问题是从 1.0 延续过来的,2.0 的作业指导书其实已经更新了,但是很多人就还是习惯性的老一套。你可以和他们谈,如果他们不懂,那就是他们不懂。另外,权限没有分离根本判不了高风险,瞎判。
    msg7086
    msg7086
    Nov 16, 2023
    32
    装宝塔搞等保,你在期待什么。
    DeWjjj
    DeWjjj
    PRO
    Nov 16, 2023
    33
    创个新账户叫 administer=>删掉 root=>就行了吧。
    devopsdogdog
    devopsdogdog
    Nov 16, 2023 via Android
    34
    等保实施人员压根不动技术,都是照本宣科,讨论不了,就改吧,后面恢复就是了
    lyxxxh2
    lyxxxh2
    Nov 16, 2023
    35
    我也是这样做的

    1. 新建两个用户并设置密码
    2. 把用户 a 设置为 root 权限, 编辑 `/etc/passwd` `user_a:x:0:0::/home/user_a:/bin/bash`
    3. 禁用 root 密码, 编辑 `/etc/shadow`, `root:!!$6$JDiFFDS....`

    最后就是:
    root 不可能登录的了
    user_a 有 root 权限
    user_b 运行项目用的
    96368a
    96368a
    Nov 16, 2023
    36
    等保公司的安服仔来说一句,我公司的等保测评人员都是其他行业转过来的,例如会计和商务之类的,表示这种事情见怪不怪
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1485 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 69ms · UTC 23:22 · PVG 07:22 · LAX 15:22 · JFK 18:22
    ♥ Do have faith in what you're doing.