Debian 12 CIS 보안 강화 가이드: 단계별 서버 기본 설정

데비안 12와 CIS 기준 배포판에 어떤 변화가 있었나요?

데비안 12 "북웜(Bookworm)"은 2026년 7월 12일에 데비안 LTS(장기 지원) 단계에 진입했습니다. 보안 지원은 2028년 6월 30일까지 예정되어 있으며, 현재 안정 버전은 데비안 13입니다. 데비안은 가능한 경우 데비안 13으로 업그레이드할 것을 권장합니다. 북웜을 계속 사용해야 하는 경우, CPU 아키텍처와 설치된 패키지가 LTS 지원 대상인지 확인하고, 북웜 보안 소스 설정을 유지하며, 지원 기간이 종료되기 전에 테스트를 거친 마이그레이션 계획을 세우십시오.

현재 CIS 목록에는 CIS Debian Linux 12 벤치마크 v2.0.0이 포함되어 있습니다 . CIS는 2026년에 이를 주요 업데이트로 발표했으며, 권장 사항을 추가, 삭제, 이동 및 수정했습니다. 따라서 이전 버전의 Debian 12 체크리스트 및 자동화 도구는 다른 기준선을 대상으로 할 수 있습니다. 이 가이드에서는 v2.0.0 벤치마크를 평가 기준으로 사용하지만, 모든 항목을 재현하거나 합격 결과를 보장하지는 않습니다. 소속 기관에서 승인한 정확한 벤치마크 및 프로파일을 사용하십시오.

참고 자료: 데비안의 Bookworm LTS 인수인계 발표 , CIS 데비안 벤치마크 목록 , CIS의 2026년 6월 벤치마크 업데이트 .

보안 강화 전: 프로필 및 복구 경로를 선택하십시오.

CIS 보안 강화는 모든 상황에 적용 가능한 만능 해결책이 아닙니다. 레벨 1 프로파일은 많은 운영 서버에 적합한 시작점이며, 레벨 2는 심층 방어 기능을 추가하여 호환성과 운영 효율성에 더욱 강력한 영향을 미칠 수 있습니다. CIS는 선택한 권장 사항을 비운영 환경에서 먼저 테스트할 것을 권장합니다. 규제 기관, 고객 계약 또는 내부 정책에서 특정 프로파일을 지정하는 경우, 해당 요구 사항을 준수해야 합니다.

  • 대상 운영체제를 Debian 12 Bookworm으로, CIS 벤치마크 버전을, 그리고 해당 서버 프로필을 기록하십시오.
  • 원격 로그인이나 방화벽 설정을 변경하기 전에 테스트를 거친 백업 또는 VM 스냅샷을 생성하고 콘솔 또는 대역 외 액세스가 가능한지 확인하십시오.
  • 필요한 서비스, 포트, 사용자, 예약된 작업, 마운트 지점 및 애플리케이션 종속성을 기록하십시오.
  • 예외 승인 권한을 가진 사람과 스캔 보고서 및 변경 기록을 보관할 위치를 정의하십시오.

CIS는 레벨 1을 기본 프로필로, 레벨 2를 보다 엄격한 심층 방어 프로필로 설명합니다. 둘 중 하나를 선택하기 전에 공식 CIS 프로필 FAQ를 참조하십시오 .

1. 데비안 릴리스 및 LTS 적용 범위를 확인합니다.

변경 작업을 수행하기 전에 호스트의 릴리스 버전, 아키텍처, 커널, 활성 서비스 및 수신 대기 소켓을 기록해 두십시오.

cat /etc/os-release
dpkg --print-architecture
uname -r
systemctl --failed
sudo ss -tulpn

Bookworm의 LTS 지원 범위는 명시된 아키텍처로 제한되며 일부 패키지는 제외됩니다. 특히 시스템에서 Debian 메인 아카이브 외의 소프트웨어를 실행하는 경우 Debian의 Bookworm LTS 패키지 정보를 확인하십시오 . CIS 점수는 Debian의 보안 지원 범위를 확장하지 않습니다.

