보안

지원 버전: Linkerd 2.16+ 마지막 업데이트: 2026년 2월 22일

개요

Linkerd는 보안을 핵심 가치로 삼아 설정 없이 자동으로 mTLS를 적용합니다. 이 문서에서는 자동 mTLS, 워크로드 ID 시스템, 인가 정책, 인증서 관리, 외부 CA 통합 등을 상세히 설명합니다.

보안 아키텍처

spinner

자동 mTLS

Linkerd의 가장 강력한 보안 기능은 설정 없이 모든 메시 트래픽을 자동으로 암호화하는 것입니다.

mTLS 동작 방식

spinner

mTLS 특성

특성
설명

제로 설정

별도 설정 없이 자동 활성화

투명한 암호화

애플리케이션 코드 변경 불필요

상호 인증

클라이언트와 서버 모두 인증

자동 갱신

인증서 만료 전 자동 갱신

TLS 1.3

최신 TLS 프로토콜 사용

mTLS 상태 확인

비메시 트래픽 처리

spinner

메시 외부에서 오는 트래픽은 자동으로 감지되어 평문으로 처리됩니다:

워크로드 ID 시스템

Linkerd는 SPIFFE 호환 ID 시스템을 사용하여 각 워크로드에 고유한 ID를 부여합니다.

SPIFFE ID 형식

ID 발급 프로세스

spinner

ID 확인

인가 정책 (Authorization Policy)

Linkerd는 Server, ServerAuthorization, AuthorizationPolicy를 통해 세밀한 접근 제어를 제공합니다.

정책 모델

spinner

Server 리소스

Server는 특정 Pod의 인바운드 트래픽을 정의합니다.

ServerAuthorization 리소스

ServerAuthorization은 Server에 대한 접근 권한을 정의합니다.

AuthorizationPolicy (Gateway API)

Linkerd 2.14+에서는 Gateway API의 AuthorizationPolicy도 지원합니다.

정책 모드 설정

Default-Deny (권장)

모든 트래픽을 기본적으로 거부하고 명시적으로 허용된 트래픽만 통과:

Default-Allow

모든 트래픽을 기본적으로 허용 (기존 동작과 호환):

정책 모드 옵션

모드
설명

deny

모든 트래픽 거부 (default-deny)

all-unauthenticated

모든 트래픽 허용

all-authenticated

메시 mTLS 트래픽만 허용

cluster-unauthenticated

클러스터 내부 트래픽 허용

cluster-authenticated

클러스터 내부 mTLS 트래픽만 허용

실전 예제: 마이크로서비스 정책

인증서 관리

인증서 계층 구조

spinner

Trust Anchor 관리

Identity Issuer 관리

인증서 로테이션

Trust Anchor 로테이션 (다운타임 없이)

자동 로테이션 모니터링

외부 CA 통합

cert-manager 통합

Vault 통합

외부 CA Helm 설정

네트워크 vs 애플리케이션 보안

보안 계층

spinner
계층
Linkerd 역할
애플리케이션 역할

전송 암호화

mTLS (자동)

HTTPS (선택적)

서비스 인증

SPIFFE ID

API 키, JWT

서비스 인가

ServerAuthorization

RBAC, 권한 확인

데이터 검증

-

입력 검증, 살균

심층 방어 예제

보안 모니터링

정책 위반 감지

인증서 상태 모니터링

Prometheus 알림 규칙

다음 단계

참고 자료

마지막 업데이트