# 새 VPS 보안 강화
> 새 VPS 보안 강화는 약 20분이 걸립니다: 비밀번호 및 루트 SSH 로그인 비활성화, 키 전용 인증 활성화, nftables 인바운드 기본 거부 구성, 무인 보안 업그레이드 활성화, fail2ban 설치. 이 5단계는 실제 침해의 대다수를 제거합니다.
**Source:** https://incognitovps.com/ko/guides/harden-a-new-vps
**Updated:** 2026-07-17

## 서버를 실제로 침해하는 요소

제로데이가 아닙니다. 실제로는: 약한 자격 증명에 대한 SSH 비밀번호 무차별 대입, 수개월 동안 패치 없이 방치된 서비스, 기본 비밀번호가 노출된 관리 패널, 운영자가 설치한 애플리케이션 취약점. 목록은 지루하며 15년 동안 변하지 않았습니다.

아래 체크리스트는 분당 제거되는 위험량에 따라 정렬되었습니다. 순서대로 수행하고 인내심이 다하면 중지하세요 — 여전히 대부분의 위험을 제거한 것입니다.

## 1단계 — SSH 키만

이 한 가지 변경만으로 가장 흔한 공격이 완전히 차단됩니다. Ed25519 키를 생성하고, 공개 키 절반을 서버에 복사한 다음, `/etc/ssh/sshd_config`를 편집하여 `PasswordAuthentication no`, `PermitRootLogin prohibit-password`, `KbdInteractiveAuthentication no`를 설정하세요.

첫 번째 터미널을 닫기 전에 두 번째 터미널에서 키가 작동하는지 테스트하세요. 잠기는 것은 당황스럽고, 콘솔 접근이 가능한 머신에서는 완전히 복구 가능하지만, 그래도 올바른 순서로 진행하세요.

## 2단계 — 기본 거부 방화벽

최신 Debian과 Ubuntu에서는 nftables를, RHEL 계열에서는 firewalld를 사용합니다. 인바운드는 기본 거부, established와 related는 허용, SSH 포트는 허용, 워크로드에 실제로 필요한 포트만 허용하고 나머지는 모두 차단하세요.

여기서 중요한 원칙은 "그 외에는 아무것도 허용하지 않는다"는 점입니다. 디버깅 중에 추가한 허용 규칙을 제거하지 않고 그대로 두면, 그 방화벽은 아무 일도 하지 않는 방화벽입니다.

- 기본 정책: 인바운드 드롭, 아웃바운드 허용
- established, related 허용
- 루프백 허용
- SSH 포트 허용, 이상적으로는 요율 제한
- 워크로드 포트 허용, 명시적으로 나열
- ICMP echo 허용 — 경로 MTU 발견을 깨뜨리지 마세요

## 3단계 — 자동 보안 업데이트

Debian과 Ubuntu에서는 `unattended-upgrades`를, RHEL 계열에서는 `dnf-automatic`을 보안 업데이트 전용으로 구성하세요. 대부분의 침해는 몇 달 전에 패치된 취약점을 악용합니다.

워크로드가 허용한다면 유지보수 기간에 자동 재부팅을 활성화하세요. 커널 업데이트는 재부팅 전에는 아무 효과가 없으며, 400일 가동 시간과 11개의 미적용 커널 CVE가 있는 서버는 자랑거리가 아닙니다.

## 4단계 — fail2ban, 그리고 그 진정한 가치에 대한 메모

패스워드 인증이 이미 비활성화된 경우 fail2ban은 실제 침해를 비교적 적게 막습니다. 하지만 로그 노이즈를 대폭 줄여주는데, 이는 중요합니다. 수천 번의 실패한 시도로 가득 찬 로그는 아무도 읽지 않는 로그이고, 읽히지 않는 로그는 실제 침입이 몇 주 동안 발견되지 않는 이유이기 때문입니다.

기본 sshd 감옥이면 충분합니다. 인터넷에 노출하는 다른 서비스가 있으면 감옥을 추가하세요.

## 5단계 — 공격 표면 줄이기

`ss -tlnp`를 실행하여 열려 있는 포트를 확인하세요. 기본 설치에서는 실행 중인지도 몰랐고 필요하지 않은 서비스가 포함되는 경우가 많습니다. 방화벽으로 막기보다는 제거하세요. 설치되지 않은 소프트웨어에는 취약점이 없습니다.

로컬 접근만 필요한 서비스는 0.0.0.0 대신 127.0.0.1에 바인딩하세요. 방화벽 뒤에서 모든 인터페이스에 리스닝하는 데이터베이스는 잘못된 구성 하나만으로 공개될 수 있습니다.

## 건너뛸 사항

SSH 포트 변경은 로그 노이즈를 줄이지만 표적 공격을 막지는 못합니다. 원한다면 해도 되지만, 보안 조치로 간주하지 마세요. 포트 노킹은 미미한 이득을 위해 복잡성을 추가합니다. 침입 탐지 시스템은 단일 서버에서 아무도 분류하지 않는 알림을 생성합니다.

위의 다섯 가지 외에 한 가지 더 의미 있는 조치를 원한다면, 다른 관할권의 암호화된 오프사이트 백업을 실제로 복원 테스트를 통해 검증하는 것입니다. 복구 능력은 예방 레이어 하나 더 추가하는 것보다 가치가 있습니다.


## 자주 묻는 질문

### SSH 포트를 변경하는 것이 가치가 있나요?

로그 노이즈 관점에서는 그렇습니다. 보안 관점에서는 아닙니다. 기회주의적 스캐너는 막을 수 있지만 표적 공격은 막지 못합니다. 로그가 조용해지는 것이 좋다면 변경하되, 통제 조치로 간주하지 마세요.

### SSH 키를 사용한다면 fail2ban이 필요한가요?

직접적인 보안 관점에서는 거의 필요 없습니다. 로그 위생 관점에서는 필요합니다. 수천 번의 실패한 시도는 로그를 읽을 수 없게 만들고, 읽히지 않는 로그는 실제 침입이 발견되지 않는 이유입니다.

### 자동 재부팅을 활성화해야 하나요?

워크로드가 허용한다면, 유지보수 기간에 활성화하세요. 커널 패치는 재부팅 전에는 아무 효과가 없습니다. 커널 CVE가 쌓인 장기간 가동은 업적이 아니라 책임입니다.


---

Incognito VPS — 16개 위치에서 오프쇼어 VPS, 베어메탈 및 GPU 서버 제공, 그중 8곳은 법적 속성으로 선택되었습니다. 신분 확인 불필요, 암호화폐 전용 결제, 55초 내 배포.
Operating since 2020. 16 locations, 8 of them privacy jurisdictions. AS204287.
Payment: BTC, XMR, ETH, USDT, USDC, LTC, TRX, SOL, BNB, DOGE, TON, DAI. No identity verification at any point.
Catalogue: https://incognitovps.com/pricing.md · API: https://incognitovps.com/openapi.json · Index: https://incognitovps.com/llms.txt