Ubuntu 允许用户访问 root 的“屏幕”命令,同时限制他们可以附加到哪些屏幕

Ubuntu 允许用户访问 root 的“屏幕”命令,同时限制他们可以附加到哪些屏幕

我正在尝试允许某个用户连接到 root 用户拥有的屏幕。当另一个用户连接到 时"screen -ls",它会显示"No Sockets found in /var/run/screen/S-USERNAMEHERE"

除此之外,是否可以将用户限制在单个屏幕上?例如,我不想用户1附加到屏幕1,但我希望它们能够附着到屏幕2

谢谢,托比。

答案1

据我所知,您可以screen一次与一位用户共享。

为了实现此功能,您必须启用 SELinux,并且 screen 必须以suidroot 身份运行 - 这两者都是默认的

主持人

1. 创建会话

首先,创建一个新的屏幕会话:

$ screen -d -m -S session_name

附加到它:

$ screen -r session_name

2. 开启多用户支持

screen'; typeCtrl+a` 中输入

:multiuser on

或者在会话之外screen输入:

$ screen -S session_name -X multiuser on

3. 授予用户访问权限

在屏幕内,输入Ctrl+a并键入:

:acladd guest_username # the username to share your screen with

或者在会话之外screen输入:

$ screen -S session_name -X acladd guest_username

您可以以编程方式运行此行以授予用户列表的访问权限。

4. 分享会议信息

您可以与访客分享您的用户名<host_username>screen会话名称,以便他们可以连接。<session_name>

点击后,Ctrl+a d您可以离开会话而无需关闭screen

客人

有了访问权限、屏幕会话名称和主机用户名,访客就可以连接到屏幕会话:

screen -x host_username/session_name

访客现在应该可以访问主持人的screen会话

相关内容