マシンの一部のハードウェアコンポーネントに基づいてキー(数値?)を生成します。

マシンの一部のハードウェアコンポーネントに基づいてキー(数値?)を生成します。

マシンの一部のコンポーネントに基づいてハードウェアキーを手動で生成する最良の方法は何ですか?

問題は次のとおりです。特定の種類のコンピュータだけがサーバーと通信できることを願っています。そのために、そのハードウェアが私のサーバーで認識(または許可)する「許可されたハードウェア」の一部であることを確認したいと思います。

そのハードウェアに基づいてキーを生成してサーバー側で確認し、「許可」の範囲内にあることを確認したいと思います。

理想的には「確認」することです。

  • プロセッサ
  • マザーボード
  • イーサネットネットワークインターフェース

メモリとハードドライブは頻繁に変更される可能性があるため、少し面倒です。

lshw私はUbuntu 10.10を使用しており、このコマンドがすべてについて...まあ...すべてについての多くの情報を提供するのを見ました。また、cat /proc/cpuinfodmidecode...これらはすべて多くの情報を表示しますが、これは常に正規表現で構文解析することができます。

この問題に関するアドバイスやアドバイスをいただきありがとうございます。

ありがとうございます。

ベストアンサー1

私はこれが最終的にあなたを悩ませる興味深い質問だと思います。

以下を実行するスクリプトを作成できます。

rm /tmp/hw_snapshot
touch /tmp/hw_snapshot
cat /proc/cpuinfo | grep <whatever> >> /tmp/hw_snapshot
dmidecode | grep <whatever> >> /tmp/hw_snapshot
lspci | grep <whatever> >> /tmp/hw_snapshot
md5sum /tmp/hw_snapshot > /tmp/key

いいえ、ハードウェア構成には一意の識別子があります。問題は、同じモデルシリーズ内でも、CPU、ネットワークカード、ネットワークカードの数など、ハードウェアが大きく異なる可能性があることです。したがって、基本的に誰でもHP DL380モデルを選択して追加のネットワークカードを含む他のモデルを購入すると、一意のキーを追加することはできません。

また、ハードウェアベースの制限通信の目的をまだ理解していません。あなたのコンピュータとの通信を制御するには(可能であれば)プライベートネットワークに何かを置きます。

おすすめ記事