2. 시스템을 안전하게 최신 버전으로 업데이트하세요

APT 소스가 bookworm코드명을 사용하고 이 설치에 최신 Debian 보안/LTS 소스를 포함하는지 확인하십시오. 프로덕션 서버의 소스를 단축 방법으로 변경하지 마십시오 bookworm. stable안정 버전 별칭이 이제 Debian 13을 가리키므로 보안 업데이트가 배포판 업그레이드로 이어질 수 있습니다.

sudo apt update
sudo apt upgrade

패키지 변경 사항을 확정하기 전에 검토하십시오. 커널을 교체하거나 중요 서비스를 재시작하는 업그레이드의 경우 유지 관리 기간을 예약하십시오. full-upgrade패키지 제거 및 종속성 변경 사항을 검토하지 않고 사용하지 마십시오. 무인 패치의 경우 Debian unattended-upgrades패키지 관리자는 구성된 APT 소스에서 설치를 자동화할 수 있습니다. 자동 재부팅 및 애플리케이션 재시작이 호스트의 변경 정책에 적합한지 판단한 후 활성화하십시오.

3. 재고 관리 소프트웨어에서 해당 역할에 필요하지 않은 항목만 제거합니다.

서비스 인벤토리와 수신 포트 목록을 사용하여 예상치 못한 네트워크 노출을 식별하십시오. 데몬을 제거하기 전에 패키지 소유권을 확인하고, 해당 서비스가 애플리케이션, 모니터링 에이전트, 백업 소프트웨어 또는 로컬 자동화에 필요한지 확인하십시오. 서비스를 비활성화하면 이름만으로는 알 수 없는 종속성이 깨질 수 있습니다.

systemctl --type=service --state=running
sudo ss -lntup
apt-mark showmanual

소유자가 더 이상 필요하지 않다고 확인한 후에만 APT를 통해 사용하지 않는 패키지를 제거하십시오. 설치된 상태로 유지해야 하지만 시작해서는 안 되는 서비스의 경우, 그 이유를 문서화하고 선택한 프로필에 맞는 CIS 권장 사항을 정확히 따르십시오. 특정 범주의 모든 서비스를 비활성화하거나 패키지를 일괄 삭제하는 명령은 사용하지 마십시오.

4. 계정이 잠기지 않도록 SSH 보안을 강화하세요

SSH로 관리되는 서버의 경우, sudo루트 또는 암호 로그인을 제한하기 전에 명명된 관리자 계정을 생성하고 테스트하십시오. 두 번째 터미널 세션에서 키 기반 로그인이 제대로 작동하는지, 그리고 콘솔에 접속할 수 있는지 확인하십시오. 그런 다음 프로필 및 운영 모델에 필요한 SSH 설정만 적용하십시오. 일반적인 제어에는 루트 직접 로그인 방지 및 암호 인증 제한이 포함되지만, 다른 인증 방법이 제대로 작동하기 전에는 이러한 설정을 적용하는 것이 안전하지 않습니다.

편집 /etc/ssh/sshd_config또는 포함된 구성 파일을 수정한 후에는 구문과 유효 값을 확인하고 SSH를 다시 ​​시작하십시오.

sudo sshd -t
sudo sshd -T | grep -E 'permitrootlogin|passwordauthentication'
sudo systemctl reload ssh

기존 세션을 열어둔 상태로 새 로그인을 테스트한 후 세션을 닫으십시오. 중앙 집중식 ID 또는 비상 암호 액세스가 필요한 경우, 대체 경로가 테스트될 때까지 해당 경로를 비활성화하지 마십시오. Debian의 Bookworm OpenSSH 서버 설명서에는 지원되는 설정이 나와 있으며, 벤치마크는 적용 가능한 목표값을 제공합니다.

