"CentOS 7에서 단일 사용자 모드를 암호로 보호하는 방법"


"이전 기사 중 하나에서 CentOS 7에서 단일 사용자 모드로 부팅하는 방법을 설명했습니다. \"유지 관리 모드\"라고도합니다. Linux는 단일 사용자 (일반적으로 수퍼 유저)가 기본 기능에 대해 몇 가지 서비스 만 시작합니다. "") fsck를 사용하여 손상된 파일 시스템을 복구하는 것과 같은 특정 관리 작업을 수행합니다."

"단일 사용자 모드에서 시스템은 로그인 자격 증명 (사용자 이름 및 암호)없이 명령을 실행할 수있는 단일 사용자 셸을 실행하고 전체 파일 시스템에 대한 액세스 권한이있는 제한된 셸에 바로 들어가게됩니다."

"이것은 침입자가 셸에 직접 액세스 할 수있게하므로 (및 전체 파일 시스템에 대한 액세스 가능) 엄청난 보안 허점입니다. ""따라서 아래 설명과 같이 CentOS 7에서 단일 사용자 모드를 암호로 보호하는 것이 중요합니다."

"CentOS/RHEL 7에서 복구 및 응급 대상 (단일 사용자 모드이기도 함)은 기본적으로 암호로 보호됩니다."

"예를 들어 systemd를 통해 대상 (런레벨)을 rescue.target (또는 Emergency.target)으로 변경하려고하면 다음 스크린 샷과 같이 루트 암호를 입력하라는 메시지가 표시됩니다."

# systemctl isolate rescue.target
OR
# systemctl isolate emergency.target

"그러나 침입자가 서버에 물리적으로 액세스 할 수있는 경우 첫 번째 부팅 옵션을 편집하기 위해 \u003ccode\u003e e \u003c/ code\u003e 키를 눌러 grub 메뉴 항목에서 부팅 할 커널을 선택할 수 있습니다."

"\u003ccode\u003e“linux16“\u003c/ code\u003e로 시작하는 커널 줄에서 \u003ccode\u003e ro \u003c/ code\u003e 인수를 \u003ccode\u003e“rw init \u003d/sysroot/bin/sh”\u003c로 변경할 수 있습니다. ""/ code\u003e 및 \u003ccode\u003e SINGLE \u003d/sbin/sushell \u003c/ code\u003e 줄이 \u003ccode\u003e SINGLE \u003d/sbin/sulogin으로 변경된 경우에도 시스템이 루트 암호를 요구하지 않고 CentOS 7에서 단일 사용자 모드로 부팅합니다. " 파일/etc/sysconfig/init.

"따라서 CentOS 7에서 단일 사용자 모드를 암호로 보호하는 유일한 방법은 다음 지침을 사용하여 암호로 GRUB를 보호하는 것입니다."

"CentOS 7에서 Grub을 암호로 보호하는 방법"

"먼저 그림과 같이 grub2-setpassword 유틸리티를 사용하여 강력한 암호화 된 암호를 만듭니다."

# grub2-setpassword

"암호의 해시는 /boot/grub2/user.cfg에 저장되며 사용자 즉 \"root\"는 /boot/grub2/grub.cfg 파일에 정의되어 있습니다. 표시된대로 cat 명령을 사용하여 암호를 볼 수 있습니다."

# cat /boot/grub2/user.cfg

"이제 /boot/grub2/grub.cfg 파일을 열고 암호로 보호 할 부팅 항목을 검색합니다.이 항목은 \u003ccode\u003e menuentry \u003c/ code\u003e로 시작합니다. ""항목을 찾으면 항목에서 \u003ccode\u003e-unrestricted \u003c/ code\u003e 매개 변수를 제거합니다."

"파일을 저장하고 닫습니다. 이제 CentOS 7 시스템을 재부팅하고 \u003ccode\u003e e \u003c/ code\u003e 키를 눌러 부팅 항목을 수정합니다. 표시된대로 자격 증명을 제공하라는 메시지가 표시됩니다."

그게 다입니다. "CentOS 7 GRUB 메뉴를 성공적으로 암호로 보호했습니다."