Ubuntu 17.10リモートディスクのロック解除

Ubuntu 17.10リモートディスクのロック解除

Ubuntuの内蔵ディスク暗号化を使用してリモートロック解除を設定する方法について質問があります。

Dropbearを使ってこれを行う方法があることを知っていますが、わかりません。

これが私がしたいことです。

当社は、米国とカナダで複数の大規模な暗号通貨採掘場を管理しています。施設内サーバーに専用マイニングソフトウェアをインストールしました。

このソフトウェアはPythonで書かれているので、クライアントは自分のソフトウェアを監視できますが、コードを取得することはできません。

私たちはクライアントに完全に暗号化されたブラックボックスを提供することによってこれを行い、私たちだけがキーを知っています。しかし、ここに問題があります。

システムが再起動したら、現在誰かが手動でキーを入力する必要があります。さらに、管理者だけがサーバーのディスク暗号化キーにアクセスできるため、システムが再起動されるたびに技術者が表示されるようにすることはできません。

私たちがしなければならないのは、システムが再起動したときにキーサーバーにSSHを介して接続することです(IP制限は、特定のIPアドレスからの着信接続のみを許可するように設定されます)。ドライブのロックを解除し、ドライブのロックを解除するキーファイルを検索します。次に、施設サーバーからキーファイルを削除します。

dropbearを使ってこれを行うことができますが、私が見たすべての例では、キーサーバーから暗号化されたクライアントでsshコマンドを実行する必要があります。私たちはその逆になりたいので、クライアントはキーサーバーからキーファイルを要求します。

誰かがこれを行う方法についての良いチュートリアルを知っている場合、または誰かが私に正しい方向を伝えることができるなら、それは私とチームにとって大きな助けになるでしょう。

ありがとうございます!

答え1

優れたセキュリティには大きな責任があります。

あなたが望むのはケーキを食べてそれを食べることです。キーを手動で入力したいが自動化したいので、3つの可能性があります。

  • サーバーにリモートKVM(キーボード - ビデオ - マウス)機能(リモートコンソールアクセスとも呼ばれる)があることを確認してください。ほとんどの最新サーバーには以下が組み込まれています。これは依然として手動操作ですが、今は少し余分な費用を払ってリモートで行うことができます。ただし、VPSソリューションは除く
  • 商用ストレージ暗号化ソフトウェアを配布して、リモートでキーを入力してください。これは完全に自動化され、ルールベースであり、セキュリティ専門家のレビューを受けます。
  • 設定の変更:安全でない起動を許可してマウントし、リモート/サーバーに接続する起動スクリプトを起動し、暗号化されたパーティションを手動でマウントするようにリモートリソースに警告します。FLOSS、こだわるなら使ってもいい 水滴クマしかし、私はあなたが選択したディストリビューションのSSHクライアントを使い続けます。これは自動的に更新されます。いつ将来のセキュリティ問題が発生した場合...

答え2

私は実際にMandosというプラグインを使ってこの問題を解決しました。 MandosはオープンPGPおよびSSHトンネルを使用して安全にキーを取得し、それをシステムに入力します。また、物理アクセスに関するセキュリティ上の問題も理解していますが、外部SSHなしで(ロック解除後すぐに閉じる)、フルディスク暗号化と2段階ハードウェアのロック解除を介して管理者が有効になっているアカウントに入ることは、物理アクセスを使用してもほとんど不可能です。アクセスできません。ボックスを開けません。暗号化キーもサーバーに保存されません。これは、ここでは目的を達成できないからです。私はこのシステムを徹底的に監査し、それをキャッチするために要求をスニッフィングしようとしましたが、何も通過しませんでした。

さらに、このシステムは両方のエンドポイントに非常に厳しいIP制限を適用し、Meraki機器で保護されたVPNを介して通信します。トラフィックをスニッフィングすると、誰もが復号化するのに長い時間がかかる暗号化されたゴミが生成されます。

私たちは箱の1つを外部のセキュリティチームに渡しましたが、彼らもそれを解読できませんでした。

鍵サーバー自体もPCI-DSSと互換性があります。

重要なことは、コードが正しく機能するために、鉱山ネットワークでローカルに実行する必要があるシステムを提供する必要があることです。これはSaaSとして実行されていないため、顧客にコードベースを提供する必要がある問題(Pythonはバイナリにコンパイルできない)が発生しました。私たちの知的財産を保護するために、私たちは効果的なシステムを見つける必要がありました。

関連情報