5. 필요한 트래픽에 대해 호스트 방화벽 하나를 구성합니다.

호스트에 적합한 방화벽 관리 방식(예: nftables 또는 기존 오케스트레이션 관리형 방화벽)을 선택하고 하나의 권한 있는 규칙 세트를 사용하십시오. 기본적으로 인바운드 연결을 차단하는 정책을 적용하기 전에 관리 경로와 서버에서 제공해야 하는 모든 서비스를 허용하십시오. 잘못된 규칙은 원격 호스트의 연결을 끊거나 애플리케이션 자체를 변경하지 않고도 상태 점검을 중단시킬 수 있습니다.

sudo nft list ruleset

실제 적용되는 규칙을 승인된 네트워크 설계와 비교한 다음, 권한이 부여된 외부 호스트에서 테스트하십시오. 조직에서 UFW와 같은 방화벽 관리자를 사용하는 경우, 별도의 규칙 세트를 추가하는 대신 해당 관리자를 통해 규칙을 확인하십시오. Debian의 nftables 설명서에서 명령 구문을 확인할 수 있으며, 적절한 허용 목록은 서버 역할과 네트워크 분할 방식에 따라 달라집니다.

6. AppArmor를 검증하고 애플리케이션 격리 기능을 약화시키지 마십시오.

AppArmor는 Debian에서 지원하는 강제 접근 제어 프레임워크입니다. 중요한 서비스에 대해 AppArmor가 설치되어 있고 활성화되어 있으며 프로필이 적용되고 있는지 확인하십시오.

sudo aa-status
systemctl status apparmor

AppArmor가 없는 경우, 호스트 이미지 또는 보안 정책이 의도적으로 다른 Linux 보안 모듈을 사용하는지 먼저 확인하십시오. 애플리케이션 동작을 테스트하지 않고 프로덕션 환경에 새 프로필을 설치하거나 적용하지 마십시오. 경고 모드의 프로필은 정책 위반을 기록하지만 차단하지는 않습니다. 적용 모드는 무단 파일 또는 네트워크 접근을 차단할 수 있지만, 제대로 테스트되지 않은 프로필은 정상적인 서비스도 중단시킬 수 있습니다.

Debian의 Bookworm AppArmor 패키지 문서에는 사용자 공간 구성 요소가 설명되어 있습니다. 패키지 설치만으로 조건을 충족한다고 가정하지 말고 프로필 상태 및 예외에 대한 정확한 벤치마크 권장 사항을 적용하십시오.

7. 실제로 모니터링할 수 있는 감사 및 로그 보존 기간을 추가하세요.

선택한 CIS 프로필에서 요구하는 경우, Debian의 감사 데몬을 설치하고 활성화한 다음, 현재 벤치마크 및 변경 관리 프로세스의 규칙을 적용하십시오.

sudo apt install auditd
sudo systemctl enable --now auditd
sudo systemctl status auditd
sudo auditctl -l

재부팅 후 예상되는 규칙이 제대로 로드되고 감사 기록이 수집, 보존 및 일반 사용자로부터 보호되는지 확인하십시오. 감사 규칙은 저장 공간과 이벤트 볼륨을 증가시킬 수 있으므로 호스트의 워크로드에 맞춰 보존 및 알림 용량을 조정하십시오. 로그가 중앙 집중식으로 전달되는 경우, 중앙에서의 전달 및 접근 제어도 확인하십시오. Debian의 Bookworm auditd 패키지 페이지에서는 이 패키지 가 커널 감사 기록을 저장하고 검색하는 유틸리티를 제공한다고 설명하고 있으며, 설치한다고 해서 전체 CIS 규칙 세트가 자동으로 구성되는 것은 아닙니다.

8. 커널, 파일 시스템 및 계정 제어를 체크리스트와 정확히 대조하여 검토하십시오.

벤치마크에서 커널 매개변수, 파일 권한, 암호 정책, 로그인 배너, 예약된 작업 및 파일 시스템 마운트 옵션에 대한 제어 기능을 살펴보십시오. 이러한 설정은 호스트의 역할에 따라 달라집니다. 예를 들어, noexec임시 파일 시스템을 사용하면 해당 위치에서 파일을 실행하는 설치 프로그램이나 애플리케이션과 충돌할 수 있으며, IPv6를 비활성화하면 IPv6를 사용하는 네트워크에 문제가 발생할 수 있고, 계정 만료 기간을 엄격하게 설정하면 중앙에서 관리되는 ID와 충돌할 수 있습니다.

각 권장 사항에 대해 감사 결과, 요구 값, 실제 값 및 변경 적용 여부를 기록하십시오. 관리되는 구성 파일 또는 구성 관리 시스템에서 관련 설정을 적용한 다음 유효한 런타임 상태를 확인하십시오. 광범위한 재귀적 chmod명령 chown은 패키지 소유권, 애플리케이션 액세스 및 시스템 복구에 악영향을 미칠 수 있으므로 사용하지 마십시오.

9. 예외 사항을 평가, 시정 및 문서화합니다.

CIS Debian Linux 12 Benchmark v2.0.0 및 1단계에서 선택한 프로필을 명시적으로 지원하는 평가 도구를 실행하십시오. CIS는 Debian 벤치마크 페이지에 평가 및 자동화 리소스를 나열하고 있으며, 일부는 CIS SecureSuite 회원에게만 제공됩니다. PDF 체크리스트는 수동 검토에 도움이 될 수 있지만, 일반적인 Linux 스캐너나 Debian 13용 CIS 벤치마크만으로 규정 준수 여부를 판단해서는 안 됩니다.

발견된 문제점은 소량씩 순차적으로 해결하십시오. 각 배치 작업 후에는 접근 권한, 애플리케이션 상태, 필수 포트, 예약된 백업, 로그 수집 및 모니터링을 확인하십시오. 평가를 다시 실행하고 이전 보고서와 결과를 비교하십시오. 승인된 모든 편차에 대해 제어 조치, 사유, 보완 조치, 담당자 및 검토 날짜를 기록하십시오. "해당 없음"은 점수를 높이기 위한 수단이 아니라, 근거를 제시하여 뒷받침해야 합니다.

운영 체크리스트

  • 최신 Debian 12 v2.0.0 벤치마크와 올바른 서버 프로필을 사용하십시오.
  • Bookworm의 보안 소스를 최신 상태로 유지하고 이 호스트의 아키텍처 및 패키지에 대한 LTS 지원 여부를 확인하십시오.
  • SSH, 방화벽, 부팅 또는 파일 시스템 동작을 변경하기 전에 복구 경로를 확보하십시오.
  • 레벨 2 테스트와 운영 환경 외부에서 애플리케이션에 영향을 미치는 변경 사항을 먼저 테스트하십시오.
  • 평가 결과, 예외 사항, 패키지 업데이트 및 재부팅 상태를 기록합니다.
  • 업무량이 허용하는 경우, 2028년 6월 30일 Debian 12 LTS 지원 종료 전에 Debian 13으로의 마이그레이션을 계획하십시오.

보안 강화는 노출 위험을 줄일 수 있지만, CIS(보안 통합 시스템) 정렬은 특정 벤치마크 버전 및 프로파일을 평가하고, 필요한 제어를 적용하고, 결과를 검증하고, 승인된 예외 사항을 문서화함으로써 확립됩니다. 이는 호스트의 보안을 보장하거나 조직의 규정 준수 평가를 대체하는 것이 아닙니다.

댓글 남기기

손실된 파티션과 하드 디스크 데이터를 안전하게 복구하는 방법

손실된 파티션과 하드 디스크 데이터를 안전하게 복구하는 방법

