You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在OpenBSD中创建非管理员用户并实现类似Linux的root切换登录功能?

如何在OpenBSD中创建非管理员用户并实现类似Linux的root切换登录功能?

没问题,当然可以实现!OpenBSD的安全模型确实和Linux有点不一样,但我们有几种方法来满足你的需求——日常用权限最小的普通用户登录,需要时再切换到root权限。

第一步:创建普通非管理员用户

首先先创建你的普通用户,把your_user换成你想要的用户名:

useradd -m -s /bin/ksh your_user
  • -m 参数会自动创建用户的家目录
  • -s /bin/ksh 指定用户的默认shell,你也可以换成/bin/sh或者其他你习惯的shell
    之后记得给用户设置密码:
passwd your_user

方案一:通过su切换到root(需要加入wheel组)

OpenBSD默认只有wheel组的用户才能用su root切换到根用户,如果你习惯Linux里su的操作逻辑,可以把普通用户加入wheel组:

usermod -G wheel your_user

设置完成后,你用普通用户登录SSH后,执行su root并输入root密码,就能切换到root权限了。不过要注意,加入wheel组后用户就拥有了切换到root的权限,如果你想更严格地遵循最小权限原则,可以试试下面的方案。

方案二:用OpenBSD原生的doas工具(更推荐,无需加入wheel组)

OpenBSD自带了轻量且安全的doas工具,它是sudo的替代方案,能更灵活地控制权限,还不需要把用户加入wheel组。

  1. 首先编辑doas的配置文件:
vi /etc/doas.conf
  1. 在文件中添加一行,允许你的普通用户切换到root:
permit your_user as root

如果你只想让用户执行特定的root命令,也可以做更精细的配置,比如只允许执行包管理命令:

permit your_user as root cmd pkg_add
  1. 保存退出后,用普通用户登录时,执行下面的命令就能直接切换到root shell:
doas -s

输入用户自己的密码(不是root密码),就能获取root权限了。这种方式下,用户日常保持普通权限,只有需要时通过doas临时提升权限,更符合安全规范。

补充说明

OpenBSD默认限制wheel组用户才能su root是出于安全考虑,避免任意用户都能尝试切换到root。而doas是OpenBSD官方推荐的权限提升工具,配置更简洁、安全性也更高,所以更推荐用方案二来实现你的需求。

备注:内容来源于stack exchange,提问作者Emilien Vidal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.23 12:57:42