본문으로 건너뛰기
50% 할인 모든 플랜, 기간 한정. 시작 가격 $2.48/mo
9 min left
보안 및 네트워킹

Windows VPS 보안 설정 방법: 하드닝 체크리스트

Nick Silver 작성자 Nick Silver 9 분 분량 업데이트: Haze 10d ago
Secure Your Windows VPS: a Windows server inside a glowing brick perimeter with a shield and verified-user badge, over a dark Cloudzy-branded backdrop

Windows VPS 보안을 연구 과제로 만들지 않으려면 먼저 패치를 적용하고, NLA와 IP 허용 목록으로 RDP를 강화하고, 계정 잠금을 적용하고, 인바운드 방화벽 규칙을 좁게 유지하고, Defender 실시간 보호를 켜 둔 채로 백업을 테스트하세요. 원격 근무든 웹사이트든 애플리케이션이든 목표는 단순합니다. 공격 표면을 줄이고, 자격 증명을 보호하고, 로그를 지켜보는 것입니다.

패치 우선: 업데이트, 드라이버, 역할 관리

무엇보다 먼저 패치하세요. 공개 IP에 노출된 상태에서 패치되지 않은 서버는 가장 쉬운 공격 대상이며, 대부분의 침해 사고는 여기서 시작됩니다. 보안 업데이트를 지속적으로 적용하고, 사용하지 않는 Windows 역할을 제거하고, 팀이 감당할 수 있는 일정으로 재부팅을 계획하세요. 지루하게 느껴지는 이 작업이 눈에 띄는 침해 사고를 막아줍니다.

  • Windows 업데이트를 정해진 주기로 보안 업데이트가 자동 설치되도록 설정하고, 유지보수 시간을 팀 일정에 맞게 조정하세요.
  • 레거시 IIS 모듈이나 SMB 1.0 구성 요소처럼 필요하지 않은 역할과 기능을 제거하세요.
  • 드라이버, 펌웨어, 앱 업데이트를 주기적으로 적용하고, 두 달씩 미루지 말고 일정에 따라 재부팅하세요.
  • 서버가 공개 IP에 연결되어 있다면, 클라우드 포털에서 노출 현황을 검토하고 불필요하게 열린 항목을 닫으세요.

여기서 시작하고, 매달 간단한 변경 이력을 남겨 무엇이 언제 바뀌었는지 답할 수 있게 하세요. 그러면 가장 큰 효과가 나는 다음 단계, 즉 계정 보안 작업의 토대가 마련됩니다.

인증 기본 설정: 강력한 비밀번호와 MFA 경로

인증은 서버의 현관문입니다. 긴 패스프레이즈와 2단계 인증만으로도 대부분의 일반적인 공격을 차단할 수 있으며, 소규모 Windows 서버에도 어렵지 않게 적용할 수 있습니다.

  • 최소 14자 이상의 패스프레이즈를 사용하세요. 서버가 도메인에 가입되어 있다면 아이덴티티 스택을 통해 금지 암호 필터링을 추가하세요.
  • RD Gateway, VPN 또는 서드파티 자격 증명 공급자를 통해 Remote Desktop에 MFA를 추가하세요.
  • 관리 작업에는 별도의 명명된 관리자 계정을 사용하고, 일상 업무는 일반 사용자 계정으로 처리하세요.
  • RDP를 통해 로그인할 수 있는 계정을 감사하고, 목록을 줄여 최소 권한 원칙을 지키세요.

여기에 요령 같은 건 없습니다. 핵심은 일관성이고, 일관성은 곧바로 계정 관리로 이어집니다. 고객을 위해 작업하는 경우라면 인수인계 문서에 이 점검 항목을 넣어 다음 관리자도 같은 계획을 따르게 하세요.

기본 'Administrator' 계정을 없애고 계정 잠금을 적용하세요

공격자는 기본 제공 Administrator 계정을 집중적으로 공략합니다. 해당 계정을 비활성화하고, 명명된 관리자 계정을 새로 만들고, 계정 잠금 정책을 적용해 무차별 대입 공격의 속도를 늦추세요.

  • 이름이 지정된 별도의 관리자 계정을 만들어 테스트한 뒤, 기본 제공 Administrator 계정을 비활성화하세요. 반드시 유지해야 한다면 이름을 바꾸고 비상용 계정으로 보호하세요.
  • 계정 잠금을 시도 10회, 잠금 시간 15분, 재설정 시간 15분으로 설정해 실용적인 균형을 맞추세요.
  • 누군가 비밀번호를 잘못 입력했을 때 지원팀이 막히지 않도록, 빠른 잠금 해제 절차를 문서화해 두세요.

기준 설정과 장단점은 Microsoft의 계정 잠금 임계값 참고 문서를 확인하세요.

