この記事をシェアする

今までサーバーにssh接続する時はMac OS X 付属のターミナルを使っていたのですが、メインに使っているCoda2にもターミナルが備わっているのでこちらも使うようになりました。

Coda2から秘密鍵を使ってSSH接続する方法がなかなか見つからなかったのでメモしておきます。

Coda2でSFTPサーバーに接続する時にはパスワード欄に鍵マークがあるので、ここをクリックすることでローカルマシンに保存してある秘密鍵を選択できます(Transmitも同じ)。

Coda2のSFTP
Coda2のSFTP

でも、ターミナルからSSH接続しようとすると秘密鍵を選択する欄がないんですよね。

Coda2のターミナル(接続先 SSH)
Coda2のターミナル(接続先 SSH)

ネットで検索してやっとヒントを見つけました。

いや、秘密鍵はそこに置いていないし複数ある場合はどうするんだろう・・・。

どうやらローカルの .ssh というディレクトリに config ファイルというのを作成すればいいらしい
さらに検索して見つけました。

まず Coda2、Mac OS X どちらでも良いのでターミナルを起動します(Coda2 の場合は接続先を「to Localhost」にしておく)。
何も設定していなければ、ログインしているユーザーのホームに入ります。
ここで

$ ls -a

で隠しファイルも含めて一覧を出してみます。
.ssh がありますね。

$ cd .ssh

で移動し、

$ ls

でファイル一覧を出します。
configというファイルがあるのでこれに設定を加えます(なければ作ってください)

コンピューター名やユーザー名はご自分の環境に置き換えてください
コンピューター名やユーザー名はご自分の環境に置き換えてください

configの中身は

Host example(任意の名前でOK)
    HostName     example.com    (実際にログインするホスト名)
    User         root           (ユーザー名。網元を使っている場合はroot)
    IdentityFile ~/.ssh/key.pem (ローカルにある秘密鍵の場所

です。()は説明のために書いてあるので実際には必要ありません。
先にリンクしたブログにも詳しい書き方が載っていますので、ご参照ください。

ファイルの場所さえ分かればテキストエディタで修正する事もできますが、vi でもOKです。

ターミナルで

$ vi config

とすると、中身を表示します。
escキーで編集モードに移行しますので、上のテキストをコピペしつつ、必要箇所を修正してください。
なお、秘密鍵の場所ですが、 ~./ssh/ に置いていなくても大丈夫です。
ちなみに、パスを入力するのが面倒な人は秘密鍵のファイルを当該部分にドラッグ&ドロップすることで簡単にパスの指定が可能です。

スクリーンショット 2013-01-11 16.26.35

編集が終わったら escキー でコマンドモードに戻り、保存してviを終了してください。

ここまで終わったら一旦 exitで終了して、Coda2の新規ターミナルに戻ります。

接続先を via SSHにし、サーバとユーザ名だけを入力して接続してみてください。

スクリーンショット 2013-01-11 16.36.39

無事接続できたらOKです。

※以前に「AWS EC2 + 網元でWordPressサイトを構築」で書きましたが、秘密鍵のパーミッションが間違っていると接続できませんのでご注意ください!

この記事をシェアする