技術ノート 特徴 Linux ISO のチェックサムを検証し、改ざんされていないことを確認する方法

Linux ISO のチェックサムを検証し、改ざんされていないことを確認する方法

Linux ISO のチェックサムを検証し、改ざんされていないことを確認する方法

先月、 Linux Mint の Web サイトがハッキングされ 、バックドアを含む修正された ISO がダウンロード用に公開されました。この問題はすぐに修正されましたが、ダウンロードした Linux ISO ファイルを実行してインストールする前に確認することの重要性を示しています。その方法は次のとおりです。

Linux ISO のチェックサムを検証し、改ざんされていないことを確認する方法

Linux ディストリビューションはチェックサムを公開しているので、ダウンロードしたファイルが主張どおりのものであることを確認できます。また、多くの場合、これらのファイルには署名が付いているため、チェックサム自体が改ざんされていないことを確認できます。これは、サードパーティのミラーや BItTorrent など、ファイルを簡単に改ざんできるメイン サイト以外の場所から ISO をダウンロードする場合に特に便利です。

このプロセスの仕組み

Linux ISO のチェックサムを検証し、改ざんされていないことを確認する方法

ISO をチェックするプロセスは少し複雑なので、正確な手順に入る前に、プロセスに含まれる内容を正確に説明しましょう。

  1. 通常どおり、Linux ディストリビューションの Web サイトまたは他の場所から Linux ISO ファイルをダウンロードします。
  2. Linux ディストリビューションの Web サイトからチェックサムとそのデジタル署名をダウンロードします。これらは 2 つの別個の TXT ファイルである場合もあれば、両方のデータを含む 1 つの TXT ファイルを取得する場合もあります。
  3. Linux ディストリビューションに属する公開 PGP キーを取得します。これは、Linux ディストリビューションに応じて、Linux ディストリビューションの Web サイトから入手することも、同じ担当者が管理する別のキー サーバーから入手することもできます。
  4. PGP キーを使用して、チェックサムのデジタル署名がキーの作成者と同じ人 (この場合は Linux ディストリビューションのメンテナ) によって作成されたことを確認します。これにより、チェックサム自体が改ざんされていないことが確認されます。
  5. ダウンロードした ISO ファイルのチェックサムを生成し、それがダウンロードしたチェックサム TXT ファイルと一致することを確認します。これにより、ISO ファイルが改ざんまたは破損していないことが確認されます。
Linux ISO のチェックサムを検証し、改ざんされていないことを確認する方法

このプロセスは ISO ごとに少し異なる場合がありますが、通常はその一般的なパターンに従います。たとえば、チェックサムにはいくつかの異なるタイプがあります。従来、MD5 サムが最も人気がありました。ただし、SHA-256 は理論上の攻撃に対する耐性が高いため、最新の Linux ディストリビューションでは SHA-256 サムがより頻繁に使用されるようになりました。ここでは主に SHA-256 サムについて説明しますが、MD5 サムについても同様のプロセスが機能します。一部の Linux ディストリビューションでも SHA-1 サムを提供する場合がありますが、これはさらに一般的ではありません。

同様に、一部のディストリビューションはチェックサムに PGP で署名しません。実行する必要があるのはステップ 1、2、5 だけですが、このプロセスははるかに脆弱です。結局のところ、攻撃者がダウンロード用の ISO ファイルを置き換えることができれば、チェックサムも置き換えることができます。

PGP を使用するとはるかに安全ですが、確実ではありません。攻撃者はその公開キーを自分のものに置き換える可能性があり、ユーザーをだまして ISO が正規のものであると思わせることができます。ただし、Linux Mint の場合のように、公開キーが別のサーバーでホストされている場合は、その可能性ははるかに低くなります (1 台だけではなく 2 台のサーバーをハッキングする必要があるため)。ただし、一部のディストリビューションの場合のように、公開キーが ISO およびチェックサムと同じサーバーに保存されている場合は、それほど高いセキュリティは提供されません。

それでも、チェックサム ファイルの PGP 署名を検証し、そのチェックサムを使用してダウンロードを検証しようとしている場合、Linux ISO をダウンロードするエンドユーザーとして合理的に実行できるのはこれだけです。それでも、気にしない人よりははるかに安全です。

Linux ISO のチェックサムを検証し、改ざんされていないことを確認する方法

Linux でチェックサムを確認する方法

ここでは例として Linux Mint を使用しますが、Linux ディストリビューションが提供する検証オプションを見つけるには、Linux ディストリビューションの Web サイトを検索する必要がある場合があります。 Linux Mint の場合、ダウンロード ミラーで ISO ダウンロードとともに 2 つのファイルが提供されます。 ISO をダウンロードし、「sha256sum.txt」ファイルと「sha256sum.txt.gpg」ファイルをコンピュータにダウンロードします。ファイルを右クリックし、「名前を付けてリンク先を保存」を選択してダウンロードします。

Linux デスクトップでターミナル ウィンドウを開き、PGP キーをダウンロードします。この場合、Linux Mint の PGP キーは Ubuntu のキー サーバーでホストされているため、次のコマンドを実行してそれを取得する必要があります。

 gpg --keyserver hkp://keyserver.ubuntu.com --recv-keys 0FF405B2

Linux ディストリビューションの Web サイトでは、必要なキーを参照できます。

これで、ISO、チェックサム ファイル、チェックサムのデジタル署名ファイル、PGP キーなど、必要なものがすべて揃いました。次に、ダウンロードしたフォルダーに移動します…

 cd ~/ダウンロード

…そして次のコマンドを実行してチェックサム ファイルの署名を確認します。

 gpg --verify sha256sum.txt.gpg sha256sum.txt

