본문 바로가기

윈도우 화면 보호기 암호 보호 강제 적용 방법 (레지스트리 & GPO 기반)

728x90

왜 화면 보호기 설정을 제한해야 하나요?

조직에서는 사용자 단말기의 보안 유지, 특히 자리를 비운 동안의 무단 접근 방지를 위해 화면 보호기 설정을 중앙에서 강제하는 경우가 많습니다. 사용자가 임의로 설정을 변경하거나 해제하지 못하도록 그룹 정책(또는 레지스트리) 기반으로 고정하는 것이 일반적인 접근입니다.

🛠 주요 경로와 설정 요약

1. 기본 레지스트리 경로 (사용자 설정 변경 가능)

  • 위치: [HKEY_CURRENT_USER\Control Panel\Desktop]
  • 주요 설정 항목
    • ScreenSaveActive: 화면 보호기 사용 여부 (1: 사용, 0: 사용 안함)
    • ScreenSaveTimeOut: 대기시간 (초 단위)
    • SCRNSAVE.EXE: 사용할 화면 보호기 파일 경로
    • ScreenSaverIsSecure: 재개 시 암호 보호 설정 (1: 암호 보호, 0: 보호 안 함)

⚠️ 이 경로의 값은 사용자나 프로그램이 수정 가능하며, 정책에 의해 덮어쓰여질 수 있습니다.

2. 정책 기반 설정 경로 (설정 고정)

  • 위치: [HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\Control Panel\Desktop]

이 경로는 존재하지 않을 수 있으며, 직접 생성해야 정책 수준의 강제 적용이 가능합니다. 그룹 정책(혹은 수동 편집)에 의해 이 경로가 생성되면 사용자는 설정을 변경할 수 없습니다.

🔧 설정 예시

[HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\Control Panel\Desktop]

"ScreenSaverIsSecure"="1"        ; 화면 보호기 암호 보호
"ScreenSaveTimeOut"="600"        ; 10분 후 화면 보호기 작동
"ScreenSaveActive"="1"           ; 화면 보호기 활성화
"SCRNSAVE.EXE"="C:\\WINDOWS\\system32\\logon.scr" ; 사용 화면 보호기
  • ScreenSaverIsSecure데이터 값이 0이든 1이든, 정책이 적용되면 암호 보호가 고정됩니다.
  • ScreenSaveTimeOut초 단위이며, 600은 10분입니다.
  • SCRNSAVE.EXE.scr 형식의 파일 경로로 지정해야 하며, 예: logon.scr, ssflwbox.scr 등.

🔒 화면 보호기 설정 "불가" 상태 유지 방법

방법 요약

  1. 위 정책 경로에 키 생성
  2. 필요한 값(위 항목들)을 설정
  3. 정책 적용 후, 기존 사용자 레지스트리 변경은 무효화됨
  4. 사용자는 제어판, 설정 화면에서 화면 보호기 변경 불가

🧹 정책 해제 방법

정책을 제거하고 다시 사용자가 설정을 변경 가능하게 만들려면

  1. 다음 경로 삭제
    [HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\Control Panel\Desktop]
  2. 필요 시 더 상위 경로까지 삭제
    [HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows]

📌 삭제 후에는 Windows 로그아웃/로그인 또는 재부팅을 통해 정책 캐시를 초기화해야 적용됩니다.

🛡 보안 관점 점검 포인트

항목 설명 점검/설정 권장
화면 보호기 강제 여부 조직의 보안 정책으로 화면 보호기 활성화 여부 ✔ 활성화 권장
대기 시간 설정 너무 짧거나 길면 사용자 불편 혹은 보안 위협 ⏱ 5~15분 권장
암호 보호 여부 비인가 접근 차단 필수 🔐 반드시 ScreenSaverIsSecure=1
화면 보호기 종류 조직 로고/정보 안내 포함 화면보호기 지정 가능 🎨 지정 필요
사용자 변경 차단 정책 경로에 값 지정하여 강제 설정 📛 UI 비활성화 또는 그룹 정책 병행

🧭 관련 그룹 정책(GPO) 경로

그룹 정책 환경에서는 로컬 GPO 또는 도메인 GPO로 동일한 설정이 가능합니다.

  • 경로: 사용자 구성 > 관리 템플릿 > 제어판 > 개인 설정
  • 주요 정책
    • 화면 보호기 암호로 보호
    • 화면 보호기 시간 제한 설정
    • 지정된 화면 보호기 사용
    • 화면 보호기 설정 변경 사용 안 함

