初めてVPSを契約したので、アカウントの設定をしていたら設定を間違えてSSHできなくなってしまったので経緯を残しておく。
環境
- ホスト側:centOS7.6
- Conohaで借りたから解決にConohaの管理画面を使います。
- 他社でも通用する解決法かは不明(多分いける。)
- クライアント側:MacOS
- 一応クライアント側も書いといたけど間違えたのはホスト側の設定だからあまり関係ないと思われ
原因
公開鍵認証できるように設定する前にパスワード認証を無効にしてしまったため。
解決策
緊急の人がもし見てくれた場合のために先に書いておきます。
めっちゃ簡単です。
お使いのマシンにインストールされているコンソール
(俺のMacの場合はiTerm2が入ってるし、WindowsではGitBashを使っている。)
ではなく、VPS契約したサーバ会社の管理画面のコンソールからログインしてください。
sshd_cofigでパスワード認証を無効にしてもパスワードでログインできます。
もう案内する必要性もないと思いますが、一応やるべきことを書いておくと、
sshd_cofigのバックアップを取ってあった場合
# 名前は何でもいいので、renameして退避しておく。
mv /etc/ssh/sshd_config /etc/ssh/sshd_config.hoge
# バックアップを反映
mv /etc/ssh/BACKUP_FILE /etc/ssh/sshd_config
# sshdを再起動 (systemctlにredirectされると思う)
sudo service sshd restart
バックアップがない場合
# 設定を書き換えます。
sudo vi /etc/ssh/sshd_cofig
PasswordAuthentication yes # noとなっていると思うので、yesに書き換える。
#sshdを再起動 (systemctlにry)
sudo service sshd restart
クライアントマシンのコンソールからとりあえずパスワード認証できるようになっていることを確かめて終了。
自分のパソコンのコンソールから
ssh USER@IPorHOSTNAME
経緯
- VPSを契約する
- SSHしてアカウントを作る
新規に作ったアカウントの公開鍵認証を設定する
- 本当はこれを先にやらなきゃいけなかったのにもう済んでるものだと思いこんでたのが原因。
- rootでのログインを無効にする
- パスワード認証を無効にする
あとがき
- Conohaでは契約時にrootの鍵の自動生成をしてくれるんですが、それが新規に作ったアカウントの鍵だと思いこんでいた(1アウト)
- パスワード認証を公開鍵認証のパスフレーズを聞かれているのだと勘違いしていた(2アウト)
- SSHできるかちゃんと確認しないでパスワード認証を無効にしてしまった(3アウト)
深夜のテンションでサーバいじくるのダメ、ゼッタイ