Proxmox 보안 하드닝
Proxmox 홈랩을 장기 운영할 때 필요한 기본 보안 기준.
Proxmox 홈랩을 장기 운영할 때 필요한 기본 보안 기준.
보안 목표
Proxmox는 VM과 LXC를 관리하는 상위 제어면이다. Proxmox가 뚫리면 그 위의 모든 VM과 컨테이너가 위험해진다.
우선순위:
- 관리 접근 제한
- 계정과 권한 분리
- 업데이트 유지
- 백업 보호
- 방화벽 정책
- 로그와 알림
관리 UI 보호
웹 UI는 기본적으로 8006/tcp를 사용한다.
권장:
- 인터넷에 직접 노출하지 않기
- VPN 또는 관리망에서만 접근
- 강한 비밀번호
- 가능하면 2FA 사용
- root 계정 일상 사용 금지
SSH 보안
# SSH 설정 확인
sshd -T
systemctl status ssh
권장:
- key 기반 로그인
- root SSH 직접 로그인 제한 검토
- 관리 IP 대역 제한
- 불필요한 포트포워딩 금지
- fail2ban 또는 방화벽 정책 검토
사용자와 권한
Proxmox 권한은 path와 role을 기준으로 부여된다.
예시:
/ 전체
/nodes/pve-01 특정 노드
/vms/101 특정 VM
/storage/local-zfs 특정 스토리지
운영 기준:
- root는 긴급용
- 개인 계정은 일상 운영용
- 자동화는 API token
- 최소 권한 원칙 적용
- 토큰은 용도별로 분리
2FA
관리 계정에는 2FA를 붙이는 것이 좋다.
대상:
- 관리자 계정
- 외부 접속 가능성이 있는 계정
- API 권한을 관리하는 계정
단, 2FA 설정 전에는 복구 방법을 확보한다. 인증 앱 분실 시 들어갈 수 있는 긴급 계정이 필요하다.
방화벽 계층
Proxmox 방화벽은 Datacenter, Node, VM/CT 계층으로 나뉜다.
권장 접근:
- 관리망 정의
- Datacenter 방화벽 활성화
- Node 관리 포트 제한
- VM/CT 서비스별 허용
- 로그 확인 후 점진적으로 강화
관리 포트 예시:
| 포트 | 용도 |
|---|---|
| 22 | SSH |
| 8006 | Proxmox Web UI |
| 5900+ | 콘솔/VNC 계열 |
| 클러스터 포트 | corosync 등 |
업데이트 정책
apt update
apt list --upgradable
apt full-upgrade
운영 기준:
- 보안 업데이트는 미루지 않기
- 커널/ZFS 업데이트 전 백업
- 재부팅 필요 여부 확인
- 클러스터는 노드별 순차 업데이트
인증서
기본 self-signed 인증서는 내부 홈랩에서는 쓸 수 있지만, 장기 운영에서는 신뢰 가능한 인증서를 검토한다.
선택지:
- 내부 CA
- ACME DNS challenge
- reverse proxy 앞단 TLS
관리 UI를 외부에 직접 노출하는 방식은 피한다.
백업 보호
백업 저장소는 공격자가 같이 지우지 못하게 보호해야 한다.
권장:
- PBS 계정 권한 분리
- 백업 저장소 별도 장비
- 보존 정책
- 정기 verify
- 삭제 권한 제한
로그 확인
journalctl -u pveproxy -n 100
journalctl -u pvedaemon -n 100
cat /var/log/auth.log
볼 것:
- 실패한 로그인
- 알 수 없는 IP 접근
- 권한 변경
- 백업 실패
- 방화벽 drop 로그
하드닝 체크리스트
- root 비밀번호 강함
- 개인 관리자 계정 생성
- 2FA 적용
- SSH key 로그인
- 관리 UI 접근 제한
- no-subscription 저장소 설정 확인
- 정기 업데이트
- 백업 저장소 분리
- 방화벽 정책 적용
- API token 최소 권한
관련 노트
- 상위: 00-MOC-Proxmox
- 초기 설정: 01-02-Proxmox-초기설정
- 네트워크: 02-01-Proxmox-네트워킹
- 백업: 03-01-Proxmox-백업-복구
- Linux 보안: 03-03-보안-하드닝