GitLab ハードニングの推奨事項

このドキュメントは、GitLabインスタンスにおいて、一般的な攻撃やそうでない攻撃に対してシステム全体を「堅牢化」するためのものです。攻撃を完全に根絶するためのものではありませんが、強力な緩和策を提供することで、全体的なリスクを減らすためのものです。テクニックのいくつかは、SaaSやセルフマネージドなど、どのGitLabデプロイにも当てはまりますが、他のテクニックは基盤となるOSに当てはまります。

これらのテクニックは現在進行中であり、大規模な環境(多くのユーザーがいるような環境)でのテストは行われていません。これらのテクニックは、Linuxパッケージのインストールを実行しているセルフマネージド・シングルインスタンスでテストされています。多くのテクニックは他のデプロイタイプにも適用できますが、すべてが機能するとは限りません。

記載されている推奨事項のほとんどは、一般的な文書に基づいた具体的な推奨事項や参考となる選択肢を示しています。そのため、ユーザーとコミュニケーションをとり、段階的にハードニングの変更をロールアウトする必要があります。

ハードニングの説明は、理解しやすいように5つのカテゴリーに分かれています。それらは次のセクションに記載されています。

GitLabハードニングの一般的な概念

セキュリティへのアプローチとしてのハードニングと、より大きな哲学のいくつかについて詳しく説明します。より詳しい情報は、ハードニングの一般的な考え方をご覧ください。

GitLabアプリケーションの設定

GitLab GUIを使ってアプリケーション自体に行うアプリケーション設定。詳細については、アプリケーションの推奨事項をご覧ください。

GitLab CI/CDの設定

CI/CDはGitLabのコアコンポーネントであり、セキュリティ原則の適用はニーズに基づいていますが、CI/CDをよりセキュアにするためにできることがいくつかあります。詳しくはCI/CDの推奨事項をご覧ください。

GitLabの設定

アプリケーションの制御や設定に使われる設定ファイルの設定(gitlab.rbなど)は、別途文書化されています。詳しくは、設定の推奨事項をご覧ください。

オペレーションシステムの設定

基盤となるオペレーティング・システムを調整して、全体的なセキュリティを高めることができます。詳細については、オペレーティングシステムの推奨事項を参照してください。