pC.NET

Welcome to oscc.kr



 루트 패스워드가 생각이 나지 않는다면?
2021-08-01 09:43:51
Hit : 113

작성자 : 피시넷

루트 패스워드가 생각이 나지 않는다면?

오랫동안 기계를 쓰지 않고 방치해 두어서 패스워드를 잃어버리거나, 다른 관리자가 쓰던 기계의 업무를 물려 받은 경우 따위로 루트 패스워드 를 아예 모르는 경우에는 다음의 방법을 써서 복구를 "시도"해 본다. (리눅스 설치 도중에 정전이 되는 등으로 루트 패스워드를 잃어 버린 경 우는 기술 상의 문제로 해당이 안됨을 미리 밝혀 둔다).

우선 릴로 프롬프트가 나올 때 [탭] 키를 눌러서 부트 가능한 이름들을 둘러 본다. 그 중에는 'linux'라는 것이나 비슷한 놈이 하나쯤 있기 마련... 'linux'라고 한다면 다음의 매개 변수를 집어 넣어 주고 [enter]를 살포시 눌러 준다..

linux init=/bin/bash

일단 프롬프트를 얻게 되면 부트 파일시스템을 리마운트 해 준다.

  mount -wno remount / :루트를 읽기-쓰기용으로 리마운트 함.
  /bin/vi /etc/passwd  :패스워드 문서 다듬기
                       : vi가 싫으면 아무거나 원하는 것으로...
전통적인 방법은 패스워드 문서를 다듬어서 루트의 패스워드를 지우는 것이었다. passwd 문서에서 첫 번째 ':'와 두 번째 ':' 사이의 암호화되 어 적혀 있는 패스워드를 지워 주고 나서 다시 루트로 로그인하는 것이 었는데, 레드 햇이 범용적으로 사용된 요즘에는 (특히 레드 햇에 기존한 배포본이 거의 모두라고 할 수 있는 우리 나라의 경우에는) 이 방법은 먹혀들지가 않는다. 왜냐하면...
[1]. 쉐도우 패스워드!
[2]. 레드 햇은 루트의 패스워드가 비어 있으면 로그인을 허락하지 않는다.
방법: 0. 만약을 대비해서 우선 passwd 문서를 복사해 둔다. 'passwd.original' 따위 등으로...
1. 레드 햇 이외의 배포본에서 쉐도우 패스워드를 사용 안하는 경우: /etc/passwd를 다듬어서 첫 번째 ':'와 두 번째 ':' 사이에 있는 암호화된 패스워드를 지워 버린다. 저장한 후, 루트로 로그인하면 패스워드를 안 물어 올 것이다. 루트로 일단 로그인이 되었으면 반드시 새로운 패스워 드를 설정하고 적당한 곳에 이 새로운 패스워드를 적어서 보관한다. (안그럼 "언젠가는 또 이 짓을 반복하게 될 것"은 머피의 법칙 어디에서 인가 본 것 같다). 만약 이 방법이 통하지 않으면 3.1로 가라.

2. 레드 햇 이외의 배포본에서 쉐도우 패스워드. 사용의 경우: 이 경우에는 /etc/passwd를 보면 (배포본에 따라서 장소는 다를 수 있 다) ':'와 ':' 사이에 'x'가 보일 것이다. 이 때에는 /etc/passwd 대신에 /etc/shadow 등을 보듬어 주면 된다. (배포본에 따라서 shadow 문서의 위치가 다를 수 있다. 이 때에는 '/'에서 'find -name shadow'를 써서 shadow 문서가 어디에 있는지 찾아본다). 찾았으면, 여기서부터는 1의 방법과 같다.

3. 레드 햇 / 변종의 경우 (쉐도우 패스워드 사용): 레드 햇이나 이 것의 아종/변종의 경우인 경우에는 단순히 /etc/passwd 의 첫 번째 ':'와 두 번째 ':'를 비우는 짓을 했다가는 아예 로그인이 안되 는 불상사가 생길 수 있으므로 우선 passwd 명령어를 먼저 사용해 본 다. (배포본에 따라서 - ':'와 ':' 사이가 비어 있으면 passwd 명령어가 안될 수 있으므로). 만약 이 전의 패스워드를 모르더라도 passwd 명령어를 쓰면 새로운 패 스워드를 적어 넣을 수 있을 것이다. 만약 passwd를 쓰는 방법도 안된 다면 3.1을 쓰라. 당연히 새 패스워드는 적어놓고 안전한 곳에 보관할 것.

3.1 passwd 명령어가 안 먹히잖아! ':'와 ':' 사이에 "암호화된 패스워드" 중에서 아무 것이나 넣어 주면 된 다. 만약 지금 고치려는 기계에 여러분의 계정이 있는 경우에는 /etc/shadow 문서 어디엔가 여러분의 (루트가 아닌 다른 계정으로) 패스 워드가 암호화되어서 저장되어 있을 것이다. 이것을 복사해서 루트의 암호로 대신 넣어 주면 된다. 당연히 루트로 로그인한 후에는 여러분 패스워드를 넣어 주면 된다. 이 후에는 패스워드를 다시 바꾸어서 안전 한 곳에 보관한다. (사용자 계정과 루트 계정의 암호가 같으면 그것도 보안 관리 장애물이다).

그 이후에: 일단 기계를 루트 권한으로 손에 넣었으면 여기에서 일이 끝나는 것이 아니다. 이전의 사용자가 혹시 백도어용으로 쓰기 위해서 루트가 아닌 다른 이름으로 수퍼유저 계정을 만들어 놓았을 수 있으니까.

1. 패스워드나 쉐도우 문서를 잘 살펴서 UID가 0으로 되어 있는 계정을 잘 살펴보도록 하라.


  피시넷
안녕하세요.
피시넷입니다.

 2830
 41


http://domain/~ID -> http://ID.domain
[DOC] LINUX 한글화된 도움말 모음

Copyright (C) 1997-2025 All Rights Reserved.

Powered by
DNS server, DNS service 우분투 리눅스 웹서비스 AbuseIPDB Contributor Badge