【Bitbucket】git pushでPermission denied (publickey).と表示されるときの対処法

Share

こんにちは!!ようこそ、当ブログgcbgardenへ。管理人のsakurabaaa(@sakurabaaa_g)です。

Macのターミナルからgit push(bitbucket)しようとしたときに、

「Permission denied (publickey)」

と表示されてしまい、うまくpushできないときの対処法について備忘録としてまとめました。

Permission denied (publickey).

スポンサーリンク

MacにSSH鍵の準備

1. SSHの鍵を作成

cd ~/.sshに移動。

# hoge@example.com はBitbucketに登録しているメールアドレスを記入
$ ssh-keygen -t rsa -C hoge@example.com

2. SSH鍵のファイル名を指定

上のコマンドを実行すると、

Enter file in which to save the key (/Users/PATH/.ssh/id_rsa):

と表示されます。

ここでSSH鍵のファイル名を指定します。

特に指定がない場合「id_rsa」として生成されます。

Enter file in which to save the key (/Users/PATH/.ssh/id_rsa): SSH鍵の任意のファイル名
Enter passphrase (empty for no passphrase): パスワードは入力しない >> Enter
Enter same passphrase again: パスワードは入力しない >> Enter
Your identification has been saved in SSH鍵の任意のファイル名.
Your public key has been saved in SSH鍵の任意のファイル名.pub.

SSH鍵の生成時にパスワード(passphrase)を入力してしまうと、

git pushなどをしたときにパスワードが要求されてしまうみたいです。

注意が必要!!

3. OSにSSH鍵を認識させる

$ cd ~/.ssh/
$ vi config

下記内容をコピペ&必要箇所(IdentityFile)を書き換えます。

Host bitbucket.org
 HostName bitbucket.org
 User git
 Port 22
 IdentityFile ~/.ssh/SSH鍵の任意のファイル名
 TCPKeepAlive yes
 IdentitiesOnly yes

bitbucketへの登録

4. 公開鍵の内容をクリップボードにコピー

// ファイル名は自分で変更したものを入力
$ pbcopy < SSH鍵の任意のファイル名.pub

5. bitbucketに公開鍵を追加

  1. Bitbucketにログイン
  2. Bitbucket 設定
  3. セキュリティ >> SSH鍵
  4. 鍵の追加
  5. Labelに適当な名前(PC名とか)を入力、Keyにクリップボードの内容をペースト。鍵を追加

6. ターミナルからログインの確認

$ ssh -T git@bitbucket.org

// 成功した場合
logged in as *****.
You can use git or hg to connect to Bitbucket. Shell access is disabled.

// 失敗した場合
Permission denied (publickey).

その他

Bad owner or permissions

と、表示されてしまうとき。

$ chmod 600 ~/.ssh/config

おしまい

githubに有料会員登録をしていましたが、個人利用だと無料でプライベートリポジトリを持つことができるBitbucketに乗り換えました。

すぐ解決できてよかった。

参考Gitで”Permission denied (publickey).” が出たときのメモ

この記事を書いた人。
1992年生まれ。フリーなエンジニア。書きたいことを気ままに書いてます!
好きなことは夏の神宮でビール片手に野球観戦、Appleオタ
趣味は、ゴールデン街散策・Web・IT・ものつくりの開発・勉強などなど

スポンサーリンク

Share

Follow