SSH 接続設定
Contents
tracpath(トラックパス)は SSH 接続に対応しています。ここでは、tracpath(トラックパス)に SSH 接続する手順を解説します。 初めての人でも手順通り進めることでセキュアな「SSH接続」が利用可能です。
SSH 接続とは
SSH(Secure Shell / セキュアシェル)とは、暗号や認証の技術を利用して安全にクライアントとリモートマシン間の通信するためのプロトコルです。 SSH を使用するとパスワードなどの認証部分を含むすべてのネットワーク上の通信が暗号化され安全にデータのやりとりをすることができます。
公開鍵・秘密鍵を作成する
SSH 接続は公開鍵暗号方式による接続を意味します。公開鍵暗号で認証を行うためには、必ず「公開鍵」と「秘密鍵」が必要になります。 2つの鍵を利用することで安全な通信を行うことが可能です。
- 公開鍵
- 公開鍵は通信相手に開示・登録しておく鍵です。今回の通信相手は tracpath(トラックパス)です。
- 秘密鍵
- 秘密鍵はあなた専用の鍵でとても大切な情報です。
SSH 鍵を生成する(Windows編)
PuTTYgenで鍵を作成する方法です。
スタートメニューのTortoiseGit内から「PuTTYgen」を開きます。
- 画面を開いた状態です。「Generate」ボタンをクリックして鍵を生成します。
- ※ここではRSA方式(デフォルト)で進めます。
- プログレスバーが進むまで(緑の部分が右端に行くまで)枠内でマウスを適当に動かして下さい。
- 作成が終了すると以下の画面に変わります。秘密鍵と公開鍵がそれぞれ作成されます。
- 秘密鍵は「Save private key」よりダウンロードして下さい。
秘密鍵は慎重に取り扱って下さい。
SSH 鍵を生成する(Mac編)
Mac で SSH 鍵を生成するためには、「アプリケーション -> ユーティリティ」ディレクトリ内にある「ターミナル」を起動して、鍵の生成を行います。
「アプリケーション -> ユーティリティ」から「コンソール」を開きます。
- コンソール画面を開いてから、次のコマンドを実行してください。
コンソール画面で鍵を作成するために鍵を入れるフォルダに移動します。フォルダがない場合は作成してください。
$ cd ~/.ssh -bash: cd: /Users/guest01/.ssh: No such file or directory <<ディレクトリがありません、エラーが表示されたら作成してください>> $ mkdir -m 0700 .ssh $ cd ~/.ssh
次のコマンドで鍵を生成します。以下のコマンドを入力します。
$ ssh-keygen -t rsa
- ※ここではRSA方式(デフォルト)で進めます。
鍵を生成すると、3つの質問があります。
- 鍵の保存場所は?(何も入力せずに「リターンキー」を押下でよいです)
- パスフレーズを入力してください(パスワード設定と同じ)
- パスフレーズを再入力してください
パスフレーズは「なし」でも大丈夫です。
Generating public/private rsa key pair. Enter file in which to save the key (/Users/guest01/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again:
質問に回答したら鍵の生成が始まります。「id_rsa」(秘密鍵)と「id_rsa.pub」(公開鍵)の2つの鍵が生成されます。 すでに鍵を生成したことがある場合、上書きされますので注意が必要です。
Your identification has been saved in /Users/guest01/.ssh/id_rsa. Your public key has been saved in /Users/guest01/.ssh/id_rsa.pub. The key fingerprint is: SHA256:K0dO37Buf0lt8XKlAdLkoHh8D5J+G0mQSSiFnP1NHLw guest01@hikawa.local The key's randomart image is: +---[RSA 2048]----+ | . =.oo=o+. | | = ooo+=oo | | ...*o+o.. | | o.+E+ ...| | S = . ++| | + + * + =| | . + + .. = | | o .. o | | ..... | +----[SHA256]-----+
生成されたファイルを確認します。
$ ls -la total 16 drwx------ 4 guest01 staff 136 Mar 3 12:14 . drwxr-xr-x+ 14 guest01 staff 476 Mar 3 12:13 .. -rw------- 1 guest01 staff 1766 Mar 3 12:14 id_rsa -rw-r--r-- 1 guest01 staff 402 Mar 3 12:14 id_rsa.pub
- 鍵の名前を変えて生成したいとき
$ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/Users/guest01/.ssh/id_rsa): id_tracpath_rsa Enter passphrase (empty for no passphrase): Enter same passphrase again:
この例では、tracpath(トラックパス)で利用する専用の鍵「id_tracpath_rsa」と「id_tracpath_rsa.pub」を作成しました。
- コマンド入力後、秘密鍵と公開鍵がそれぞれ作成されます。
$ ls -la -rw------- 1 guest01 staff 1766 Mar 3 12:14 id_rsa -rw-r--r-- 1 guest01 staff 402 Mar 3 12:14 id_rsa.pub -rw------- 1 guest01 staff 1675 Mar 3 12:25 id_tracpath_rsa -rw-r--r-- 1 guest01 staff 402 Mar 3 12:25 id_tracpath_rsa.pub
秘密鍵は慎重に取り扱って下さい。
SSH 鍵を生成する(新規に鍵を作成する)
tracpath(トラックパス)は、SSH 鍵を生成することが可能です。SSH 鍵を持っていない方や tracpath(トラックパス)専用の鍵を生成したい方は簡単に公開鍵と秘密鍵のペアを生成することができます。
- tracpath にログインし、「個人設定-SSH鍵」にアクセスして下さい。
- 「SSH鍵」画面内下部の「SSH 秘密鍵と公開鍵の作成」より作成します。
- ここでは2048ビット長の RSA 鍵を作成できます。「PEM (OpenSSH)」 「 PuTTY 秘密鍵 (*.ppk) 」か鍵の形式を選択して下さい。
- 必要であればコメントを入力し「作成」をクリックします。
コメントは鍵の内容について記録したり、説明用のメモとして利用することができます。例えば、「tracpath専用の鍵」「お客様Aの本番環境の鍵」
- 生成された秘密鍵を保存して下さい。
鍵の保存場所は~/.ssh/ フォルダに格納することをお勧めします。鍵を利用するアプリケーションによっては標準の鍵格納フォルダとして判別してくれます。
秘密鍵はあなただけの大切な鍵です。慎重に取り扱って下さい。
- 公開鍵は自動で tracpath に登録します。 コメントに入力した内容がアカウントに関連付けられている SSH 公開鍵の一覧に表示します。
SSH 鍵ページについて
tracpath の「SSH鍵」の設定ページは 個人設定からアクセス出来ます。 tracpath にログイン-個人設定-SSH鍵にアクセスして下さい。
SSH 鍵(現在登録しているあなたの公開鍵情報)
- SSH 鍵はあなたのアカウントに関連付けられている SSH 公開鍵の一覧を表示します。
- 「公開鍵の追加」で追加された公開鍵はここにリスト化され表示されます。
SSH 公開鍵の追加(すでに利用している公開鍵を登録する)
- すでに公開鍵を持っている場合、アカウントに紐つけることで認証に利用することができます。公開鍵をコピー&ペーストして「追加」してください。
SSH 秘密鍵と公開鍵の作成(鍵を新規作成する)
- SSH 秘密鍵を作成し、公開鍵を追加します。SSH 秘密鍵はあなただけが利用することができる大切な情報です。
SSH 鍵を tracpath(トラックパス)に登録する
tracpath(トラックパス)にログインし、生成した公開鍵(id_rsa.pub、または、id_tracpath_rsa.pub)のデータ(ファイルの本文)を登録します。
生成した公開鍵を tracpath(トラックパス) に登録する
PuTTYgenで生成した公開鍵をコピーします。または、ターミナルから作成した公開鍵ファイルの中身(id_tracpath_rsa.pub)をテキストエディタで開き、コピーします。
- tracpathにログインし、「個人設定」から「SSH鍵」を選択します。
- SSH 公開鍵の追加の枠にコピーした公開鍵を貼り付けて下さい。
- 「追加」をクリックすると、SSH 公開鍵が追加されます。
鍵の中身をクリップボードにコピーする便利な方法
Mac
$ cat ~/.ssh/id_tracpath_rsa.pub | pbcopy
Windows(コマンドライン)
C:>clip < "%USERPROFILE%/.ssh/id_tracpath_rsa.pub"
接続を確認する
SSH 経由でアクセスするリポジトリ URL は、リポジトリごとに以下の形式になります。各プロジェクトのグローバルメニュー「リポジトリ」からリポジトリブラウザで確認することができます。
リポジトリ毎の接続書式の例
リポジトリ |
URL |
Subversion |
svn+ssh://svn@name.tracpath.com/reponame |
Git |
git@name.tracpath.com:reponame または ssh://git@name.tracpath.com/reponame |
Mercurial |
ssh://hg@name.tracpath.com/reponame |
リポジトリ利用時に秘密鍵を指定する
接続先によって秘密鍵を変えたい場合、.ssh/config に設定を追加する方法があります。
.ssh/config に複数のホスト名を定義します。
Host myproject Hostname myproject.tracpath.com User syoji IdentityFile ~/.ssh/id_rsa Host myproject2 Hostname myproject.tracpath.com User syoji IdentityFile ~/.ssh/id_rsa2
git clone を実施するときに .ssh/config で指定したホスト名を入力します。
$ git clone git@myproject:repository-name $ git clone git@myproject2:repository-name
TortoiseGit から接続を確認する(Windows編)
Windows 環境で TortoiseGit を利用しているときの SSH鍵を設定する方法を説明します。 Push 時に SSH 接続を設定する場合、右クリックメニューの 「TortoiseGit -> プッシュ」をクリックします。下部のような画面が表示されるので SSH鍵を登録することが出来ます。
プッシュ時にSSH接続を設定する場合にはTortoiseGit-プッシュ をクリックすると表示されるウィンドウ内「管理」をクリックします。
リモートに origin、URLに tracpath(トラックパス)で準備したリポジトリのURL、Putty 認証に、先ほど保存した秘密鍵ファイル(PuTTY 秘密鍵 (*.ppk))を指定して「新規に追加/保存」ボタンをクリックします。 リモートのリストに作成したoriginが追加されるので、OKボタンをクリックします。
その他個人設定へのリンク
関連FAQ