事象
- ちゃんとSSHの鍵は設定している。(以下のキャプチャは設定してないけど、本来はちゃんと設定されている)
Feb 25 16:31:59 wp sshd[20577]: Received disconnect from xx.xx.xx.xx
もはや、何が原因がわからない状態。
原因
- .ssh自体の権限は700に設定されているか!?
- authorized_keysの権限は600になっているのか!?
- id_rsaの権限は600になっているのか!?(ローカルPC)
- id_rsa.pubの権限は644になっているのか!?(ローカルPC)→あまり気にしなくても良い
- 公開鍵(authorized_keys)はちゃんとコピペできているか!?
この辺を確認する。
https://blog.adachin.me/archives/2054 より
すると、 /home/[ユーザ]/.ssh/authorized_keys が存在しない。
gcpのComputeEngine→VMインスタンスから、SSH鍵をいくら設定をしても駄目。
再起動しても駄目。 (バグ?かと思ったけど、このPJだけで他のPJだとちゃんとauthorized_keysが出来る)
ここの部分をいくら設定しても駄目。
対策
いくらComputeEngine→VMインスタンスから、SSH鍵を作成しても駄目なので、手動でやる。
- authorized_keysを/home/[ユーザ]/.ssh/ にコピペ
- authorized_keysの権限は600にする
- authorized_keysのユーザをログインユーザに合わせる。
これでようやくログインが出来る。
稀なのかもしれない
普通、ComputeEngine→VMインスタンスから、SSH鍵を設定すれば、authorized_keysは自動出来る。
いくらググっても同じ条件で苦しんでいる人が出てこない。
これは稀なのか。
なんとなく原因
SSHのログイン管理を一時的にIAMで管理していたことがあり、その設定が残ると、authorized_keysが出来ない気がする。
カスタムメタデータの enable-oslogin
を消して、VM再起動しても駄目だった。
一度やってしまうと、そうなるのかもしれない。