본문 바로가기
IT/Linux_리눅스

[Linux]RHEL/CentOS 에서 분실한 root 패스워드 재설정, 복구하기

by 능보테 2021. 3. 11.
728x90
반응형

안녕하세요. 이번 포스팅에서는 RHEL, CentOS 환경에서 root 패스워드를 분실했을때 어떻게 이를 다시 복구할 수 있는가에 대해서 알아보겠습니다.

 

 


 

0. Root 패스워드 복구(RHEL, CentOS)

만약 사용중인 리눅스의 root 패스워드를 분실했다면 이를복구하는 것도 시스템 엔지니어의 중요한 능력, 작업 중의 하나일 것입니다.

 

시스템 관리자가 root로 로그인 되어있는 상황이나 sudo 에 전체 액세스 권한이 있는 사용자로 로그인이 되어있다면 이런 작업은 간단하게 진행할 수 있습니다.

 

그렇지만 만약 이러한 계정들로 로그인 되어있지도 않고 아예 시스템에 접속을 못하고 있는 상황이라면 조금 복잡해집니다.

 

여기서는 CD와 같은 외부 미디어를 사용하여 설정하는 방법이 아닌
시스템 자체에서 설정하는 방법을 써보려합니다.

 

 


 

1. 복구 방법 및 과정

제가 CentOS7 리눅스를 사용하고 있기 때문에 해당 리눅스를 기준으로 방법을 설명합니다.

복구 절차를 먼저 간략하게 나열하면 아래와 같습니다.

 

1.시스템재부팅
2.GRUB에서 패스워드 초기화가 필요한 항목으로 이동 후 e키를 눌러 항목 편집 모드
3.'linux16'으로 시작하는 행 끝에 rd.break 추가
4.'ctrl+x' 로 재부팅
5.(프롬프트가 switch-root로 바뀜) "mount -o rw, remount /sysroot" 입력
6."chroot /sysroot" 입력
7.passwd 명령어로 root 패스워드 변경 (프롬프트가 sh-4.2# 으로 바뀜)
8."touch /.autorelabel" 입력
9.exit 두번 입력
10.재부팅

그럼 위의 순서대로 차례로 진행해보겠습니다.

 

1. 시스템 재부팅

시스템 재부팅을 통해 GRUB 화면으로 이동합니다.


2. GRUB에서 패스워드 초기화가 필요한 항목으로 이동 후 e키를 눌러 항목 편집 모드

아래와 같은 화면으로 이동합니다.


3. 'linux16'으로 시작하는 행 끝에 rd.break 추가

편집 화면에서 아래로 조금 내려오면 'linux16'이라고시작하는 행이 있습니다.
해당 행의 끝에 'rb.break'를 입력합니다.


4. 'ctrl+x' 로 재부팅

5. (프롬프트가 switch-root로 바뀜) "mount -o rw, remount /sysroot" 입력

위의 작업들을 완료하고 재부팅을 하게되면 아래와 같이 프롬프트가 'switch-root'로 바뀌게 됩니다.
이 창에서 "mount -o rw,remount /sysroot" 를 입력합니다.


6. "chroot /sysroot" 입력


7. passwd 명령어로 root 패스워드 변경 (프롬프트가 sh-4.2# 으로 바뀜)

프롬프트가 'sh-4.2#'로 바뀌게 되면 'passwd' 명령어를 입력하고 새 패스워드를 입력합니다.

위 화면에서는 palindrome 이라는 메세지를 볼 수 있는데, 보안상 취약한 반복되는 패스워드를 입력하면 해당 메세지가 뜹니다. 그렇지만 경고문만 뜨고 똑같은 패스워드를 다시 또 입력하면 적용되니 그대로 입력하시면 됩니다.


8. "touch /.autorelabel" 입력


9. exit 두번 입력

 

10. 재부팅

 

이와 같이 분실한 root 패스워드를 새로운 패스워드로 초기화하고 접속할 수 있습니다.

 

 

 


 

 

본 포스팅의 내용 및 이미지를 무단 전재, 재배포 또는 복사를 금지합니다.

인용 시 출처와 같이 공개해주세요!

도움이 되셨다면 댓글 또는 공감 부탁드립니다!

728x90
반응형

댓글