FreeBSD如何为用户设置sudo权限?

在FreeBSD系统中,如何授予用户sudo权限?
如何删除用户的sudo权限?

在FreeBSD服务器上安装sudo

Sudo是一个程序,用于授予用户一定的root特权并记录root活动。

在FreeBSD系统中,可以使用port安装sudo:

# cd /usr/ports/security/sudo/ && make install clean

或者直接使用二进制包安装:

# pkg install security/sudo

授予FreeBSD用户sudo权限

配置文件位于/etc/sudoers/usr/local/etc/sudoers中,
默认情况下为只读。
必须使用visudo命令修改配置文件。不能直接vi修改。

向sudoers添加用户名

$ su -
# visudo

添加下面内容

jack All=(ALL) ALL

我们为用户jack授予了sudo权限。
jack执行sudo命令行时,会提示它输入密码。

如果想跳过密码输入部分,那么将上面行改成:

jack ALL=(ALL) NOPASSWD: ALL

下面的配置只允许jack以utom的身份对服务器tom执行命令/bin/ls:

jack server1=(tom) /bin/ls  /home/utom

每次sudo的日志都会记录在/var/log/messages文件中。

sudo用户可以使用sudo命令提权为root用户:

[jack@hostname~]$ sudo su -

或者

[jack@hostname~]$ sudo -s

或者,以root用户身份执行命令:

[jack@hostname ~]$ sudo whoami

或者,以其他用户身份执行命令:

[jack@hostname ~]$ sudo -u bob ls /home/bob

从sudoers删除用户名

要删除某个用户的特权,那么将其从sudoers配置文件中删除。

执行visudo命令,
然后删除用户对应的行:

jack ALL=(ALL) NOPASSWD: ALL

或者

jack All=(ALL) ALL
日期:2019-11-20 08:53:39 来源:oir作者:oir