SSHのknown_hostsファイルから単一のエントリを削除または更新する方法 - TechRepublic

SSHのknown_hostsファイルから単一のエントリを削除または更新する方法 - TechRepublic

アフィリエイトリンクまたはスポンサーシップを通じて、ベンダーから収益を得る場合があります。これにより、サイト上の商品配置が影響を受ける可能性がありますが、レビューの内容には影響しません。詳細は利用規約をご覧ください。

SSHは、リモートマシンのフィンガープリントをknown_hostsファイルに保持します。場合によっては、これらのエントリを削除または更新する必要があるかもしれません。Jack Wallenがその方法を説明します。

SSH の known_hosts ファイルには、ログインしたことのある既知のマシンのフィンガープリント(リモートマシンの SSH キーから生成)が含まれています。初めてマシンに SSH 接続する場合、そのホストのフィンガープリントを保存するかどうかを尋ねられます。このファイルは、個人の SSH 証明機関と考えてください。このファイルが重要な理由の 1 つは、同じ IP アドレスを持つ別のマシンへのログインを阻止できる可能性があることです。たとえば、誰かがネットワーク上のサーバーの 1 つに侵入したとします。以前そのマシンに SSH でログインしたことがありましたが、ハッカーが IP アドレスを別のマシンにリダイレクトしました。その場合、同じ IP アドレスでそのマシンにログインしようとすると、SSH キーの不一致により SSH は失敗します。

参照: セキュリティインシデント対応ポリシー (TechRepublic Premium)

これは少し極端な例ですが、known_hosts がなぜ重要なのかを示しています。また、ファイルからエントリを削除する必要がある理由も示しています。例えば、データベースサーバーを別のIPアドレスに移行したとします。known_hosts ファイルには以前のIPアドレスのキーがまだ残っているため、新しいIPアドレスにログインしようとするとSSHからエラーが発生します。known_hosts ファイル全体を削除するのではなく、その1行を削除するだけで済みます。

やり方をお見せしましょう。

必要なもの

これを動作させるには、known_hosts ファイルにエントリが登録されたSSH対応マシンが必要です。これで完了です。早速作ってみましょう。

known_hostsから単一のエントリを削除する方法

known_hostsファイルが存在するマシンにログインします。削除するエントリに関連付けられたIPアドレスが192.168.1.71だとします。この行を削除するには、ssh-keygenコマンドを次のように使用します。

ssh-keygen -f ~/.ssh/known_hosts -R 192.168.1.71

192.168.1.71 に関連付けられたエントリが削除され、known_hosts の新しいバックアップコピーがknown_hosts_old として保存されます。エントリを削除してから 192.168.1.71 に再度ログインすることで、この動作を確認できます。リモートホストの ECDSA 鍵のフィンガープリントを保存するかどうかを尋ねられるはずです。このメッセージが表示されたら、おめでとうございます!known_hosts からそのエントリが 1 つ削除されました。

エントリーを更新する方法

エントリを削除せずに、単に更新したいとします。これはssh-keyscanコマンドで実行できます。同じサーバー(IPアドレス192.168.1.71)を次のコマンドで更新してみましょう。

ssh-keyscan -t ecdsa 192.168.1.71 >> ~/.ssh/known_hosts

今回、その IP アドレスにログインするときに、フィンガープリントを保存するように求められることはありません。フィンガープリントはまだ存在しているからです (更新されているだけです)。

これで、SSHのknown_hostsファイルのエントリを簡単に削除または更新できます。ただし、このファイルをエントリのゴミ捨て場にするのは避けてください。セキュリティ上の問題につながる可能性があります。

Jack Wallen によるビジネス プロフェッショナル向けの最新のテクノロジー アドバイスをすべて知るには、YouTube でTechRepublic の How To Make Tech Work を購読してください。


画像: アナワット・サドチャンハム/EyeEm/ゲッティイメージズ
記事をシェア

こちらもご覧ください

  • 2021年、Linux、Windows、Macに最適なブラウザはGoogle Chromeではない
  • Linux 101: コマンドラインからドライブの空き容量を確認する方法
  • サイバーセキュリティのプロになる方法:チートシート
  • 迫りくるセキュリティの脅威:IT プロフェッショナルが知っておくべきこと(無料 PDF)
  • チェックリスト: デジタル情報の保護
  • オンラインセキュリティ101:ハッカーやスパイからプライバシーを守るためのヒント
  • サイバーセキュリティとサイバー戦争:さらに必読の記事
ジャック・ウォーレンの画像

ジャック・ウォーレン

ジャック・ウォーレンは、TechRepublic、The New Stack、Linux New Mediaなどで受賞歴のあるライターです。20年以上にわたり様々なトピックを執筆し、オープンソースの熱心な推進者でもあります。ジャック・ウォーレンに関する詳細は、ウェブサイトjackwallen.comをご覧ください。

Tagged: