| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
Tags
- 딥레이서
- grafana on kubernetes
- 메탈LB
- 솔데스크
- 쿠버네티스 컴포넌트
- 그라파나 시각화
- terraform
- Aurora cluster
- blue-green
- 딥레이서 보상함수
- Solution Architecture
- 로드밸런서 컨트롤러
- Firelens
- helm
- Kubernetes
- github action 사용법
- kubernetes 동작 원리
- AWS 딥레이서
- SAA 합격 후기
- Kubernets on Jenkins
- livenessPorbe
- 깃허브 액션
- 쿠버네티스
- EKS 클러스터
- EFS CSI Driver
- 그라파나 대시보드
- Prometheus install
- LoadBalancer Controller
- jenkins
- headless service
Archives
mingming
IPSec VPN Phase 1 & Phase 2 본문
Phase 1: IKE SA 협상 (보안 채널 설정)
1. 목적
Phase 1은 VPN 장비가 서로를 인증하고, 안전한 IKE SA(보안 채널)를 생성하는 단계입니다.
이 IKE SA는 Phase 2에서 실제 데이터 트래픽 보호를 위한 IPSec SA의 기반이 됩니다.
2. 배경 지식
- IPSec: Layer3 에서 데이터 암호화 및 인증을 통해 안전한 통신 제공
- IKE (Internet Key Exchange): 안전한 키 교환과 SA 생성 프로토콜
- HMAC (Hash-based Message Authentication Code): 메시지 무결성 검증용 해시 기반 인증 코드
- Diffie-Hellman (DH): 안전한 공유 비밀 키 생성용 공개키 교환 알고리즘
3. 구성 요소
| 항목 | 설명 | 예시 |
| 인증 방식 | VPN 장치 인증 수단 | PSK, Digital Certificate |
| 암호화 알고리즘 | 데이터 보호 | AES-128/192/256, 3DES |
| 해시/무결성 | 메시지 무결성 | SHA-1, SHA-256, MD5 |
| DH 그룹 | 키 교환 안전 수준 | 2, 5, 14, 19, 20 |
| IKE Version | 프로토콜 버전 | IKEv1, IKEv2 |
| LifeTime | SA 유효 기간 |
4. Phase 1 – IKE SA 협상 과정
4.1 단계 1: Initiation
- Initiator → Responder: SA Proposal 전달
- 포함 정보: 암호화/해시/인증 방식, DH 그룹, LifeTime
- Responder → Initiator: 지원 가능한 옵션 선택
4.2 단계 2: DH 키 교환
- Initiator와 Responder 상호 공개키 교환 → 공유 비밀 키 생성
- Nonce(Ni, Nr) + DH 공개값으로 세션 키 파생
- SK_d: Phase2 데이터 키
- SK_ai/SK_ar: HMAC 키
- SK_ei/SK_er: 암호화 키
4.3 단계 3: 인증
- Initiator → Responder
- SK_ei로 암호화, SK_ai로 HMAC 생성
- IDi + AUTH 전송
- Responder 처리
- SK_ei 복호화, SK_ai HMAC 검증
- Responder → Initiator
- SK_er로 암호화, SK_ar HMAC 생성
- IDr + AUTH 전송
- Initiator 처리
- SK_er 복호화, SK_ar HMAC 검증
- 결과: 상호 인증 완료 → IKE SA 확립
5. Phase 1 메시지 흐름 (IKEv1 Main Mode)
| 단계 | 메시지 | 역할 |
| 1 | Initiator → Responder: SA 제안 | 암호화/해시/인증 방식 제시 |
| 2 | Responder → Initiator: SA 수락 | 제안 수락, 협상 완료 |
| 3 | DH + Nonce 상호 교환 | 공유 비밀 키 계산, SK_* 파생 |
| 4 | Initiator → Responder: 인증 메시지 | ID + AUTH 암호화 전송 |
| 5 | Responder → Initiator: 인증 메시지 | ID + AUTH 암호화 전송 |
| 6 | Phase 1 완료 | IKE SA 확립, Phase 2 준비 |
Phase 2: IPSec SA 협상 (데이터 보호 채널)
1. 목적
Phase 2는 실제 데이터 트래픽을 암호화하기 위한 IPSec SA를 설정하는 단계입니다.
2. 배경 지식
- SPI: 각 SA를 식별하는 고유 번호
- Transform Set: 사용할 암호화/인증/PFS 방식 결정
- PFS(Perfect Forward Secrecy): DH 재교환으로 이전 키 노출에도 안전한 통신 제공
3. Phase 2 – IPSec SA 협상 과정
3.1 IPSec SA 제안 (Initiator → Responder)
- 제안 항목: 프로토콜(AH/ESP), 암호화/해시 알고리즘, Lifetime
- Phase 1 IKE SA를 이용해 메시지 암호화 + HMAC 무결성 검증
3.2 SA 수락 및 응답 (Responder → Initiator)
- 제안 중 허용 가능한 옵션 선택
- PFS 사용 시 DH 교환 및 Nonce 사용
- Phase 1 키(SK_ei, SK_ai 등)로 암호화/무결성 검증
3.3 인증 및 SA 확립
- Initiator → Responder
- SK_ei로 암호화, SK_ai로 HMAC 생성
- 이전 단계 교환값(Ni, Nr) 기반 IPSec 세션 키 계산, HASH 전송
- Responder 처리
- SK_ei 복호화, SK_ai HMAC 검증
- HASH 확인 → IPSec SA 생성
- Responder → Initiator
- SK_er 암호화, SK_ar HMAC 생성
- IDr + 인증 데이터 전송
- Initiator 처리
- SK_er 복호화, SK_ar HMAC 검증 → IPSec SA 확립 완료
4. Phase 2 메시지 흐름 (Quick Mode)
| 단계 | 메시지 | 역할 |
| 1 | Initiator → Responder: IPSec SA 제안 | 프로토콜(AH/ESP), 암호화/해시 알고리즘, Lifetime 등 제안. Phase 1에서 확립된 IKE SA를 이용해 암호화(HMAC 포함) |
| 2 | Responder → Initiator: SA 수락 | 협상된 IPSec SA 선택, 제안 수락 |
| 3 | (Optional) DH 교환 | PFS 적용 시, 새로운 공유 키 계산 |
| 5 | Phase 2 완료 | 상호 인증 완료 및 IPSec SA 확립 → 실제 데이터 트래픽 암호화 가능 |
요약
- Phase 1: IKE SA 생성 → 안전한 제어 채널 확보
- Phase 2: IPSec SA 생성 → 실제 데이터 트래픽 암호화
- 양 단계 모두 암호화, HMAC, Nonce, DH 키를 이용하여 인증, 무결성, 기밀성 확보