자격증/RHCSA

[RHCSA 9] 기출문제 #1 - root 암호, 네트워크, hostname 설정

잇현 2024. 8. 5. 23:27

루트 암호 재설정

가장 먼저, 반드시! 풀어야 하는 문제입니다.

이 문제를 풀지 못하면, 아무것도 못하고 3시간과 50만원을 버려야 합니다.. 엉엉..😭

 

이 문제는, root 암호가 분실된 경우를 가정하여 시스템에 접속해 root 암호를 변경할 수 있는지 확인하는 것이 목적입니다.

 

  • 9 버전부터는 DVD에서 시스템을 설치하는 경우 유지 관리 모드로 전환하려면 커널에서 root 암호를 요청합니다.
  • 따라서 root 암호를 재설정하려면 복구 커널을 사용해야 합니다.

 

시험에서는 제공하는 2대의 VM 중 한 대의 비밀번호를 알려주지 않고, 제시한 비밀번호로 변경하는 문제를 출제합니다.

 

참고로 8버전에서 루트 암호를 재설정하는 방법도 올려두겠습니다.

 

6.8. rd.break를 사용하여 루트 암호 재설정 | Red Hat Product Documentation

페이지 형식 선택 Multi-page Single-page

docs.redhat.com

 

 

 

수행 방법

1. 시스템을 재부팅하고 부트 로더 메뉴에서 카운트다운을 중단합니다.

시스템 재부팅

  • 그림과 같이 재부팅 아이콘 클릭(또는 Ctrl + Alt + Del 입력)하여 시스템을 재부팅합니다.
  • 시험 보는 환경이 구버전일 경우, 화면 왼쪽 상단의 [+] 버튼을 눌러서 재부팅을 실행하면 됩니다.

 

 

2. 재부팅을 실행하면, GRUB 2 부팅 화면이 나타납니다.
커서 키를 사용하여 복구 커널(이름에 rescue가 있는) 항목을 표시한 상태에서 안내 문구를 따라  'e' 키를 눌러 부팅 프로세스를 중단합니다.

GRUB2 부팅 화면에서 복구 커널(rescue 항목) 선택

 

 

3. 'e' 키를 누르면 다음과 같이 커널 부팅 매개변수가 나타납니다.

커널 부팅 매개변수

 

 

4. 커서를 4번째 줄의 linux~로 시작하는 행에서 End키로 행의 으로 이동하여, rd.break를 추가합니다.
그리고 Ctrl + x 를 눌러 편집된 구성을 적용하여 부팅합니다.

커널 부팅 매개변수 편집 후, 적용

 

 

5. 그대로 Enter를 눌러 유지 관리를 수행합니다.

매개 변수 적용하여 재부팅된 화면에서 유지관리 수행

 

 

6. sh-5.1# 프롬프트에서 /sysroot 파일 시스템을 읽기/쓰기 가능하도록 다시 마운트하고, 확인합니다.

# /sysroot 디렉토리를 읽기/쓰기 모드로 다시 마운트
# - 쉐도우 파일을 수정해야하기 때문에 read-only 상태를 변경해주어야 하기 때문
mount -o rw,remount /sysroot

# /sysroot가 정상적으로 마운트되었는지 확인
mount | grep sysroot

/sysroot 파일 읽기/쓰기 변경

 

 

7. chroot 명령어로 루트 디렉터리를 '/sysroot'로 변경합니다.

 

chroot /sysroot

루트 디렉토리 변경

  • 시스템 복구나 유지보수 작업을 위해 임시적으로 시스템의 루트 디렉터리를 변경할 때 사용
  • chroot 환경에서는 '/sysroot' 디렉토리가 전체 파일 시스템의 루트처럼 작동함

 

 

8. 변경해야하는 비밀번호로 root 암호를 다시 변경해 줍니다.

echo ‘rhcsa’ | passwd —stdin root

제시된 문자로 root 비밀번호 재설정

  • echo 명령을 통해 'rhcsa'이라는 문자열을 `passwd` 명령어에 파이프로 전달하여 root 사용자의 비밀번호 변경
  • --stdin 옵션 : 표준 입력으로부터 비밀번호를 읽어드리도록 `passwd` 명령어에 지시

 

 

