Cryptctlは、人気のある定評のあるLuksメソッドを使用してディスク暗号化をセットアップするためのユーティリティです。暗号化キーとして使用する乱数を生成し、キーを集中型キーサーバーに安全に保持します。任意のディレクトリを暗号化されたディスクパーティションに暗号化できます。
キーサーバーは、すべての暗号化キーをデータベースディレクトリ(デフォルト/var/lib/cryptctl/keydb)に保存し、TCPを介したRPCプロトコルを介してキーをクライアントコンピューターに提供します。キーサーバーは、暗号化のセットアップの中心的なコンポーネントです。したがって、追加の物理/ネットワークセキュリティ対策で展開する必要があります。主要なデータベースの定期的なバックアップを実行するために実行する必要があります。キーサーバーとクライアントコンピューター間の通信は、証明書を介してTLSによって保護され、Key Serverの最初のセットアップ中にシステム管理者によって指定されたパスワードを介して承認されます。
暗号化ルーチンは、暗号ランダムプールから生成された固定サイズ(512ビット)キーを使用して、AES-XTS-Plain64 Cipherを使用して暗号化されたファイルシステムをセットアップします。暗号化されたディレクトリは、キーサーバーから暗号化キーを自動的に取得することにより、システムブート時に常に自動的にマウントされます。この操作は、最大24時間、成功まで継続的な試行を行うことにより、一時的なネットワーク障害またはキーサーバーのダウンタイムを許容します。
システム管理者は、キーを同時に保持できるコンピューターの上限数を定義できます。クライアントコンピューターがキーを正常に取得すると、キーサーバーがオンラインであることをキーサーバーに報告し続け、キーサーバーはキーを使用して積極的にコンピューターの数を決定するために、IP、ホスト名、およびタイムスタンプを密接に追跡します。コンピューターの上限数に到達した場合、キーは自動的に配られなくなります。システム管理者は、キーサーバーのアクセスパスワードを使用して、常に暗号化キーを取得できます。
CryptCtlは、KMIP V1.3を理解する外部キー管理アプライアンスをオプションで利用して、実際のディスク暗号化キーを保存できます。外部アプライアンスを使用することを選択した場合、サーバー初期化シーケンス中にホスト名、ポート、証明書、ユーザー資格情報などのKMIP接続の詳細を入力できます。外部アプライアンスを使用したくない場合は、CryptCtlは暗号化キーを独自のデータベースに保存します。
CryptCTL機能を実験するには、同じコンピューターにキーサーバーと暗号化されたパーティションの両方を一時展開できます。キーデータを暗号化されたデータから分離する目的を破ることで、常にQAおよび生産シナリオにキーサーバースタンドアロンを展開することを忘れないでください。
Cryptctlは、「SAPアプリケーション用のSuse Linux Enterprise Server」によって商業的にサポートされています。
GO 1.8以下のGO 1.8以下のCryptCTLを構築します。 Go Standard Libraryにのみ依存しており、サードパーティライブラリは使用されていません。
cryptctlバイナリと構成ファイルとSystemDサービスをospackage/ Directoryからキーサーバーとクライアントコンピューターの両方にインストールします。次に、セットアップと使用手順については、マニュアルページospackage/man/cryptctl.8注意深くお読みください。
既製のRPM仕様ファイルとRPMパッケージは、https://build.opensuse.org/package/security/cryptctlにあります。
Cryptctlはオープンソースのフリーソフトウェアです。フリーソフトウェア財団が公開しているGNU General Public Licenseバージョン3の条件に基づいて、それを再配布したり、変更することができます。
完全なライセンス条件については、 LICENSEファイルを参照してください。