Linux ISOのチェックサムを検証し、改ざんされていないことを確認する方法
先月、Linux MintのWebサイトがハッキングされ、バックドアを含む修正されたISOがダウンロード用に公開されました。問題はすぐに修正されましたが、実行してインストールする前にダウンロードしたLinux ISOファイルをチェックすることの重要性を示しています。これが.
Linuxディストリビューションはチェックサムを公開しているので、あなたがダウンロードしたファイルが彼らが主張しているものであることを確認することができます。これは、メインサイト以外の場所(サードパーティのミラーなど)から、またはファイルを改ざんすることがはるかに容易なBItTorrentを介してISOをダウンロードする場合に特に便利です。.
このプロセスのしくみ
ISOをチェックするプロセスは少し複雑なので、正確な手順に入る前に、プロセスに必要なものを正確に説明しましょう。
- 通常通り、LinuxディストリビューションのWebサイト(または別の場所)からLinux ISOファイルをダウンロードします。.
- チェックサムとそのデジタル署名をLinuxディストリビューションのWebサイトからダウンロードします。これらは2つの別々のTXTファイルである場合もあれば、両方のデータを含む単一のTXTファイルになる場合もあります。.
- あなたはLinuxディストリビューションに属する公開PGPキーを手に入れるでしょう。あなたはあなたのLinuxディストリビューションに応じて、Linuxディストリビューションのウェブサイトまたは同じ人々によって管理されている別のキーサーバーからこれを得るかもしれません。.
- PGP鍵を使って、チェックサムのデジタル署名が、鍵を作ったのと同じ人(この場合はそのLinuxディストリビューションの管理者)によって作成されたことを確認します。これは、チェックサム自体が改ざんされていないことを示しています.
- ダウンロードしたISOファイルのチェックサムを生成し、ダウンロードしたチェックサムTXTファイルと一致することを確認します。これはISOファイルが改ざんされていないか破損していないことを確認します.
プロセスはISOによって異なりますが、通常はその一般的なパターンに従います。たとえば、チェックサムにはいくつかの異なる種類があります。伝統的に、MD5の合計が最も人気があります。ただし、SHA-256は理論上の攻撃に対する耐性が高いため、SHA-256の合計は最近のLinuxディストリビューションで頻繁に使用されています。ここでは主にSHA-256の合計について説明しますが、MD5の合計にも同様のプロセスが有効です。いくつかのLinuxディストリビューションではSHA-1の合計も提供されていますが、それほど一般的ではありません。.
同様に、いくつかのディストリビューションはPGPで彼らのチェックサムに署名しません。手順1、2、および5を実行するだけで済みますが、このプロセスははるかに脆弱です。結局、攻撃者がダウンロードのためにISOファイルを置き換えることができれば彼らはまたチェックサムを置き換えることができます.
PGPの使用ははるかに安全ですが、絶対確実というわけではありません。攻撃者はまだその公開鍵を自分自身の公開鍵に置き換えることができますが、それでもISOが正当であると考えるように仕向ける可能性があります。ただし、Linux Mintの場合のように、公開鍵が別のサーバーでホストされている場合、これははるかに少なくなります(1つではなく2つのサーバーをハッキングする必要があるためです)。しかし、一部のディストリビューションの場合のように、公開鍵がISOおよびチェックサムと同じサーバーに格納されていると、セキュリティはそれほど向上しません。.
それでも、チェックサムファイルのPGP署名を検証し、そのチェックサムを使用してダウンロードを検証しようとしているのであれば、エンドユーザーがLinux ISOをダウンロードするのが合理的です。あなたはまだ気にしない人々よりもはるかに安全です.
Linuxでチェックサムを確認する方法
ここでは例としてLinux Mintを使用しますが、LinuxディストリビューションのWebサイトでそれが提供する検証オプションを見つける必要があるかもしれません。 Linux Mintの場合、2つのファイルがISOダウンロードと一緒にそのダウンロードミラーに用意されています。 ISOをダウンロードしてから、「sha256sum.txt」ファイルと「sha256sum.txt.gpg」ファイルをコンピュータにダウンロードします。ファイルを右クリックして「名前を付けてリンクを保存」を選択してダウンロードします。.
Linuxデスクトップで端末ウィンドウを開き、PGPキーをダウンロードします。この場合、Linux MintのPGPキーはUbuntuのキーサーバーでホストされているので、それを取得するには次のコマンドを実行する必要があります。.
gpg --keyserver hkp://keyserver.ubuntu.com --recv-keys 0FF405B2
あなたのLinuxディストリビューションのウェブサイトはあなたが必要とする鍵に向かってあなたを導きます.
ISO、チェックサムファイル、チェックサムのデジタル署名ファイル、およびPGPキー。そのため、次に、ダウンロード先のフォルダに移動します。
CD〜/ダウンロード
…そして次のコマンドを実行してチェックサムファイルの署名をチェックします。
gpg --verify sha256sum.txt.gpg sha256sum.txt
ダウンロードしたsha256sum.txtファイルに「良い署名」があることをGPGコマンドで確認できる場合は、続行できます。下のスクリーンショットの4行目で、GPGはこれがLinux Mintの作成者であるClement Lefebvreに関連していると主張する「良い署名」であることを私たちに知らせています.
鍵が「信頼できる署名」で認証されていないことを心配しないでください。これは、PGP暗号化が機能する方法のためです。信頼できる人々から鍵をインポートしてWeb of trustを設定していません。このエラーは非常に一般的になります.
最後に、チェックサムがLinux Mintメンテナによって作成されたことがわかったので、次のコマンドを実行してダウンロードされた.isoファイルからチェックサムを生成し、それをダウンロードしたチェックサムTXTファイルと比較します。
sha256sum --check sha256sum.txt
ISOファイルを1つだけダウンロードした場合は、「そのようなファイルやディレクトリはありません」というメッセージが多数表示されますが、チェックサムと一致する場合は、ダウンロードしたファイルに対して「OK」メッセージが表示されます。.
チェックサムコマンドを.isoファイルで直接実行することもできます。 .isoファイルを調べてそのチェックサムを吐き出します。あなたはそれからあなたの目で両方を見ることによってそれが有効なチェックサムと一致することをちょうどチェックすることができます.
たとえば、ISOファイルのSHA-256合計を取得するには、次のようにします。
sha256sum /path/to/file.iso
あるいは、md5sum値があり、ファイルのmd5sumを取得する必要がある場合は、次のようにします。
md5sum /path/to/file.iso
結果をチェックサムTXTファイルと比較して、それらが一致するかどうかを確認します。.
Windowsでチェックサムを確認する方法
WindowsマシンからLinux ISOをダウンロードする場合は、そこにチェックサムを確認することもできます。ただし、Windowsには必要なソフトウェアが組み込まれていません。だから、あなたはオープンソースのGpg4winツールをダウンロードしてインストールする必要があるでしょう.
Linuxディストリビューションの署名鍵ファイルとチェックサムファイルを見つけます。ここでは例としてFedoraを使います。 FedoraのWebサイトはチェックサムのダウンロードを提供し、https://getfedora.org/static/fedora.gpgからFedoraの署名鍵をダウンロードできることを伝えています。.
これらのファイルをダウンロードしたら、Gpg4winに含まれているKleopatraプログラムを使って署名鍵をインストールする必要があります。 Kleopatraを起動し、[ファイル]> [証明書のインポート]をクリックします。ダウンロードした.gpgファイルを選択してください。.
ダウンロードしたチェックサムファイルが、インポートしたキーファイルの1つで署名されているかどうかを確認できます。これを行うには、[ファイル]> [ファイルの復号化/検証]をクリックします。ダウンロードしたチェックサムファイルを選択してください。 「入力ファイルは分離された署名です」オプションのチェックを外し、「復号化/確認」をクリックします。
これらのFedora証明書が実際に正当であることを確認する手間をかけていないので、このようにするとエラーメッセージが表示されるはずです。それはもっと難しい仕事です。これは、PGPが機能するように設計されている方法です。たとえば、直接会って鍵を交換したり、信頼のWebをつなぎ合わせたりします。ほとんどの人はこの方法でそれを使用しません.
ただし、詳細を表示して、チェックサムファイルがインポートしたキーの1つで署名されていることを確認できます。とにかく、ダウンロードしたISOファイルを確認せずに信頼するよりもはるかに優れています。.
これで、File> Verify Checksum Filesの順に選択し、チェックサムファイル内の情報がダウンロードした.isoファイルと一致することを確認できます。しかし、これは私たちにはうまくいきませんでした - おそらくそれはFedoraのチェックサムファイルがレイアウトされた方法です。 Linux Mintのsha256sum.txtファイルでこれを試したところ、うまくいきました.
選択したLinuxディストリビューションでこれが機能しない場合は、次の回避策があります。まず、設定> Kleopatraの設定をクリックします。 「Crypto Operations」を選択し、「File Operations」を選択して、「sha256sum」チェックサムプログラムを使用するようにKleopatraを設定します。 MD5チェックサムがある場合は、ここのリストで「md5sum」を選択してください。.
それでは、File> Create Checksum Filesをクリックし、ダウンロードしたISOファイルを選択してください。 Kleopatraはダウンロードされた.isoファイルからチェックサムを生成し、それを新しいファイルに保存します.
ダウンロードしたチェックサムファイルと今生成したチェックサムファイルの両方を、メモ帳などのテキストエディタで開くことができます。チェックサムが自分の目と同じであることを確認してください。同一の場合、ダウンロードしたISOファイルが改ざんされていないことを確認しました.
これらの検証方法は、もともとマルウェアからの保護を目的としたものではありません。 ISOファイルが正しくダウンロードされ、ダウンロード中に破損していないことを確認するように設計されているので、心配せずに書き込み、使用できます。あなたがダウンロードしたPGP鍵を信頼しなければならないので、それらは完全に確実な解決策ではありません。しかし、これはまだまったくチェックせずにISOファイルを使用するよりもはるかに高い保証を提供します。.
Image Credit:FlickrのEduardo Quagliato