Bitbucket で SSH認証カギを設定する手順を記載します。
Git を使うために、必ずしも必要というわけではないのですが、SSH認証カギを生成・登録して使用すると良い場合が多々あります。
Bitbucket で SSH認証カギを使用するための手順などを記載します。
OS: | (1) WSL/Ubuntu, | 20.04 |
(2) VirtualBox/Ubuntu, | 20.04 | |
ベースOS : | Windows10 home, | Version 2003 |
https://bitbucket.org/ にアクセスしてアカウントを作ってください。
詳細は割愛します。
SSH認証鍵はホームフォルダ下の ".ssh" フォルダに作成されます。
下記コマンドで .ssh
フォルダおよびフォルダ内のファイルを確認することで、既に登録されているSSH認証鍵の状態を確認できます。
$ ls ~/.ssh
複数のSSH認証鍵を登録することを想定して、Bitbucket専用フォルダに鍵を登録する手順として記載します。
下記手順でSSH認証鍵をホーム配下の .ssh/bitbucket フォルダ内に生成します。
$ mkdir ~/.ssh $ cd ~/.ssh $ mkdir bitbucket $ cd bitbucket $ ssh-keygen -t ed25519 -C hoge@foo.com <--- "hoge@foo.com" は自分のメールアドレス Generating public/private ed25519 key pair. Enter file in which to save the key (/home/[ユーザ名]/.ssh/id_ed25519):/home/[ユーザ名]/.ssh/bitbucket/id_ed25519 <----- "bitbucket"フォルダへ修正してEnter Enter passphrase (empty for no passphrase): <-----Enterを押す Enter same passphrase again: <-----Enterを押す Your identification has been saved in /home/[ユーザ名]/.ssh/bitbucket/id_ed25519. Your public key has been saved in /home/[ユーザ名]/.ssh/bitbucket/id_ed25519.pub. The key fingerprint is: SHA256:Z5I/tXZlSEIvrQgZ2jFq8vUa6FHkmxbW+jps24D9WqU hoge@foo.com The key's randomart image is: +--[ED25519 256]--+ | = . | | * * . o | | . + X . o + | | + = O . = . | | + S = + . o| | . = O + . o | | o.+ E o . | | +* o . | | .++o | +----[SHA256]-----+ $
これで公開鍵と秘密鍵を作成できました。
NOTE
説明を ssh-keygen -t ed25519 へ変更しました。動作確認済みです。
キーのタイプ | 最小キーサイズ (bit) | 例 |
---|---|---|
Ed25519 (ed25519) | 256 | ssh-keygen -t ed25519 -b 256 |
ECDSA (ecdsa) | 256 | ssh-keygen -t ecdsa -b 256 |
RSA (rsa) | 2048 | ssh-keygen -t rsa -b 2048 |
DSA / DSS (dsa) | 1024 | ssh-keygen -t dsa -b 1024 |
config ファイルに設定を書いていきます。無ければ以下のコマンドで作ることができます。
$ vi ~/.ssh/config
config ファイルに以下の情報を書き込みます。
["config"]
Host bitbucket.org HostName bitbucket.org IdentityFile ~/.ssh/bitbucket/id_ed25519 User git Port 22 TCPKeepAlive yes IdentitiesOnly yes
["config" (port 443 環境)]
ポート番号 22 を遮断している環境で 443 を使える場合、こちらの設定を使用してみてください。
Host bitbucket.org HostName altssh.bitbucket.org IdentityFile ~/.ssh/bitbucket/id_ed25519 User git Port 443 TCPKeepAlive yes IdentitiesOnly yes
["config" プロキシ環境下]
proxy 環境下ではこちらのサンプルを参照ください。"ProxyCommand" の行を追加しています。
Host bitbucket.org
HostName bitbucket.org
IdentityFile ~/.ssh/bitbucket/id_ed25519
User git
Port 22
TCPKeepAlive yes
IdentitiesOnly yes
ProxyCommand /usr/bin/corkscrew proxy.hoge.co.jp 8080 %h %p
NOTE
私の環境では corkscrew がインストールされていなかったので、
sudo
apt install corkscrew
でインストールしました。
config 設定は以上です。
Bitbucket にアクセス後、左下のユーザーアイコンを選択すると「Personal settings」が見えるのでこれをクリックします。
以下のコマンドで公開鍵を表示し、「ssh-rsa ~ 自分のメールアドレス」をコピーします。
$ cat ~/.ssh/bitbucket/id_ed25519.pub ed25519 ************************************************************************** ************************************************************************** mail@mail
"Key" の欄にコピーした公開鍵を張り付けます。
"Label" は自分がどの公開鍵かわかる名称を付けます。私は端末名を記入してみました。
複数の端末を持つ場合も共通の鍵を使用するのではなくそれぞれ異なる鍵を生成して使用するほうが良いと思います。
「保存」ボタンをクリックしたら設定は以上で完了です。
"ssh -T" コマンドで接続できるかを確認します。
以下のように表示されればOKです。
$ ssh -T git@bitbucket.org authenticated via ssh key. You can use git to connect to Bitbucket. Shell access is disabled $
リモートで作成済みのリポジトリを clone してみることで最後の動作確認としてみます。
コマンドは下記の通り先頭を "git@bitbucket.org:"
とします。
$ git clone git@bitbucket.org:<ユーザ名>/<リポジトリ名>.git
Git を使うために、必ずしも必要というわけではないのですが、SSH認証カギを生成・登録して使用すると良い場合が多々あります。
Bitbucket で SSH認証カギを使用するための手順などを記載します。
OS : | Windows10 home, | Version 2003 |
https://bitbucket.org/ にアクセスしてアカウントを作ってください。
詳細は割愛します。
SSH認証鍵はホームフォルダ下の ".ssh" フォルダに作成されます。
下記コマンドで .ssh
フォルダおよびフォルダ内のファイルを確認することで、既に登録されているSSH認証鍵の状態を確認できます。
> dir %homedrive%%homepath%\.ssh
複数のSSH認証鍵を登録することを想定して、Bitbucket専用フォルダに鍵を登録する手順として記載します。
下記手順でSSH認証鍵をホーム配下の .ssh/bitbucket フォルダ内に生成します。
> %homedrive% > cd %homepath% > mkdir .ssh > cd .ssh > mkdir bitbucket > cd bitbucket > ssh-keygen -t ed25519 -C hoge@foo.com <--- "hoge@foo.com" は自分のメールアドレス Generating public/private ed25519 key pair. Enter file in which to save the key (C:\Users\[ユーザ名]/.ssh/id_ed25519): c:\users\[ユーザ名]/.ssh/bitbucket/id_ed25519 <----- "bitbucket"フォルダへ修正してEnter Enter passphrase (empty for no passphrase): <-----Enterを押す Enter same passphrase again: <-----Enterを押す Your identification has been saved in c:\Users\[ユーザ名]/.ssh/bitbucket/id_ed25519. Your public key has been saved in c:\Users\[ユーザ名]/.ssh/bitbucket/id_ed25519.pub. The key fingerprint is: SHA256:Z5I/tXZlSEIvrQgZ2jFq8vUa6FHkmxbW+jps24D9WqU hoge@foo.com The key's randomart image is: +--[ED25519 256]--+ | = . | | * * . o | | . + X . o + | | + = O . = . | | + S = + . o| | . = O + . o | | o.+ E o . | | +* o . | | .++o | +----[SHA256]-----+ C:\Users\[ユーザ名]\.ssh\bitbucket>
これで公開鍵と秘密鍵が作成できました。
NOTE
説明を ssh-keygen -t ed25519 へ変更しました。動作確認済みです。
キーのタイプ | 最小キーサイズ (bit) | 例 |
---|---|---|
Ed25519 (ed25519) | 256 | ssh-keygen -t ed25519 -b 256 |
ECDSA (ecdsa) | 256 | ssh-keygen -t ecdsa -b 256 |
RSA (rsa) | 2048 | ssh-keygen -t rsa -b 2048 |
DSA / DSS (dsa) | 1024 | ssh-keygen -t dsa -b 1024 |
config ファイルに設定を書いていきます。無ければ以下のコマンドで作ることができます。
> notepad %homedrive%%homepath%\.ssh\config
config ファイルに以下の情報を書き込みます。
["config"]
Host bitbucket.org HostName bitbucket.org IdentityFile C:\Users\[ユーザ名]\.ssh\bitbucket\id_ed25519 User git Port 22 TCPKeepAlive yes IdentitiesOnly yes
["config" (port 443 環境)]
ポート番号 22 を遮断している環境で 443 を使える場合、こちらの設定を使用してみてください。
Host bitbucket.org HostName altssh.bitbucket.org IdentityFile C:\Users\[ユーザ名]\.ssh\bitbucket\id_ed25519 User git Port 443 TCPKeepAlive yes IdentitiesOnly yes
["config" (プロキシ環境)]
proxy 環境下ではこちらのサンプルを参照ください。
"ProxyCommand" の行を追加しています。
Host bitbucket.org
HostName bitbucket.org
IdentityFile C:\Users\[ユーザ名]\.ssh\bitbucket\id_ed25519
User git
Port 22
TCPKeepAlive yes
IdentitiesOnly yes
ProxyCommand "C:\Program Files\Git\mingw64\bin\connect.exe" -H http://proxy.hoge.co.jp:8080 %h %p
config の設定は以上です。
Bitbucket にアクセス後、左下のユーザーアイコンを選択すると「Personal settings」が見えるのでこれをクリックします。
以下のコマンドで公開鍵を表示し、「ssh-rsa ~ 自分のメールアドレス」をコピーします。
> type %homedrive%%homepath%\.ssh\bitbucket\id_ed25519.pub ssh-ed25519 AAAAB3NzaC1yc2EAAAADAQABAAABAQC1r2MfRiv4TGt+jTD96PLTRkYb1nn4mul2Rr 1o8a5iQ8blw3fd43c2qZYjVTIIh7N+lcUWuVXnXyWQNeVNT/IPEoaZaaur9SDAojhcA1kUMODK 0KuKDlbddxijWqJzzmEqcrZGNFEKUTVfB/ctQFZIgb0ScyGWiJWjIOVUloLqcdy6CEbHSjiLV7 rxFqPhFU/RO0QbqS58zjxWLVYP7jgJXudJ+QJcwmUlLoH1k22AEH154Q28hRNriupma8D/VyJ5 2VWWHwtgF+F6jp8G72uhn46aYmQXK3brUIv7vu/k/8lAUUNI32UrPNoxWII6rbs/lU+0vs5peh QqVlPcjJd3 hoge@foo.com
"Key" の欄にコピーした公開鍵を張り付けます。
"Label" は自分がどの公開鍵かわかる名称を付けます。私は端末名を記入してみました。
複数の端末を持つ場合も共通の鍵を使用するのではなくそれぞれ異なる鍵を生成して使用するほうが良いと思います。
「保存」ボタンをクリックしたら設定は以上で完了です。
"ssh -T" コマンドで接続できるかを確認します。
以下のように表示されればOKです。
$ ssh -T git@bitbucket.org authenticated via ssh key. You can use git to connect to Bitbucket. Shell access is disabled $
リモートで作成済みのリポジトリを clone してみることで最後の動作確認としてみます。
コマンドは下記の通り先頭を "git@bitbucket.org:"
とします。
$ git clone git@bitbucket.org:<ユーザ名>/<リポジトリ名>.git
本ページの情報は、特記無い限り下記 MIT ライセンスで提供されます。
2024-02-29 | - | SSH鍵アルゴリズムを RSA から Ed25519 へ記載変更、他 |
2022-11-07 | - | ページデザイン更新 |
2021-07-04 | - | Windows の情報を追記 |
2021-02-07 | - | 新規作成 |