시스템 보안

리눅스 비밀번호 설정

JNU 2022. 11. 4. 08:27
반응형

Linux server 보안의 기본 개념

1) 시스템 설정

system 설정을 통한 linux server를 보안할 수 있는 다섯 가지 방법이 존재한다.
1. 물리적 보안 > 설치 장소의 물리적 출입 통제와 출입 관리
2. partitioning > 디스크 partition의 검토, 사용자 쿼터 설정, file system 권한 설정
3. 설치할 software > 설치 소프트웨어의 최소화
4. Boot loader 설정 > 비밀번호를 설정하여 system booting 설정을 변경할 수 없도록 한다.
5. service 설정 > 불필요한 service는 작동 중지

오늘 여기서 해볼 것은 Boot loader에서 password 설정을 통한 server의 접근을 통제해보도록 하겠다.
또한 Boot loader에서 password 설정은 password를 잊어버렸을 때 초기화하여 쓰기도 하기 때문에
나름 유용한 방법이니 알아두는 것이 좋다.


2) BOOT Loader

1. root 계정의 p.w. 를 잊어버렸을 땐 single user mode로 들어가려면 linux booting 초기화면에서
'e'를 눌러 edit mode로 진입한다. edit mode 진입 시 나오는 초기 화면이다.


2. quiet 뒤에 init=/bin/bash를 추가 후, ctrl+x 하고 빠져나온다.
그리고 기다리면 shell prompt가 bash-4.4#로 바뀌어서 화면에 출력된다.
이 mode가 바로 single user mode다.


-single user mode
기본적으로 password 입력 없이도 init=/bin/bash 명령 한 줄로도 누구든 접근 가능하다.
user가 root권한을root 권한을 가지게 되면, user가 root 계정을 몰라도 root 권한을 갖고 사용할 수 있게 된다.
이는 보안에 있어서 매우 치명적인 약점이 될 수 있으므로 암호화를 통한 보안을 설정하도록 한다.


3. password 재설정
1. /user/sbin/load_policy -i > SELinux 정책 load
2. mount -o remount,rw / > root file system을 읽기, 쓰기로 mount
3. passwd root > 비밀번호를 root계정에서 재설정
4. /sbin/reboot -f > shell 종료 및 system 재시작
4번까지 끝마치면 linux는 자동으로 rebooting을 해주고 root계정으로 진입할 원래 shell prompt로 load 한다.

비밀번호 재설정이 끝난 상황
rebooting 후 정상적으로 root 계정으로 진입했다.


4. GRUB password 설정

GRUB= Grand Unified Bootloader

hard disk의 첫 번째 boot sector인 MBR에 저장되는 boot loader
누구나 single mode로 진입할 수 있게 해주는 취약점 때문에 GRUB에 password를 설정하도록 한다.

1. grub2-setpassword > grub password를 만든다.
2. grub2-mkconfig -o /boot/grub2/brub.cfg > grub에 대한 설정 file을 만든다.


3. system rebooting 하고 e 키를 눌러 single user mode로 진입해보도록 한다.
그러면 다음과 같이 username을 입력하라고 나온다. 이로써 boot loader 접근을 보안하는 설정을 완료했다.



결론
linux server 자체에 접근하려는 시도가 있을 경우, server를 공격으로부터 방어하기 위해서
system booting 초기화면부터 암호화를 통한 보안설정을 해야 한다.
그리고, 관리자로서 password를 잊어버린 경우 당황하지 않고,
single user mode에서 password 재설정으로 server 운영을 차질 없이 사용할 수 있다.

반응형