TestDisk와 PhotoRec을 사용하여 손실된 파티션과 파일을 복구하는 방법을 알아보세요. 원본 드라이브를 보호하고 안전하게 스캔한 다음 복구된 데이터를 다른 디스크에 저장하세요.

리눅스 데스크톱에서 QR 코드를 스캔하는 방법

리눅스 데스크톱에서 QR 코드를 스캔하는 방법

웹캠이나 이미지 파일을 사용하여 CoBang으로 Linux에서 QR 코드를 스캔하세요. Flatpak 카메라 접근 관련 설치 옵션, 설정 단계 및 문제 해결 방법을 참조하세요.

Cameractrls를 사용하여 Linux에서 웹캠 설정을 변경하는 방법

Cameractrls를 사용하여 Linux에서 웹캠 설정을 변경하는 방법

Cameractrls를 사용하여 Linux에서 웹캠 설정을 변경하세요. 노출, 색상, 깜빡임 감소 및 기타 지원되는 제어 기능을 조정하고 호환되는 비디오 모드를 확인하세요.

Linux에 PhpStorm을 설치하는 방법: Toolbox, Tar.gz, Snap 및 AUR

Linux에 PhpStorm을 설치하는 방법: Toolbox, Tar.gz, Snap 및 AUR

Linux에 PhpStorm을 설치하려면 JetBrains Toolbox 또는 독립 실행형 tar.gz 아카이브를 사용하세요. Snap 및 Arch AUR 옵션도 제공됩니다. Java는 이미 포함되어 있습니다.

리눅스에 Cisco Packet Tracer를 설치하는 방법

리눅스에 Cisco Packet Tracer를 설치하는 방법

Cisco Packet Tracer 9.0.1 for Ubuntu 64비트 버전을 다운로드하고, APT를 사용하여 DEB 패키지를 설치한 다음, 터미널에서 라이선스에 동의하고 로그인하여 실습을 시작하십시오.

XFCE 4에서 듀얼 패널을 설정하는 방법

XFCE 4에서 듀얼 패널을 설정하는 방법

각 디스플레이마다 별도의 XFCE 4 패널을 생성하고, 두 번째 패널을 올바른 출력에 할당하고, 위치와 크기를 조정한 다음, 필요한 실행기와 상태 항목을 추가합니다.

리눅스에서 CD-ROM을 ISO 파일로 백업하는 방법

리눅스에서 CD-ROM을 ISO 파일로 백업하는 방법

GNOME Disks 또는 dd 명령어를 사용하여 Linux에서 CD-ROM ISO 파일을 생성합니다. 광학 드라이브를 식별하고, 복사 과정을 모니터링하고, 이미지 유효성을 검사하고, 손상된 디스크나 오디오 디스크에 다른 도구가 필요한 경우를 알 수 있습니다.

리눅스에서 GIMP를 사용하여 이미지를 잘라내는 방법

리눅스에서 GIMP를 사용하여 이미지를 잘라내는 방법

GIMP를 사용하여 Linux에서 사진 배경 제거하기: 피사체를 따라 그리고, 선택한 배경을 삭제하고, 투명도를 유지한 다음, 재사용 가능한 PNG 파일로 내보낼 수 있습니다.

FlightGear 무료 다운로드: 공식 설치 가이드

FlightGear 무료 다운로드: 공식 설치 가이드

FlightGear를 공식 사이트에서 무료로 다운로드하세요. Windows, macOS, Linux 패키지를 비교하고, 데이터 파일을 설치한 후 첫 비행을 시작하세요.

Google Tasks 데스크톱 애플리케이션: 컴퓨터에서 사용하는 방법

Google Tasks 데스크톱 애플리케이션: 컴퓨터에서 사용하는 방법

브라우저에서 Google Tasks를 열거나, Chrome 바로가기 또는 앱 스타일 실행을 추가하고, 캘린더 및 Gmail을 통해 날짜별 할 일을 관리하세요.