質問編集履歴

1 タイトルを「エラー」から「警告」へ変更しました。

shocci1214

shocci1214 score 9

2019/02/10 21:45  投稿

GitHubへのSSHでの接続、known_hostsに関するエラーについて
GitHubへのSSHでの接続、known_hostsに関する警告について
### 現状
GitHubにSSHで接続しようとしています。
公開鍵を作成、GitHub側へ登録。
そして、リポジトリにpushすることに成功しました。
しかしその後、$git pushするごとに、警告文が出てきました。
一応対処はしましたが、どうしてそうなったのかイマイチよく分かっていない状況です。
### 発生している問題、やってみたこと
$git pushするごとに、下記のような警告が発生しました。
(push自体は上手くいきました)
```
$ git push
Warning: Permanently added the RSA host key for IP address 'xxx.xxx.xxx.xxx' to the list of known hosts.
```
まず、私はこの警告を以下のように解釈しました。
**
known hostsというのは接続したことのあるホストの情報(公開鍵など)を保持するファイルである。今回、GitHubに接続するたびにIPアドレスが変わっている(?)関係で、ホストの情報をknown hostsにいちいち追記している状態であるため、警告が出ている。
**
これに対しての対処法は、下記のようなやり方がありました。
https://qiita.com/tdrk/items/a0554763c29f60e347b5
```
$ ssh-keygen -R xxx.xxx.xxx.xxx
```
調べると、これはknown_hostsファイルから、指定されたホスト名 に属する鍵をすべて取り除くことができるコマンドだとわかりました。
ただ取り除いたところで、これが根本的な解決になるのか? また接続したらおんなじことじゃないか?と素朴に思いました。
そして実際、(xxx.xxx.xxx.xxxに警告で出たアドレスを入れて) このコマンドを叩いても、警告は消えませんでした。
また、ダメ元で
```
$ ssh-keygen -R github.com
```
というコマンドもやってみました。(考えなしで適当にやりました...)
すると、
```
$git push
The authenticity of host 'github.com (xxx.xxx.xxx.xxx)' can't be established.
RSA key fingerprint is xxxxxxxxxxxx
RSA key fingerprint is xxxxxxxxxxxx
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'github.com' (RSA) to the list of known hosts.
```
と、出力され、次回から$git pushしても警告が発生しなくなりました。
という訳で一応解決はしたのですが、なぜ上手く行ったのかよく分からない状態です。
そこで、何かご教示いただけないでしょうか。
根本的な誤り等ありましたらご指摘お願いいたします。
  • Linux

    5001 questions

    Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

  • GitHub

    1289 questions

    GitHubは、Gitバージョン管理システムを利用したソフトウェア開発向けの共有ウェブサービスです。GitHub商用プランおよびオープンソースプロジェクト向けの無料アカウントを提供しています。

  • bash

    935 questions

    bash(Bourne-again-Shell)は sh(Bourne Shell)のインプリメンテーションに様々な機能が追加されたシェルです。LinuxやMac OS XではBashはデフォルトで導入されています。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る