以前、さくらのVPSにAPIのプログラムを作成しました。
コワーキングスペース茅場町の田中さんにいろいろ教えてもらいながら、gitを使ってローカルを更新すると、自動的にサーバー側にも反映されるようにしたのですが、今年になってMacBookProが壊れてしまい新しくしたので、sshの公開鍵を忘れてしまいました。
このところ、さくらのVPSを全くいじっていなかったのでどうしようとFacebookで呟いたところ、ITCOMの奥山さんがヒントを教えてくれました。
奥山さん、ありがとうございます!
今回、この公開鍵を復活させるところまで出来ましたので、記録しておきます。
目次
さくらのコンソールからrootでログイン
過去のメールからさくらのVPSの設定を探しだし、コンソールからログインします。
https://secure.sakura.ad.jp/vpscontrol/main/console
sshd_configを編集し、パスワード認証とRootでログインできるようにします。
>sudo vim /etc/ssh/sshd_config
PasswordAuthentication をyesにする
PermitRootLogin これもyesにする。
そして、再起動
/etc/rc.d/init.d/sshd restart
こちらのサイトを参考にさせていただきました。(ポートはそのままでやってみました)
MacのコンソールからRootで接続できるか確認
Macのターミナルにて
>ssh -p 【設定してあるポート番号】 root@【IP】
接続できればOK
↓ さくらVPSのMacからのSSH接続方法はこちらを参考にしました。
MacからさくらVPSにSSH接続できるようにする方法 – Sawalog
Macのターミナルから公開鍵を作成しSFTPでアップ
>ssh-keygen -t rsa
これで /.sshにid_rsa.pubが生成される。
次にsftpを使ってid_rsa.pubをアップします。
>sftp -oPort=【設定してあるポート番号】 ユーザー名@【IP】
ここではrootではなくユーザー名でログインします。
実は以前設定したユーザーパスワード入力します。私の場合は推測で打ち込んだらログインできたのですが、もし、このユーザーパスワードも忘れてしまっていたら、再度、さくらのコンソールでユーザーを作るところからやったほうが良さそうです。
パスワードでログインできたら、id_rsa.pubをputします。
>put id_rsa.pub
以上でquit
>quit
ユーザー名でログイン
>ssh ユーザ名@【IP】 -p 【ポート番号】
キーを追加
>cat id_rsa.pub >> .ssh/authorized_keys
これでOK
パスワード無しでssh接続できるかテスト
>ssh ユーザ名@【IP】 -p 【ポート番号】
これで接続できればsshの公開鍵設定が無事終了。
さくらのコンソールから接続して、root接続とパスワード接続をnoにする
一番最初に、root接続とパスワード認証を可能にしてしまったので、セキュリティの為にこれらを不可能にします。
>sudo vim /etc/ssh/sshd_config
PasswordAuthentication をnoにする
PermitRootLogin これもnoにする。
リスタートをかける
>/etc/rc.d/init.d/sshd restart
これで全て終了
まとめ
過去、自分が作ったり設定したものであっても、しばらくいじっていないとホント、きれいさっぱり忘れてしまっていて困ります。なので、その都度、自分がやったことは記録としてブログを書いておいたほうがいいですよね。
ということで、これは同じ状況に陥った誰かと未来の自分に向けて書いた記事です。
では!