Sudo
Appearance
Sudo 允許系統管理員委託權限,授予某些用戶(或用戶組)以 root 或其他用戶身份運行命令的能力,同時提供命令及其參數的審計跟蹤。
用法
為示例用戶 myuser 啟用 sudo。
users.users.myuser.extraGroups = [ "wheel" ];
通過簡單的配置,將允許屬於 wheel 組的所有用戶以超級用戶身份且無需提供該用戶的密碼使用 sudo 執行 extraRules 中指定的命令。
security.sudo = {
enable = true;
extraRules = [{
commands = [
{
command = "${pkgs.systemd}/bin/systemctl suspend";
options = [ "NOPASSWD" ];
}
{
command = "${pkgs.systemd}/bin/reboot";
options = [ "NOPASSWD" ];
}
{
command = "${pkgs.systemd}/bin/poweroff";
options = [ "NOPASSWD" ];
}
];
groups = [ "wheel" ];
}];
extraConfig = with pkgs; ''
Defaults:picloud secure_path="${lib.makeBinPath [
systemd
]}:/nix/var/nix/profiles/default/bin:/run/current-system/sw/bin"
'';
};