GPG コマンドによって、ダウンロードした sha256sum.txt ファイルに「良好な署名」があることがわかった場合は、続行できます。以下のスクリーンショットの 4 行目で、GPG は、これが Linux Mint の作成者である Clement Lefebvre に関連すると主張する「良い署名」であることを通知しています。

キーが「信頼された署名」で証明されていないことを心配する必要はありません。これは、PGP 暗号化の仕組みが原因です。つまり、信頼できる人からキーをインポートして信頼の網を設定していないためです。このエラーは非常に一般的です。

最後に、チェックサムが Linux Mint の管理者によって作成されたことがわかったので、次のコマンドを実行して、ダウンロードした .iso ファイルからチェックサムを生成し、それをダウンロードしたチェックサム TXT ファイルと比較します。

 sha256sum --sha256sum.txt を確認します

ISO ファイルを 1 つだけダウンロードした場合は、「そのようなファイルまたはディレクトリはありません」というメッセージが多数表示されますが、ダウンロードしたファイルがチェックサムと一致する場合は、「OK」メッセージが表示されるはずです。

チェックサム コマンドを .iso ファイルに対して直接実行することもできます。 .iso ファイルを調べて、そのチェックサムを出力します。その後、両方を目で見て、有効なチェックサムと一致することを確認するだけです。

たとえば、ISO ファイルの SHA-256 合計を取得するには、次のようにします。

 sha256sum /path/to/file.iso

または、md5sum 値があり、ファイルの md5sum を取得する必要がある場合は、次のようにします。

 md5sum /path/to/file.iso

結果をチェックサム TXT ファイルと比較して、一致するかどうかを確認します。

Linux ISO のチェックサムを検証し、改ざんされていないことを確認する方法

Windows でチェックサムを確認する方法

Windows マシンから Linux ISO をダウンロードしている場合は、そこでのチェックサムを検証することもできます。ただし、Windows には必要なソフトウェアが組み込まれていません。したがって、オープンソースの Gpg4win ツールをダウンロードしてインストールする必要があります。

Linux ディストリビューションの署名キー ファイルとチェックサム ファイルを見つけます。ここでは例として Fedora を使用します。 Fedora の Web サイトでは チェックサムのダウンロードが提供されており、https://getfedora.org/static/fedora.gpg から Fedora 署名キーをダウンロードできることが示されています。

これらのファイルをダウンロードした後、Gpg4win に含まれる Kleopatra プログラムを使用して署名キーをインストールする必要があります。 Kleopatra を起動し、「ファイル」>「証明書のインポート」をクリックします。ダウンロードした .gpg ファイルを選択します。

ダウンロードしたチェックサム ファイルが、インポートしたキー ファイルのいずれかで署名されているかどうかを確認できるようになりました。これを行うには、[ファイル] > [ファイルの復号化/検証] をクリックします。ダウンロードしたチェックサムファイルを選択します。 「入力ファイルは分離された署名です」オプションのチェックを外し、「復号化/検証」をクリックします。

この方法で実行すると、Fedora 証明書が実際に正当であることを確認するという手間がかからないため、必ずエラー メッセージが表示されます。それはもっと難しい仕事です。これは PGP が機能するように設計されている方法です。たとえば、直接会って鍵を交換し、信頼の網をつなぎ合わせます。ほとんどの人はこのようには使いません。

ただし、詳細を表示して、チェックサム ファイルがインポートしたキーの 1 つで署名されていることを確認できます。いずれにせよ、これは、ダウンロードした ISO ファイルをチェックせずに信頼するよりもはるかに優れています。

これで、[ファイル] > [チェックサム ファイルの検証] を選択し、チェックサム ファイル内の情報がダウンロードした .iso ファイルと一致することを確認できるようになります。しかし、これは私たちにとってはうまくいきませんでした。おそらく、それは Fedora のチェックサム ファイルのレイアウト方法に問題があるだけかもしれません。これを Linux Mint の sha256sum.txt ファイルで試したところ、うまくいきました。

選択した Linux ディストリビューションでこれが機能しない場合は、次の回避策があります。まず、「設定」>「クレオパトラの構成」をクリックします。 「暗号化操作」を選択し、「ファイル操作」を選択して、この特定のチェックサムが生成されたものである「sha256sum」チェックサム プログラムを使用するように Kleopatra を設定します。 MD5 チェックサムがある場合は、ここのリストで「md5sum」を選択します。

ここで、「ファイル」>「チェックサムファイルの作成」をクリックし、ダウンロードした ISO ファイルを選択します。 Kleopatra は、ダウンロードされた .iso ファイルからチェックサムを生成し、それを新しいファイルに保存します。

これらのファイル (ダウンロードしたチェックサム ファイルと生成したばかりのファイル) は両方とも、メモ帳などのテキスト エディタで開くことができます。両方のチェックサムが同じであることを自分の目で確認してください。同一であれば、ダウンロードした ISO ファイルが改ざんされていないことが確認できます。


これらの検証方法は、もともとマルウェアから保護することを目的としたものではありませんでした。 ISO ファイルが正しくダウンロードされ、ダウンロード中に破損していないことを確認するように設計されているため、心配することなく ISO ファイルを書き込んで使用できます。ダウンロードした PGP キーを信頼する必要があるため、完全に確実なソリューションというわけではありません。ただし、これにより、まったくチェックせずに ISO ファイルを使用するよりもはるかに確実な結果が得られます。

画像クレジット: Flickr の Eduardo Quagliato

「 Linux ISO のチェックサムを検証し、改ざんされていないことを確認する方法」に関するベスト動画選定!

Linux で ISO チェックサムを確認する方法
Windows11●10●403エラー表示される理由とその修正方法