正式なドキュメントは英語版であり、この日本語訳はAI支援翻訳により作成された参考用のものです。日本語訳の一部の内容は人間によるレビューがまだ行われていないため、翻訳のタイミングにより英語版との間に差異が生じることがあります。最新かつ正確な情報については、英語版をご参照ください。

TLSのサポート

  • プラン: Free、Premium、Ultimate
  • 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated

GitLabでは、トランスポートレイヤーセキュリティ(TLS)を採用して、インターネットを介したデータのキーとなる情報の安全性を保護することにより、ユーザーとプラットフォーム間のデータ伝送のセキュリティを優先しています。

サイバーセキュリティの脅威が進化し続ける中、GitLabは、最高水準のセキュリティを維持することに引き続き取り組んでいます。GitLabは、GitLabサービスとのすべての通信で、利用可能な最新かつ最も安全な暗号化方式を使用するように、TLSサポートを定期的に更新しています。

このドキュメントでは、データの安全性を維持するために使用されるバージョンや暗号スイートなど、GitLabの現在のTLSサポートの概要を説明します。

サポートされているプロトコル

GitLabは、安全な通信のためにTLS 1.2バージョン以降をサポートしています。つまり、TLS 1.2とTLS 1.3は完全にサポートされており、GitLabでの使用が推奨されます。

TLS 1.1、TLS 1.0、およびSSLのすべてのバージョンなどの古いプロトコルは、既知のセキュリティ脆弱性のためサポートされていません。TLS 1.2以降の使用を強制することで、GitLabはすべてのデータ伝送とプラットフォームとのインタラクションに対して高レイヤーのセキュリティを確保します。

サポートされている暗号スイート

GitLabは、複数の暗号スイートをサポートしています。次の各暗号スイートは安全であるとみなされ、ASSLサーバー評価があります。

プロトコルバージョン暗号スイート
TLSv1.3TLS_AKE_WITH_AES_128_GCM_SHA256
TLSv1.3TLS_AKE_WITH_AES_256_GCM_SHA384
TLSv1.3TLS_AKE_WITH_CHACHA20_POLY1305_SHA256
TLSv1.2TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
TLSv1.2TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
TLSv1.2TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256-draft
TLSv1.2TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
TLSv1.2TLS_RSA_WITH_AES_128_GCM_SHA256
TLSv1.2TLS_RSA_WITH_AES_128_CBC_SHA
TLSv1.2TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
TLSv1.2TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
TLSv1.2TLS_RSA_WITH_AES_256_GCM_SHA384
TLSv1.2TLS_RSA_WITH_AES_256_CBC_SHA
TLSv1.2TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
TLSv1.2TLS_RSA_WITH_AES_128_CBC_SHA256
TLSv1.2TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
TLSv1.2TLS_RSA_WITH_AES_256_CBC_SHA256

証明書の要件

さらに、OpenSSL 3では、デフォルトのセキュリティレベルがレベル1から2に引き上げられ、セキュリティの最小ビット数が80から112に引き上げられました。その結果、2048ビット未満のRSA、DSA、DHキーと、224ビット未満のECCキーは禁止されています。GitLabは、ビット数が不十分な署名付き証明書を使用するサービスへの接続に失敗し、certificate key too weakエラーメッセージが返されます。

少なくとも128ビットのセキュリティを使用する必要があります。つまり、少なくとも3072ビットのRSA、DSA、DHキーと、256ビットを超えるECCキーを使用します。

キーの種類キーの長さ(ビット)ステータス
RSA1024禁止
RSA2048サポート対象
RSA3072推奨
RSA4096推奨
DSA1024禁止
DSA2048サポート対象
DSA3072推奨
ECC192禁止
ECC224サポート対象
ECC256推奨
ECC384推奨

OpenSSLバージョンとTLS要件

GitLab 17.7以降では、OpenSSLバージョン3を使用します。Linuxパッケージに同梱されているすべてのコンポーネントは、OpenSSL 3と互換性があります。ただし、GitLab 17.7にアップグレードする前に、OpenSSL 3ガイドを使用して、外部インテグレーションの互換性を特定して評価してください。

close_notifyのOpenSSL 3要件の回避

RFC 52460では、SSL接続はclose_notifyメッセージで終了する必要があります。OpenSSL 3は、これをセキュリティ対策として実施します。サードパーティのS3プロバイダーなどの一部のサービスは、この実施によりunexpected eof while readingエラーをレポートする場合があります。

この要件は、SSL_IGNORE_UNEXPECTED_EOF 環境変数trueに設定することで無効にできます。これは一時的な回避策としてのみ意図されています。これを無効にすると、トランケーション攻撃に対するセキュリティ脆弱性が発生する可能性があります。