TLS

이메일 및 보안
전송 계층 보안입니다.
← 용어집으로 돌아가기

TLS란?

TLS(전송 계층 보안)는 컴퓨터 네트워크에서 안전한 통신을 제공하는 암호화 프로토콜입니다. SSL(보안 소켓 계층)의 후속 기술이며 HTTPS 연결, 보안 이메일 전송(STARTTLS)과 여러 암호화 인터넷 프로토콜의 기반입니다. 브라우저의 자물쇠 아이콘은 TLS가 기기와 서버 사이의 데이터를 암호화하고 있음을 나타냅니다.

TLS 버전의 역사

버전연도상태
SSL 2.01995폐기됨, 안전하지 않음
SSL 3.01996폐기됨, 안전하지 않음
TLS 1.01999폐기됨
TLS 1.12006폐기됨
TLS 1.22008현재 표준
TLS 1.32018최신 권장 버전

TLS 작동 방식

TLS 핸드셰이크(TLS 1.2)

Client                              Server

│ │

├──── ClientHello ─────────────────► │

│ (supported ciphers, random) │

│ │

│ ◄─── ServerHello ──────────────────┤

│ (selected cipher, cert) │

│ │

├──── Key Exchange ────────────────► │

│ (encrypted pre-master secret) │

│ │

│ ◄─── Finished ─────────────────────┤

│ │

└──── Encrypted Data ◄──────────────►┘

TLS 1.3의 개선점

TLS 구성 요소

인증서

암호 스위트

사용할 암호화 알고리즘을 정의합니다.

TLS_AES_256_GCM_SHA384 (TLS 1.3)

TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (TLS 1.2)

│ │ │ │

│ │ │ └── Hash algorithm

│ │ └── Encryption algorithm

│ └── Key exchange

└── Protocol

TLS 사용 사례

애플리케이션프로토콜포트
웹 브라우징HTTPS443
이메일(IMAP)IMAPS993
이메일(SMTP)SMTPS465
이메일 제출STARTTLS587
FTPFTPS990

서버 구성

Nginx TLS 구성

ssl_protocols TLSv1.2 TLSv1.3;

ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256;

ssl_prefer_server_ciphers off;

ssl_session_cache shared:SSL:10m;

모범 사례

1. TLS 1.2 또는 1.3 사용: 이전 버전을 비활성화합니다.

2. 강한 암호 스위트 사용: AEAD 암호를 우선합니다.

3. HSTS 활성화: TLS 연결을 강제합니다.

4. 인증서 관리: 갱신을 자동화합니다.

5. 순방향 비밀성: ECDHE 키 교환을 사용합니다.

6. 정기적인 테스트: SSL Labs, testssl.sh를 사용합니다.

TLS 구성 테스트

# OpenSSL test

openssl s_client -connect example.com:443 -tls1_3

# Check certificate

echo | openssl s_client -connect example.com:443 2>/dev/null | openssl x509 -text

TLS는 안전한 인터넷 통신의 기반입니다. 전송 중인 데이터를 암호화해 도청, 변조, 중간자 공격으로부터 보호합니다.

이 지식을 활용하세요

DomScan의 API를 사용하여 도메인 가용성, 상태 등을 확인하세요.