보안
관리자 위치: System › Admin › Console security (
/account), Admin users (/users); System › Settings › Customer logins (/settings/login).
관리자 콘솔
2단계 인증 (TOTP)
콘솔은 인터넷을 통해 접근 가능하므로 TOTP를 활성화하세요.
- System › Admin › Console security를 엽니다.
- Two-factor authentication (TOTP) 아래에서 Start setup을 클릭합니다.
- Google Authenticator, Authy, 1Password 또는 Bitwarden으로 QR 코드를 스캔한 다음 6자리 코드를 입력합니다.
허용된 콘솔 IP 범위
Allowed console IP ranges에 줄당 하나의 IP 또는 CIDR(IPv4 또는 IPv6)을 입력합니다. 비워 두면 어디서나 허용됩니다. 이 범위를 벗어나면 로그인과 관리자 API 모두 차단됩니다.
잠금 방지
페이지에 현재 IP가 표시되며 새 목록에 해당 IP가 포함되어야 합니다. + Add my IP를 사용하세요. 만약 잠긴 경우 서버에서 emergency access를 사용하세요.
비밀번호 변경
Current password, New password, Confirm new password를 입력합니다. 길고 고유한 비밀번호를 사용하세요(12자 이상; 설치 마법사는 첫 번째 관리자에 대해 12자를 필수로 요구합니다).
관리자 계정 및 역할
System › Admin › Admin users를 열고 + Create account를 사용합니다.
| 역할 | 액세스 |
|---|---|
admin | 관리자 API에 대한 전체 액세스 |
staff | 전체 시스템에 대한 읽기 전용 |
user | 단일 고객 리소스에 대한 읽기 전용 보기 |
루트 계정은 setup wizard에서 생성된 계정입니다. 행 작업: Edit, Reset PW, Key, Delete. 비밀번호는 솔티드 해시로 저장되며, 계정을 변경하거나 잠그면 즉시 세션이 종료됩니다.
고객 로그인
System › Settings › Customer logins를 엽니다.
| 설정 | 작동 내용 |
|---|---|
| Google sign-in | 활성화한 다음 OAuth 클라이언트 ID와 시크릿을 입력합니다. 페이지에 표시되는 Callback URL을 Google Cloud Console › APIs & Services › Credentials › OAuth client ID › Authorized redirect URIs에 복사합니다. Test configuration을 사용합니다. |
| GitHub login | 동일하게 GitHub › Settings › Developer settings › OAuth Apps › Authorization callback URL을 사용합니다 |
| Passkey | 지문, PIN 또는 하드웨어 키 로그인으로, 기본적으로 켜져 있습니다. 패스키는 도메인에 바인딩되며 각 리셀러 도메인은 개별적으로 작동합니다. 리브랜딩 후 고객이 유용한 힌트를 볼 수 있도록 Legacy passkey Domain에 이전 도메인을 입력하세요 |
| 로그인 방식 추가 시 재인증 | 패스키 추가 또는 Google/GitHub 연동 전에 비밀번호를 다시 확인합니다(기본값: 꺼짐) |
| Captcha | 가입 시 Cloudflare Turnstile 또는 Google reCAPTCHA 사용: 활성화하고 공급자를 선택한 후 사이트 키와 시크릿 키를 입력합니다 |
| Block e-mail domains | 한 줄에 하나의 도메인(최대 2000개). 일치하는 주소는 가입 시 거부되며 email_domain_blocked |

기본 제공 정책
| 정책 | 값 |
|---|---|
| Customer password | 최소 10자, 영문자와 숫자 |
| Customer session | 30일; "고객으로 로그인" 세션은 1시간 동안 유지됩니다 |
| E-mail verification | 영업 설정에서 require e-mail verified가 켜져 있을 때 VM 생성 전에 필수입니다 |
| Anti-carding | 최소 충전 금액 미만인 계정은 제한된 수의 VM만 생성할 수 있습니다 |
서버 강화
- 설정 및 TLS 완료 후 포트 3000은 닫힙니다. Installation을 참조하세요.
- 서비스는 제한된 systemd 샌드박스가 적용된 권한 없는
nexcmp사용자로 실행됩니다. - API 키, 결제 자격 증명 및 SMTP 비밀번호는 암호화되어 저장되며, 마스터 키는
/var/lib/nexcmp/secrets에 있습니다. backups을 보호하세요. - 릴리스는 설치 전에 SHA-256 및 Ed25519 서명으로 검증됩니다.