이런 작은 변경은 공개된 VM에서 금방 값어치를 합니다. 기본 출입문을 닫고 잠금까지 걸어두었다면, 다음 계층은 RDP 표면입니다.

RDP 강화: NLA, 포트 노이즈, IP 허용 목록

Two RDP paths compared: an exposed Windows VPS reachable from the internet over public TCP 3389 and open to internet-wide scanners, versus a hardened path where a trusted user and IP pass through a VPN or RD Gateway with MFA, a firewall IP allowlist, and NLA before reaching the VPS

Remote Desktop은 주요 공격 대상이므로 접근을 제한해야 합니다. Network Level Authentication을 활성화하고, 허용 목록으로 노출 범위를 줄이고, 3389 포트의 봇 트래픽을 줄이세요. 포트를 변경하는 것 자체는 보안 조치가 아닙니다. 스캐너를 조용하게 만들 뿐입니다.

  • 서버에서 NLA를 필수로 설정하세요. NLA를 지원하지 않는 구형 클라이언트는 연결을 허용하지 않아야 합니다.
  • TCP 3389 또는 변경한 포트에 대해 특정 출발지 IP만 허용하세요. 더 좋은 방법은 RDP를 VPN이나 RD Gateway 뒤에 두는 것입니다.
  • 스캐너 노이즈를 줄이기 위해 기본 RDP 포트를 변경할 수 있지만, 이것만으로 보안이 확보된다고 생각하지 마세요.
  • 드라이브 및 클립보드 리디렉션이 필요하지 않다면 비활성화하세요. 유휴 시간 초과를 설정하고 재인증을 강제 적용하세요.

RDP를 잠그면 자동화된 공격 대부분이 차단되고, 그 일의 대부분은 허용 목록이 해냅니다. 소스 범위를 좁히거나, RDP 허용 목록과 지역 차단을 사용하면 사용자가 모두 한 지역에 있는 경우, 무작위 스캔 트래픽이 로그인 화면에 닿는 일 자체를 막을 수 있습니다. 이는 합리적인 방화벽 규칙과도 잘 어울립니다.

실질적으로 도움이 되는 방화벽 규칙

호스트 방화벽 규칙은 단순해야 합니다. 기본은 차단, 그다음 실제로 쓰는 것만 여세요. RDP 규칙은 알려진 출발지 IP에 묶고, 차단된 트래픽을 기록하고, 레거시 프로토콜은 들이지 마세요.

  • 인바운드를 기본 차단으로 시작한 뒤, 필요한 포트와 프로토콜만 허용하세요.
  • RDP 규칙의 범위를 0.0.0.0/0이 아닌 알려진 IP로 한정하고, 차단된 트래픽을 검토를 위해 로깅하세요.
  • TLS 1.2 이상을 사용하고, SMBv1은 전면 비활성화하세요.
  • 관리되는 이그레스 정책이 없다면 아웃바운드는 기본 허용으로 두세요. 명확한 필요가 있는 곳에만 표적화된 아웃바운드 차단을 추가하세요.

값어치를 하는 규칙은 대개 아무도 일부러 열지 않은 포트를 다룹니다. 대표적인 예가 TCP 135 에서 동작하는 Windows RPC이며, 이를 호스트 방화벽에서 신뢰할 수 있는 출처로만 제한하는 것은 기본 차단 원칙을 포트 단위로 적용하는 것과 같습니다. 그 포트들 뒤에는 서비스 자체가 있습니다.

서비스 정리: 사용하지 않는 것은 제거하세요

불필요한 서비스는 공격 경로가 됩니다. 필요 없는 것은 꺼두고, 한 달 후에 다시 확인해 몰래 되살아난 항목이 없는지 점검하세요.

  • 서버가 프린트 호스트가 아니라면 Print Spooler를 중지하고 비활성화하세요.
  • Remote Registry와 사용하지 않는 레거시 프로토콜을 비활성화하세요.
  • 현재 워크로드에 포함되지 않는 웹, 파일, 또는 FTP 역할은 제거하세요.
  • 시작 프로그램과 예약 작업을 점검하고, 알아보지 못하는 항목은 비활성화하기 전에 먼저 확인하세요.

집을 정리했다면 Defender와 가벼운 EDR 설정으로 기본 보호를 더하세요. 품은 적게 들지만, 일상 운영에서 확실히 드러나는 종류의 작업입니다.

Defender, EDR, 그리고 예약 검사

Microsoft Defender Antivirus는 최신 Windows Server 릴리스에서 탄탄한 기본 보호를 기본 제공합니다. 실시간 보호와 클라우드 기반 보호를 켜 두고, 정기 일정에는 빠른 검사를 사용하세요.

  • 서버가 Defender for Endpoint에 온보딩되어 있다면 거기에서 변조 방지(Tamper Protection)를 켜세요.
  • 실시간 보호와 클라우드 기반 보호를 항상 활성화하고, 트래픽이 적은 시간대에 주간 빠른 검사를 예약하세요.
  • 전체 검사는 특정 조사 목적이거나 보안 도구가 요구할 때만 실행하세요.

