さくらのレンタルサーバーとGitHubをsshで接続する

さくらのレンタルサーバーでGitHubにsshで接続できるようにします。

レンタルサーバーにsshでログイン

ターミナルを開きレンタルサーバーのsshにログインします。

さくらのレンタルサーバーのコントロールパネルに入り、サーバー情報からFTPアカウントとFTPサーバーを控えておきましょう
以下のコマンドを叩くとパスワードを聞かれますのでパスワードを入力します。

ssh FTPアカウント@FTPサーバー(*****@*****.sakura.ne.jp)

Welcome to FreeBSD! #成功

認証鍵を作成(公開鍵と秘密鍵)

以下の通り進めると鍵の名前、パスフレーズを聞かれますが、
特に設定することがなければEnterを押して進めていくとデフォルトの名前(id_rsa、id_rsa.pub)とパスフレーズを必要としないキーペアが作成されます。

bash #Bashに変更
cd ~/.ssh
ssh-keygen -t rsa -b 4096

Githubに公開鍵を登録

以下のコマンドを叩き公開鍵の中身を表示して全文コピーします。

cat ~/.ssh/id_rsa.pub

Githubの右上のアイコンにあるSettingSSH and GPG keysNew SSH keyと進み
先ほどコピーした公開鍵を登録します。
Titleはわかりやすい名前であればなんでも大丈夫です。

configファイルを作成する

configファイルを作成することでGitHubへSSH接続する際に参照する秘密鍵の名前を指定できます。
IdentityFileの部分には自分で作成した秘密鍵の名前を設定してください。

touch ~/.ssh/config
Host github.com
  HostName github.com
  IdentityFile ~/.ssh/id_rsa
  User git

接続確認

以下のコマンドを叩き、You’ve successfully authenticated, but GitHub does not provide shell access.と表示されれば接続は成功です。

ssh -T git@github.com

You've successfully authenticated, but GitHub does not provide shell access.

エラーが表示された場合

ssh-keygenでkeyを生成した際に鍵の名前を変えていればconfigファイルを設定しているかを確認してみて下さい。
またIdentityFileに記載されている内容のファイル名とパスが間違っていないか確認してください。
また.sshディレクトリのパーミッションは700
秘密鍵のパーミッションは600に設定しないとエラーが出る場合もあります。

#.sshディレクトリのパーミッションを変更
chmod 700 ~/.ssh/
#パーミッションの変更
chmod 600 ~/.ssh/id_rsa

参考

https://help.sakura.ad.jp/rs/2247/
https://docs.github.com/ja/authentication/connecting-to-github-with-ssh/adding-a-new-ssh-key-to-your-github-account
https://docs.github.com/ja/authentication/connecting-to-github-with-ssh/testing-your-ssh-connection

コメントを残す

入力エリアすべてが必須項目です。メールアドレスが公開されることはありません。

内容をご確認の上、送信してください。