「known hosts」の版間の差分

提供: セキュリティ
移動: 案内検索
(ページの作成:「sshでは、2回目のログインからホスト認証が自動的に行われます。この認証では、ホスト鍵が利用されます。sshのknown_hos...」)
 
(関連項目)
 
行24: 行24:
 
古い[[OpenSSH]]のバージョン1とバージョン2で異なるknown_hostsのファイルを使用していました。SSHバージョン2では、[[known_hosts2]]のファイルを以前は利用されていましたが、現在の[[OpenSSH]]では、[[known_hosts]]に統合されています。
 
古い[[OpenSSH]]のバージョン1とバージョン2で異なるknown_hostsのファイルを使用していました。SSHバージョン2では、[[known_hosts2]]のファイルを以前は利用されていましたが、現在の[[OpenSSH]]では、[[known_hosts]]に統合されています。
 
== 関連項目 ==
 
== 関連項目 ==
 +
* [[sshのホスト鍵を無視する方法]]
 
* [[ssh]]
 
* [[ssh]]
 
* [[中間者攻撃]]
 
* [[中間者攻撃]]
 
<!-- vim: filetype=mediawiki
 
<!-- vim: filetype=mediawiki
 
-->
 
-->

2014年11月21日 (金) 23:10時点における最新版

sshでは、2回目のログインからホスト認証が自動的に行われます。この認証では、ホスト鍵が利用されます。sshknown_hosts とは、サーバのホスト鍵(host key)の1つのホスト公開鍵を登録するファイルです。

読み方

known_hosts
のうん ほすつ

概要

sshの認証は、ユーザ認証の前に、ホスト認証が実行されます。 ホスト認証は、ホスト鍵によって行われます。

はじめてログインするホストのホスト鍵は、ユーザは通常は持っていないため、known_hostsに追加するか、sshコマンドによって確認されます。2回目以降のログインについては、known_hostsにホスト鍵が登録されているため、sshコマンドによって、自動的にホスト認証が実施されます。

ホストAのホスト鍵をバックアップせずに、OSをインストールしなおした場合、ホスト鍵が失われてしまうため、新しいホスト鍵のペアが作成されます。このとき、ホストAにログインしていたユーザは、ホスト鍵が変更されてしまったので、OS再インストール後にログインしようとするとホスト鍵が一致しないため、ホスト認証が失敗するため、sshコマンドは、ホスト鍵が一致しないが、ログインするか、といった確認をしてきます。

OS再インストールなどによってホスト鍵が変更される場合には、古いホスト鍵をknown_hostsから削除して、新しい鍵を登録する必要があります。

新しいホストは、自動的にユーザファイルに追加されます。もし、ホストの身元確認が変更されているなら、サーバスプーフィングや中間者攻撃から守るためにパスワード認証を無効化します。

known_hostsからホストを削除する

ssh-keygenコマンドを使用して、ホスト鍵を削除できます。viなどのエディタでも削除できますが、ssh-keygenのほうが簡単です。

ssh-keygen -R foo.local

known_hosts2

古いOpenSSHのバージョン1とバージョン2で異なるknown_hostsのファイルを使用していました。SSHバージョン2では、known_hosts2のファイルを以前は利用されていましたが、現在のOpenSSHでは、known_hostsに統合されています。

関連項目