내 동료 중 한 명이 오류 etc/passwd 및 etc/shadow 파일로 인해 제거되었습니다.
문제는 이제 시스템에 계정이 없다는 것입니다. SSH로 연결하거나 작업할 수 없습니다.
루트 계정을 어떻게 만들 수 있나요?
답변1
물리적으로 액세스할 수 있는 경우 rw init=/bin/bash와 같은 커널 라인을 사용하여 재부팅할 수 있습니다. 이렇게 하면 사용자 계정을 다시 만들 수 있는 루트 액세스 권한이 부여됩니다.
답변2
답변3
기존 루트셸이 열려 있지 않으면 BIOS나 부트로더 액세스 없이 이 문제를 해결할 수 있을지 의문입니다.
그 시점에서 두 가지 옵션이 있습니다.
- 라이브 CD를 부팅합니다.
- init=/bin/sh를 사용하여 설치된 시스템에서 부팅한 다음 수동으로 네트워크를 시작합니다.
어느 것이 더 쉬운지는 특정 상황에 따라 달라집니다.
기존 루트 셸이 열려 있으면 이를 사용할 수 있습니다.
이제 파일을 생성하는 방법이 생겼습니다. 다음 질문은 거기에 무엇을 넣을 것인가입니다. 데비안에는 여러 범주의 사용자가 있습니다(데비안 정책 9.2.2).
- 특정 Debian 릴리스에 대해 항상 존재하는 고정 ID(UID 0-99 및 65534)를 가진 시스템 사용자
- 동적으로 할당된 ID(UID 100-999)를 가진 시스템 사용자
- 일반 사용자(UID 1000-59999, 사용자 수가 엄청나게 많은 시스템은 65536-4294967293도 사용할 수 있음)
- 고정 ID가 있지만 요청 시에만 생성되는 시스템 사용자(UID 60000-64999)
첫 번째 단계는 첫 번째 범주의 사용자를 복원하는 것입니다. 동일한 데비안 릴리스를 실행하는 다른 시스템에서 비밀번호와 섀도우 항목을 복사하면 가장 쉽게 수행할 수 있습니다.
그룹 파일도 삭제한 경우 동일한 ID 범위가 적용됩니다.
기본 사항이 복원되면 다른 사용자를 다시 생성할 수 있습니다. /home을 검색하는 일반 사용자의 경우 어떤 사용자가 어떤 UID를 사용하는지에 대한 단서를 제공해야 합니다. 시스템 사용자의 경우 식별되지 않은 소유자가 있는 파일을 검색한 다음 동일한 소프트웨어가 설치된 다른 시스템을 조사하여 해당 파일을 소유해야 하는 사용자가 누구인지 파악하는 등 파악하는 데 더 많은 노력이 필요할 수 있습니다.