9. 부팅 후, 시스템에서 전체 SELinux 레이블을 자동으로 다시 지정하도록 구성합니다.
이후 exit을 2번 입력하여 시스템을 정상적으로 부팅합니다.

# SELinux 컨텍스트 파일 재구성을 위함
touch /.autorelabel
exit
exit

  • `touch` 명령어는 `/.autorelabel` 파일을 생성하거나, 이미 존재한다면 수정 시간을 현재 시간으로 업데이트합니다.
  • SELinux가 활성화된 시스템에서 이 파일은 부팅 시 SELinux 컨텍스트를 자동으로 재라벨링하도록 지시합니다,
    (시스템의 보안 컨텍스트가 올바르게 유지되도록 하는 아주 중요한 단계)

 

 

10. 정상적으로 부팅된 후, 변경한 비밀번호로 root 계정에 접속하면 성공입니다.

변경된 비밀번호로 root 계정 접속 성공

 

 

네트워크 설정 구성

또 다른 가상 머신은 root 계정 정보가 제공됩니다.

하지만 이 VM은 네트워크 설정이 되어있지 않습니다😂

 

여기서 또 다른 팁은 nmtui로 네트워크를 설정하면서 hostname도 변경하기!

네트워크를 설정할 때 알아야하는 명령어는 nmcli, nmtui가 있는데요,

시험용으로는 nmtui를 사용하시는 걸 추천드립니다!
(물론,, nmcli도 알고 계시겠지만, 실수도 줄이고 시간도 단축할겸,,ㅎ)

 

그럼 주어지는 네트워크 설정값으로 네트워크 설정을 해보겠습니다.

 

 

nmtui를 사용하여 네트워크 설정

Q. 가상 머신의 네트워크를 아래 설정값으로 구성하세요.

  • IP : 172.25.250.11
  • NETMASK : /24
  • GATEWAY : 172.25.250.254
  • DNS : 172.25.250.220

 

1. nmtui 명령어를 실행하여 NetworkManager TUI 창을 띄워줍니다.

nmtui 명령어 실행

 

 

2. 창에 진입하여 [Edit a Connection]을 선택합니다.

nmtui 명령어 실행 화면

 

 

3. 설정값을 추가하기 위해 <Add>를 선택합니다.

새로운 Connection 설정값 추가를 위해 Add 선택

 

 

4. 이더넷 설정을 추가하기 위해 Ethernet, Create를 선택합니다.

Ethernet 추가

 

 

5. 프로필/장치명을 입력하고, 설정값으로 구성하기 위해 Manual로 변경하여 값을 입력해줍니다.

설정값으로 네트워크 구성

 

 

6. 정상적으로 네트워크가 생성되고, <Back>을 클릭하여 원래 이전 화면으로 이동합니다.

 

 

7. 방금 생성한 네트워크 활성화를 위해 [Activate a connection]으로 이동합니다.

 

8. 추가한 네트워크를 활성화하기 위해 <Activate>를 클릭합니다.

  • Connecting이 성공되며 '*' 기호가 활성화한 네트워크에 표기되면 완료입니다.

 

 

nmtui를 사용하여 hostname 설정

이번에는 hostname을 설정하도록 하겠습니다.

네트워크 설정 이후 <Back>을 클릭해서 NetworkManager TUI 진입 화면으로 돌아옵니다.

 

1. [Set System hostname] 을 선택해줍니다.

 

 

2. 제시된 host명으로 이름으로 변경하고 <OK>를 선택합니다.

hostname 설정

 

 

3.  아래와 같이 hostname이 설정되면 완료입니다.

hostname 변경 완료

 

[root@servera ~]# hostnamectl set-hostname 2222.example.com
[root@servera ~]# hostname 2222.example.com

[root@servera ~]# hostnamectl set-hostname servera.lab.example.com 
[root@servera ~]# hostname servera.lab.example.com

 

 

 

명령어로 hostname 변경

명령어를 사용하는 방법도 참고하시면 좋습니다.

hostnamectl set-hostname [호스트명]

명령어로 hostname 변경

 

변경 후에는 꼭 확인까지 해주세요.