TLS

メール & セキュリティ
トランスポート層セキュリティ。
← 用語集に戻る

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)

クライアント                           サーバー

│ │

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

│ (サポート暗号、ランダム) │

│ │

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

│ (選択暗号、証明書) │

│ │

├──── キー交換 ────────────────► │

│ (暗号化前マスター秘密) │

│ │

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

│ │

└──── 暗号化データ ◄──────────────────┘

TLS 1.3改善

TLSコンポーネント

証明書

暗号スイート

使用される暗号化アルゴリズムを定義します:

TLS_AES_256_GCM_SHA384(TLS 1.3)

TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384(TLS 1.2)

│ │ │ │

│ │ │ └── ハッシュアルゴリズム

│ │ └── 暗号化アルゴリズム

│ └── キー交換

└── プロトコル

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以上を使用: 古いバージョンを無効化

2. 強力な暗号スイート: AEAD暗号を優先

3. HSTSを有効化: TLS接続を強制

4. 証明書管理: 更新を自動化

5. 前方秘密: ECDHEキー交換を使用

6. 定期的なテスト: SSL Labs、testssl.sh

TLS設定のテスト

# OpenSSLテスト

openssl s_client -connect example.com:443 -tls1_3

# 証明書をチェック

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

TLSはセキュアなインターネット通信の基礎で、傍受、改ざん、および中間者攻撃に対してデータを保護するために転送中にデータを暗号化します。

この知識を実践する

DomScan の API を使用してドメインの可用性、状態などを確認します。