이 정책들은 Policies 레지스트리 경로를 통해 반영됩니다.

🔍 참고: Microsoft 공식 문서

📌 결론 및 실무 적용 가이드

  • 보안 설정 표준화 필요: 임의 변경 방지를 위해 Policies 경로에 정책을 미리 구성해 배포하는 것이 가장 안정적입니다.
  • 스크립트 자동화 권장: .reg 파일 또는 PowerShell을 통해 대량 사용자 환경에 적용 가능
  • GPO 적용 병행 추천: 도메인 환경에서는 AD GPO와 병행 적용 시 더욱 효과적입니다.

.reg 파일 예시 (로컬 사용자 계정용)

이 스크립트는 현재 사용자(HKEY_CURRENT_USER)에 대해 화면 보호기 설정을 고정합니다. 파일로 저장하고 실행하면 레지스트리에 자동으로 반영됩니다.

📄 LockScreensaver.reg

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\Control Panel\Desktop]
"ScreenSaveActive"="1"
"ScreenSaveTimeOut"="600"
"SCRNSAVE.EXE"="C:\\WINDOWS\\system32\\logon.scr"
"ScreenSaverIsSecure"="1"

📌 적용 방법

  1. 메모장에 위 내용을 붙여넣기
  2. 파일명: LockScreensaver.reg
  3. 저장 시 인코딩: ANSI
  4. 더블클릭하여 실행 → "예" 클릭

GPO 템플릿 설정 경로

도메인 환경에서는 **그룹 정책 관리 도구(GPMC.msc)**를 통해 중앙 통제할 수 있습니다.

🧭 설정 경로

사용자 구성
  └ 관리 템플릿
     └ 제어판
        └ 개인 설정

📌 적용할 정책 항목

정책 이름 설정값
화면 보호기 사용 사용
지정된 화면 보호기 사용 logon.scr 또는 원하는 .scr 파일 경로
화면 보호기 시간 제한 설정 사용 (예: 600초)
화면 보호기 암호로 보호 사용
화면 보호기 설정 변경 사용 안 함 사용 (사용자 UI 제한)

그룹 정책을 적용하면 위와 동일한 내용이 Policies 레지스트리에 작성되며, 사용자는 설정을 변경할 수 없습니다.

PowerShell 자동화 스크립트 예시

로컬 사용자에게 동일한 설정을 자동으로 적용할 수 있는 PowerShell 스크립트입니다.

▶ Set-ScreensaverPolicy.ps1

$path = "HKCU:\Software\Policies\Microsoft\Windows\Control Panel\Desktop"

# 폴더 존재 여부 확인 후 생성
if (-not (Test-Path $path)) {
    New-Item -Path $path -Force | Out-Null
}

# 정책 값 설정
Set-ItemProperty -Path $path -Name "ScreenSaveActive" -Value "1"
Set-ItemProperty -Path $path -Name "ScreenSaveTimeOut" -Value "600"
Set-ItemProperty -Path $path -Name "SCRNSAVE.EXE" -Value "C:\WINDOWS\system32\logon.scr"
Set-ItemProperty -Path $path -Name "ScreenSaverIsSecure" -Value "1"

Write-Host "화면 보호기 정책이 적용되었습니다."

📌 실행 방법

  • PowerShell을 관리자 권한으로 실행
  • 위 파일을 Set-ScreensaverPolicy.ps1로 저장 후 실행: .\Set-ScreensaverPolicy.ps1

🧽 해제 스크립트

정책 해제(원래 상태 복구)를 원할 경우, 아래 명령으로 레지스트리 키를 삭제할 수 있습니다.

▶ .reg 삭제 스크립트

Windows Registry Editor Version 5.00

[-HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\Control Panel\Desktop]

▶ PowerShell 삭제 스크립트

Remove-Item -Path "HKCU:\Software\Policies\Microsoft\Windows\Control Panel\Desktop" -Recurse -Force
Write-Host "화면 보호기 정책이 제거되었습니다."

✅ 마무리 점검 체크리스트

항목 점검 여부
레지스트리 적용 후 로그아웃 또는 재부팅 🔁 필요
도메인 환경에서는 GPO 우선 적용 여부 확인 🏢 필요
사용자 권한 제한 여부 확인 (UI 제한) 🔒 권장
화면보호기 파일 존재 여부 (logon.scr) 📁 확인 필요
자동화 배포 필요 시 PowerShell + 배치 또는 스크립트 관리 도구 사용 ⚙️ 가능
728x90
그리드형(광고전용)

댓글