아키텍처

Alpacon의 전체 시스템 아키텍처와 작동 원리를 설명합니다.

개요

Alpacon은 네트워크 접근, 신원 관리, 감사 기능을 하나의 플랫폼에서 제공하는 통합 액세스 게이트웨이입니다.

기존 방식의 문제점:

  • 네트워크 접근: SSH/VPN의 복잡성과 보안 취약점
  • 신원 관리: 분산된 로컬 시스템 관리
  • 감사: 분산된 syslog나 개별 로깅 플랫폼

Alpacon은 이 모든 것을 하나의 통합 플랫폼으로 해결합니다.

시스템 구성

네트워크 접근: Websh 프로토콜

Alpacon은 자체 개발한 Websh 프로토콜을 사용하여 확장성과 보안을 동시에 보장합니다.

역방향 연결 아키텍처

[서버] --outbound--> [Alpacon cloud] <--inbound-- [클라이언트]
         (HTTPS/WSS)                    (HTTPS/WSS)

주요 특징:

  • 서버에 인바운드 포트 불필요 (포트 22 노출 제거)
  • 공격 벡터 완전 제거
  • 항상 TLS 암호화 연결
  • 웹 친화적 프로토콜

온디맨드 터널링

  1. 사용자가 서버 접근 요청
  2. 프록시를 위한 터널 즉시 구성
  3. 사용자와 서버 모두 프록시에 연결
  4. 안전한 인증 및 중계
  5. 세션 종료 시 터널 해제

접근성: 세션 지속성

Alpacon의 Websh 세션은 네트워크 일시적 문제에도 안정적으로 작동합니다.

특징:

  • VPN 불필요한 클라우드 기반 연결
  • 사용자가 명시적으로 종료하지 않는 한 세션 유지
  • 네트워크 재연결 시 자동 세션 복구
  • 모바일 브라우저에서도 완전한 쉘 액세스

리소스 관리

모든 서버 자산을 중앙에서 통합 관리합니다.

간단한 서버 등록

Alpacon 워크스페이스(서버서버 연결)를 통해 서버를 등록하고 생성된 설치 스크립트를 실행하세요. 전체 프로세스는 5분 미만이 소요됩니다.

단계별 지침은 빠른 시작 가이드를 참조하세요.

제공 기능:

  • 실시간 리소스 상태 모니터링
  • 연결 상태 알림
  • 그룹별 권한 관리
  • 역할 기반 접근 제어

주요 컴포넌트

1. Alpamon agent (서버 측)

서버에 설치되어 Alpacon cloud와 통신하는 경량 에이전트입니다.

기능:

  • 아웃바운드 HTTPS/WSS 연결 관리
  • 시스템 상태 모니터링
  • 명령 실행 및 파일 전송
  • 자동 업데이트

2. Alpacon cloud (중앙 플랫폼)

모든 연결과 관리를 중계하는 클라우드 서비스입니다.

구성 요소:

  • Access Gateway: 연결 중계 및 프록시
  • Identity Provider: 사용자 인증 및 권한 관리
  • Audit Logger: 모든 활동 로깅 및 모니터링
  • API Server: REST API 및 CLI 지원

3. 클라이언트 (사용자 측)

다양한 방식으로 서버에 접근할 수 있습니다.

접근 방법:

  • 웹 브라우저: 추가 설치 없이 즉시 접근
  • Alpacon CLI: 명령줄 인터페이스
  • REST API: 프로그래매틱 접근
  • 모바일: 모바일 브라우저 지원

신원 및 접근 관리 (IAM)

중앙화된 신원 관리

모든 서버 접근 신원을 중앙에서 관리하고 프로비저닝합니다.

프로세스:

  1. 새 직원 → Alpacon 초대
  2. 첫 접속 시 자동 ID 프로비저닝
  3. 권한 변경 시 자동 동기화
  4. 퇴사 시 즉시 접근 차단

강화된 인증

지원 MFA 방식:

  • Biometric (생체 인증)
  • Hardware security key
  • OTP (One-Time Password)
  • Email
  • SMS

통합 로그인:

  • Google Workspace
  • SAML (곧 지원 예정)

Passwordless 시스템 계정

  • 모든 시스템 계정은 passwordless로 생성
  • Alpacon을 통해서만 접근 가능
  • SSH 키/패스워드 직접 사용 차단

통합 및 상호운용성

CI/CD 파이프라인 통합

SSH 키 대신 세밀한 권한의 API 토큰을 사용합니다.

CLI 사용 예시

# 로그인
alpacon login https://alpacon.io/my-workspace -t "alpat-..."
 
# 파일 업로드
alpacon cp docker-compose.yml prod-docker:/opt/my-app/
alpacon cp .env prod-docker:/opt/my-app/
 
# 명령 실행
alpacon websh prod-docker docker compose -p my-app --env-file .env up -d

REST API 사용 예시

curl -X POST https://your-workspace.us1.alpacon.io/api/events/commands/ \
     -H "Content-Type: application/json" \
     -H "Authorization: Token alpat-..." \
     -d '{"server": "7a50ea6c-2138-4d3f-9633-e50694c847c4", "line": "docker ps", "username": "docker"}'

장점:

  • Fine-grained 명령 제한
  • 토큰별 허용 명령만 실행 가능
  • CI 악용 가능성 차단

감사 (Auditing)

모든 서버 접근과 활동을 완전히 추적합니다.

제공 기능

  • 실시간 모니터링: 사용자 터미널 활동 실시간 추적
  • 이상 탐지: 비정상 활동 감지 시 즉시 차단
  • 사후 감사: 실행된 모든 명령 검토 가능
  • Full visibility: 모든 사용자 활동 완전 가시성

감사 로그 내용

  • 누가 (사용자/토큰)
  • 언제 (타임스탬프)
  • 어디서 (서버/IP)
  • 무엇을 (실행 명령/결과)
  • 왜 (세션 컨텍스트)

보안 설계 원칙

Zero Trust 아키텍처

  • Perimeter 기반 보안 전략 탈피
  • 모든 접근 요청 검증
  • 최소 권한 원칙
  • 지속적인 검증

Defense in Depth

  • 다층 보안 구조
  • Single point of failure 방지
  • 암호화된 통신
  • 감사 추적

현대적 접근

  • SSH는 사람을 위해 설계됨 → Alpacon은 사람과 기계 모두 지원
  • 정적 키 관리 → 동적 토큰 관리
  • 분산 로깅 → 중앙화된 감사

가용성

  • 클라우드 서비스로 이중화
  • 고가용성 보장
  • 자동 페일오버
  • 글로벌 리전 지원