# ws_usernode 节点专有用户 sudoers 白名单(生产部署) # # 安装:将本文件复制为 /etc/sudoers.d/usernode 并执行 `visudo -c` 校验。 # 节点进程以 usernode 用户运行,仅允许以 root 执行固定命令(禁任意 shell), # 命令参数由程序内强校验(pkg.ValidateSystemAccount 等),见 PLAN §9。 # # 注意:以下命令路径基于 Debian/Ubuntu(/usr/sbin、/usr/bin、/bin)。 # Alpine 为 /usr/sbin、/usr/bin、/bin;请按发行版调整,并确保 usernode # 用户无 NOPASSWD 的通用提权入口。 usernode ALL=(root) NOPASSWD: /usr/sbin/useradd, /usr/sbin/usermod, \ /usr/sbin/userdel, /usr/bin/passwd, \ /bin/mkdir, /bin/chmod, /bin/chown, /usr/bin/install # 说明: # - useradd -m -d -s -g external 创建账号 # - usermod 预留(如 usermod -e 过期),M4 回收期使用 # - userdel -r 删除账号及家目录 # - passwd -l / -u 锁定/解锁口令 # - mkdir -p / chown / chmod:创建并修正 ~/.ssh 目录属主(sshd StrictModes) # - install -o -g external -m 0600 :authorized_keys 原子落位 # - 不授予 chsh/其他命令的任意执行;若需变更默认 shell 请收紧为固定参数 # # 生产禁止 system.sudo=false 的 direct 模式:必须显式配置 # [system] # sudo = true # dry_run = false