如何在Linux上锁定虚拟控制台会话

时间:2020-03-21 11:44:44  来源:igfitidea点击:

当我们在共享系统上工作时,我们可能不希望其他用户在控制台中潜行峰值以了解我们实际在做什么。
如果是这样,我知道一个简单的技巧来锁定自己的会话,同时仍然允许其他用户在其他虚拟控制台上使用该系统。
由于vlock,代表虚拟控制台锁,一个命令行程序,以锁定Linux控制台上的一个或者多个会话。
如有必要,我们可以锁定整个控制台并完全禁用虚拟控制台切换功能。
vlock特别适用于共享Linux系统,该系统具有多个具有访问控制台的用户。

安装vlock.

在基于ARC的系统上,vlock包默认预先安装的KPD包,因此我们不需要打扰安装。

在Debian,Ubuntu,Linux Mint上,运行以下命令以安装vlock:

$sudo apt-get install vlock

关于Fedora:

$sudo dnf install vlock

在Rhel,Centos:

$sudo yum install vlock

锁定Linux上的虚拟控制台会话

vlock的一般语法是:

vlock [ -acnshv ] [ -t <timeout> ] [ plugins... ]

其中:

  • a - 锁定所有虚拟控制台会话,
  • C锁定当前虚拟控制台会话,
  • n - 在锁定所有会话之前切换到新的空控制台,
  • s - 禁用Sysrq密钥机制,
  • t - 指定屏幕保护程序插件的超时,
  • H - 显示帮助部分,
  • v - 显示版本。

让我告诉你一些例子。

1.锁定当前控制台会话

在没有任何参数的情况下运行vlock时,它默认锁定当前控制台会话(TYY)。
要解锁会话,我们需要输入当前用户的密码或者root密码。

$vlock

我们还可以使用-c标志来锁定当前控制台会话。

$vlock -c

请注意,此命令只会锁定当前控制台。
我们可以按Alt + F2切换到其他控制台。
有关在TTY之间切换的更多详细信息,请参阅以下教程。

  • 在TTY之间切换而不使用Linux中的功能键

此外,如果系统有多个用户,则其他用户仍然可以访问它们各自的TTY。

2.锁定所有控制台会话

要同时锁定所有TTY,还禁用虚拟控制台切换功能,运行:

$vlock -a

再次,要解锁控制台会话,只需按Enter键并键入当前用户的密码或者root用户密码。

请记住,除非在编译时禁用,否则root用户始终可以随时解锁任何vlock会话。

3.在锁定所有控制台之前切换到新的虚拟控制台

在锁定所有控制台之前,还可以使vlock从x会话切换到新的空虚拟控制台。
为此,请使用-n标志。

$vlock -n

4.禁用SYSRQ机制

正如我们所知,Magic Sysrq密钥机制允许用户在系统冻结时执行一些操作。
因此,用户可以使用sysrq解锁控制台。
为了防止这种情况,通过-s选项禁用Sysrq机制。
请记住,如果给出了-a选项,则只能有效。

$vlock -sa

有关更多选项及其用法,请参阅"帮助部分"或者"人类页"。

$vlock -h
$man vlock

vlock阻止未经授权的用户获得控制台访问权限。
如果我们正在寻找一个简单的控制台锁定机制到Linux机器,Vlock值得检查!