비밀번호 없이 sudoers 파일에 대한 권한을 복원하는 방법은 무엇입니까?

비밀번호 없이 sudoers 파일에 대한 권한을 복원하는 방법은 무엇입니까?

전체 내용:

RHEL 7.1을 실행하는 Amazon EC2 "계층"(VPS)을 시작하고 SSH 키를 생성했습니다.

EC2는 새 Rhel VPS에 대해 ec2-user라는 사용자를 자동으로 생성하며 이 사용자는 sudoers 파일에 다음과 같은 권한을 갖습니다.

ec2-user    ALL = NOPASSWD: ALL

"e"(비밀번호 포함)라는 새 사용자를 생성하고 이를 sudoers 파일에 추가해 보았습니다.

VI를 사용하여 /etc/sudoers 파일을 편집하려고 하면 파일이 읽기 전용이라는 메시지가 표시되어 권한을 600으로 변경했는데 이제 "sudo" 명령으로 작업을 시도할 때마다 오류가 발생합니다. :

sudo: /etc/sudoers is world writable
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin

루트가 필요하고 "sudo"할 수 없기 때문에 다시 440으로 변경할 수 없습니다.

솔루션이 실행되는 것이라고 어딘가에서 읽었습니다.

pkexec chmod 0440 /etc/sudoers

하지만 비밀번호가 없는 ec2 사용자에게 비밀번호를 입력하라고 요청합니다.

==== AUTHENTICATING FOR org.freedesktop.policykit.exec ===
Authentication is needed to run `/usr/bin/chmod' as the super user
Authenticating as: Cloud User (ec2-user)
Password: 

polkit-agent-helper-1: pam_authenticate failed: Authentication failure
==== AUTHENTICATION FAILED ===
Error executing command as another user: Not authorized

This incident has been reported.

우리는 지금 무엇을해야합니까? sudoers 파일 440 agin을 만드는 방법을 아는 사람이 있습니까?

답변1

예 - 이것은 확실히 "함정"입니다. visudo이 문제는 나중에 사용하면 피할 수 있습니다. 저는 RHEL7과 본질적으로 동일한 CentOS 7 가상 머신을 가지고 있습니다. 루트 비밀번호를 알고 있기 때문에 su -이를 사용하지 않고도 루트가 될 수 있습니다. sudo루트 사용자의 비밀번호를 알고 계십니까?

답변2

일반적으로 이는 Amazon이 사용자에게 sudo편리하게 sudo 권한을 제공하기 때문에 EC2 인스턴스에 대한 권한을 높이는 유일한 방법입니다 ( ). 대부분의 사람들이 미리 정의된 사용자를 사용하기 때문에 ec2-user암호를 설정하는 데 어려움을 겪는 사람은 거의 없을 것입니다 . root이것이 바로 이 질문입니다.

이 머신을 복원하는 방법은 다음과 같습니다.

  • 기계를 끄세요
  • "/"손상된 머신에서 디스크를 분리합니다(어떤 장치인지 기억하세요 ) /dev/sda1.
  • 디스크를 작업자 머신에 연결합니다(이렇게 하면장비)
  • mount작업자 컴퓨터의 디스크(사용장비)
  • 권한 수정( sudo업무용 컴퓨터에 대한 권한이 있음)
  • umount디스크
  • 작업 중인 기계에서 제거하고 손상된 기계에 다시 부착합니다.
  • 작업 기계를 시작

여러 대의 머신을 보유하는 것이 도움이 되지만, 수리에 머신이 하나만 필요한 경우에도 약 1시간 안에 생성, 사용, 삭제가 가능합니다.

추가 자료:

답변3

인스턴스에 중요한 내용이 포함되어 있지 않으면 학습 경험으로 삼은 다음 버리고 다시 시작하는 것이 좋습니다. 수정해야 한다면 인스턴스를 종료하고 디스크 이미지를 저장한 후 다른 인스턴스에 마운트하고 권한을 수정하면 됩니다.

답변4

루트 사용자가 활성화된 경우 "su" 명령 또는 "login root" 명령을 사용하여 루트 쉘에 들어갑니다. 그럼 시도해봐

chmod 440 /etc/sudoers 

관련 정보