VPS에서 단일 사용자 모드 및 GRUB 비밀번호 보호

VPS에서 단일 사용자 모드 및 GRUB 비밀번호 보호

VPS CentOS 6 Linux 웹 서버가 있습니다. KVM에서 실행됩니다.

Lynis 감사를 실행하면 단일 사용자 모드와 GRUB가 비밀번호/인증으로 보호되지 않는 것으로 나타났습니다.

[16:00:28] Warning: No password set for single mode [AUTH-9308]
[15:59:26] Suggestion: Set a password on GRUB bootloader to prevent altering boot configuration (e.g. boot in single user mode without password) [BOOT-5122]

또한 Lynis는 스토리지 드라이브에 대해 다음과 같이 언급했습니다.

[16:05:09] Suggestion: Disable drivers like USB storage when not used, to prevent unauthorized storage or data theft [STRG-1840]
[16:05:09] Suggestion: Disable drivers like firewire storage when not used, to prevent unauthorized storage or data theft [STRG-1846]

이것은 가상화된 Linux 인스턴스이고 서버이므로 위 사항에 대해 조치를 취하는 것이 실제로 도움이 될까요? 단일 사용자 모드와 GRUB에 인증 메커니즘을 추가하면 부팅하는 동안(특히 GRUB의 경우) 실제로 문제가 발생할 수 있습니다. 이는 일반적인 Linux 데스크톱 클라이언트가 아니라 가상화된 서버이기 때문입니다. 그러나 Lynis는 분명히 이 사실을 알지 못합니다.

Lynis가 서버 구성 관점에서 나온 것인지 확실하지 않습니다. 바로 여기에 혼란이 있습니다.

강조된 요점에 대한 명확한 설명을 제공해 주시면 대단히 감사하겠습니다!

감사해요,

답변1

일반 강화를 위해 제가 만든 centos-6.x-harden.sh를 사용하시면 됩니다.

#!/bin/bash
echo "readonly TMOUT=900" >> /etc/profile.d/os-sec.sh
echo "readonly HISTFILE" >> /etc/profile.d/os-sec.sh
chmod +x /etc/profile.d/os-sec.sh
echo "tty1" > /etc/securetty
chmod 700 /root
echo "blacklist usb-storage" > /etc/modprobe.d/blacklist-usbstorage
cat << EOF > /etc/sysconfig/init 
BOOTUP=color
RES_COL=60
MOVE_TO_COL="echo -en \\033[${RES_COL}G"
SETCOLOR_SUCCESS="echo -en \\033[0;32m"
SETCOLOR_FAILURE="echo -en \\033[0;31m"
SETCOLOR_WARNING="echo -en \\033[0;33m"
SETCOLOR_NORMAL="echo -en \\033[0;39m"
PROMPT=no
AUTOSWAP=no
ACTIVE_CONSOLES=/dev/tty[1-6]
SINGLE=/sbin/sulogin
EOF
cat << EOF > /etc/init/control-alt-delete.override
start on control-alt-delete
exec /usr/bin/logger -p authpriv.notice -t init "Ctrl-Alt-Del was pressed and ignored"
EOF
cat << EOF > /tmp/grub.patch
--- grub.conf   2014-11-09 13:43:45.085378787 +0330
+++ grub.conf.new       2014-11-09 13:43:48.508377857 +0330
@@ -9,6 +9,7 @@
default=0
timeout=5
+password --md5 \$1\$T.IYz1\$wLQ21IjrUuMeLfkGd1Xby0
splashimage=(hd0,0)/boot/grub/splash.xpm.gz
hiddenmenu
EOF
patch -s /boot/grub/grub.conf < /tmp/grub.patch
# alternate to the latter patch is: echo 'password --md5 $1$T.IYz1$wLQ21IjrUuMeLfkGd1Xby0' >>      /boot/grub/grub.conf
  1. 터미널을 열어두면 쉘이 보호됩니다.
  2. 엔드포인트 무차별 대입 공격 시 보호 기능을 제공합니다.
  3. 사용자에게 루트 비밀번호를 제공하도록 요청하여 단일 사용자 모드를 보호하세요.
  4. 비밀번호를 강제로 입력하여 GRUB 메뉴를 보호하세요.
  5. alt-ctrl-delete 기반 재시작을 비활성화하여 시스템을 보호합니다.

** md5 해시를 원하는 비밀번호로 변경하는 것을 고려해 보세요.

관련 정보