修改 pam 模块后失去 sudo 的能力

修改 pam 模块后失去 sudo 的能力

在我们的一台 RHEL6 服务器上,我对 /etc/pam/d/system-auth 和 password-auth 进行了更改,然后在重新启动后失去了 sudo 和 su 的能力。具体来说,我改变了这一行:

auth        sufficient      pam_unix.so  try_first_pass

对此:

auth        optional      pam_unix.so  try_first_pass

我仍然可以 ssh 到服务器并使用标准用户帐户登录,但我无权对任何文件进行任何更改,因此我可以撤消此操作。此服务器也是 VM。我能做什么吗?有什么 PAM 技巧吗?

答案1

如果您已将自己锁定在根帐户之外,则需要使用物理访问权限。有两种方法:

  • 重新启动系统。在引导加载程序(例如 Grub)的提示下,请求 root shell。您可能需要按一个键才能出现引导加载程序提示符;对于 Grub,您通常需要按住Shift。编辑内核命令行,即以 开头的行linux,添加init=/bin/sh到末尾。启动,您将获得 root shell。使用它来修复任何需要修复的配置文件。此方法需要访问控制台和未锁定的引导加载程序。
  • 关闭系统电源。取出硬盘,插到另一台机器上,挂载系统分区。编辑需要修复的任何配置文件。此方法需要访问计算机的存储空间。

由于您的系统在虚拟机中运行,因此“物理”访问实际上是对运行虚拟机的主机系统上的帐户的访问。重新启动和访问控制台是物理情况的简单模拟。可以使用虚拟机软件来访问磁盘。以下是一些方法:

相关内容