이 설정들은 일상적인 커버리지를 제공하며, 이는 기본 수준일 뿐 관리형 탐지 및 대응 프로그램은 아닙니다. 실제로 복원 가능한 백업과 함께할 때 가장 잘 작동합니다.

백업, 스냅샷, 그리고 복구 테스트

A three-layer Windows VPS recovery strategy: daily snapshots on the same hosting platform with 7 to 14 day retention, off-box backups to a different storage location under separate credentials, and monthly restore tests to a clean test VPS that verify files and services before documenting the steps

복원할 수 없는 Windows VPS는 단일 장애점입니다. 매일 스냅샷을 찍고, 외부 백업을 유지하며, 복구 계획이 실제로 동작하는지 테스트하세요.

  • 7일에서 14일 보존 주기로 매일 자동 스냅샷을 생성하고, 컴플라이언스 작업이라면 보존 기간을 더 길게 설정하세요.
  • 다른 자격 증명을 사용하는 별도의 공급자, 리전, 또는 버킷에 외부 백업을 보관하세요.
  • 월 1회 복구 테스트를 실시하고, 복구 절차와 복구 소요 시간 담당 연락처를 문서화해 두세요.

스냅샷과 복원이 어떻게 동작하는지는 정책 문제인 동시에 플랫폼 문제이며, 정작 필요해지는 날이 오기 전에 확인해 둘 만합니다. 새 서버를 배포한다면, 저희 Windows VPS offers one-click images for Server 2022, 2019, 2016, and 2012 R2.

여기서는 한 가지 단서가 나머지 문단 전체보다 중요합니다. Server 2012는 레거시 애플리케이션 호환성 때문에 여전히 이미지 목록에 있지만, 보안을 강화한 구성을 위한 기본 이미지는 아닙니다. Microsoft의 Server 2012 지원 종료 공지 는 지원 종료일을 2023년 10월 10일로 명시하고 있으며, 유료 확장 보안 업데이트도 2026년 10월 13일에 완전히 끝납니다. Server 2016 역시 2027년 1월에 지원 종료를 앞두고 있으므로, 새로 구축해 공인 IP에 올릴 계획이라면 Server 2019나 2022로 시작하세요.

모니터링 및 로그: RDP, 보안, PowerShell

Windows RDP security log reference: Event 4625 for failed logons, Event 4624 with Logon Type 10 for successful RemoteInteractive sign-ins, Event 4634 for session termination, Event 4647 for user-initiated logoff, and PowerShell transcription, with an investigation path from a 4625 spike to source IP to 4624 Type 10 to PowerShell activity

Windows 로그에서 가치를 얻는 데 SIEM이 꼭 필요하지는 않습니다. 로그온 실패, 성공한 RDP 세션, PowerShell 기록부터 시작하세요. 이 세 가지 신호만으로도 소규모 서버에서 쓸 만한 모니터링 기준선이 만들어집니다.

  • 실패한 로그온에 대한 감사를 활성화하고 Event ID 4625 급증을 모니터링하세요.
  • 성공한 RDP 로그인은 Logon Type 10(RemoteInteractive)으로 필터링한 Event ID 4624로 추적하고, 세션 종료에는 4634를, 사용자가 직접 로그오프한 경우에는 4647을 사용하세요.
  • 정책으로 PowerShell 기록을 켜서 PowerShell의 입력과 출력이 기록으로 남게 하세요.

가시성이 확보되면 한 페이지짜리 하드닝 요약을 출력해 가까이 두세요. 여기서부터가 실제 운영의 시작입니다. 다음 패치와 정리 작업을 이끄는 것은 결국 알림이기 때문입니다.

Windows VPS 보안 강화 표

유지보수 작업 전이나 재구축 후에 빠르게 확인할 수 있는 요약입니다.

항목설정중요한 이유
Windows 업데이트보안 업데이트 자동 설치공개된 취약점을 신속하게 차단
관리자 계정기본 계정 비활성화 후 명명된 관리자 계정 사용알려진 공격 대상 제거
계정 잠금10회 시도 후 15분 잠금무차별 대입 공격 방어
NLA활성화됨인증되지 않은 RDP 차단
RDP 포트기본값 외 포트 사용스캐너 노출 최소화
IP 허용 목록RDP 접근 범위 제한노출 범위 축소
방화벽인바운드 기본 차단필요한 포트만 허용
SMBv1비활성화됨레거시 보안 취약점 제거
Defender실시간 보호, MDE 사용 시 변조 방지기본 악성코드 방어
백업매일 백업 + 복원 테스트복구 안전망 확보

위 내용은 현황을 한눈에 파악할 수 있는 요약입니다. 다음 섹션에서는 동일한 항목을 Linux 기준으로 비교하며, 팀 간 교차 학습에 도움이 됩니다.

보너스: Linux 보안 강화와 비교하기

일부 팀은 여러 플랫폼을 혼용합니다. 이 경우에도 핵심 원칙은 동일합니다. 정기적인 패치 적용, 명명된 관리자 계정, 강력한 SSH 또는 RDP, 그리고 기본 차단 방화벽이 그것입니다. 스택에 Linux 서버가 포함되어 있다면, 이 Windows 보안 계획은 안전한 Linux VPS 기준과도 잘 맞아떨어지므로, 어느 환경에서도 익숙한 플레이북을 사용할 수 있습니다.

이런 크로스 플랫폼 관점은 용도별로 현실적인 선택을 하도록 돕고, 하루 종일 SSH 키와 iptables를 다루면서 그룹 정책은 한 번도 열어본 적 없는 동료에게 건넬 자료가 되어 줍니다.

사용 사례별 빠른 선택 가이드

목록은 워크로드에 맞게 구성해야 합니다. 아래 간단한 매트릭스를 참고해 각 환경에 적합한 보안 제어를 선택하세요.

  • 1인 개발 머신: NLA를 필수로 하고, 현재 사용하는 IP 대역을 허용 목록에 넣고, 원한다면 스캐너 소음을 줄이기 위해 RDP 포트를 바꾸고, 주간 빠른 검사를 돌리세요. 스냅샷은 매일 남기고 한 달에 한 번 복원을 테스트하세요.
  • ERP나 회계용 중소기업 애플리케이션 서버: RDP를 VPN이나 RD Gateway 뒤에 두고, 관리자 권한을 제한하고, 레거시 프로토콜을 끄고, 4625 급증에 대한 알림을 추가하세요.
  • 소규모 팀을 위한 원격 데스크톱 팜: 게이트웨이로 접근을 일원화하고, MFA를 추가하고, 고유한 패스프레이즈를 사용하되 침해가 의심되면 변경하고, 인바운드와 아웃바운드 모두 방화벽 규칙을 좁게 유지하세요.
Windows VPS 구매

즉시 설정과 전체 관리자 RDP로 Windows VPS를 배포하세요.

Windows VPS 구매

자주 묻는 질문

RDP 포트 변경만으로 충분한가요?

아닙니다. 무작위 스캔을 줄여줄 뿐이며, NLA와 계정 잠금, IP 허용 목록은 여전히 필요하고, 아니면 VPN과 게이트웨이가 필요합니다. 포트 변경은 방패가 아니라 소음 차단으로 생각하세요.

RDP에 VPN가 필요한가요?

RDP가 인터넷에 노출되어 있다면 VPN이나 RD Gateway로 노출 면적을 줄이세요. 여기에 MFA와 방화벽 허용 목록을 더하면, 대부분의 소규모 팀이 운영할 수 있는 단순하고 강한 구성이 됩니다.

Windows VPS 패치 주기는 어떻게 해야 하나요?

제공업체의 유지보수 시간대가 있다면 그에 맞추고, 운영체제와 애플리케이션의 보안 업데이트는 배포 직후에 적용하세요. 공격 경로는 대개 외부 노출과 알려진 취약점에서 시작되므로 패치를 미루지 마세요. 서버에 고객 데이터가 있다면 패치 주기를 문서화된 정책으로 정해 두어야 실제로 지켜집니다.

NLA란 무엇이며, 왜 활성화해야 하나요?

Network Level Authentication은 RDP 세션이 시작되기 전에 로그온을 요구하므로, 인증되지 않은 코드 경로를 차단하고 자원도 아낍니다. Microsoft는 대부분의 환경에서 NLA를 권장합니다. 활성화되어 있는지 확인하고 그대로 켜 두세요.

소규모 서버에서 무엇을 모니터링해야 할까요?

4625 로그온 실패, 성공한 RDP 로그인을 나타내는 Logon Type 10의 4624, 세션 종료 4634, 사용자가 직접 로그오프한 4647, 그리고 PowerShell 기록부터 시작하세요. 여기에 주간 검토와 급증에 대한 간단한 알림 규칙을 더하면 됩니다. 작은 서버라면 완전한 플랫폼을 구매하지 않고도 이 정도로 충분한 가시성을 얻습니다.

공유

블로그 더 보기

계속 읽기.

배포할 준비가 되셨나요? 월 $2.48부터.

2008년부터 독립 클라우드. AMD EPYC, NVMe, 40 Gbps. 14일 환불 보장.