Macのターミナルから「さくらVPS」にSSHリモート接続&鍵方式でログインする方法(複数のid_rsaを管理)

ブログ

自宅のMacから仕事用のサーバーに接続できるようにしました。

今回は、接続したいサーバーが複数あること、鍵方式で接続していること、この2点を解決する為に少々設定が必要だったので、その設定方法をメモしておきます。

 

設定の流れ

1.Macのターミナルを起動する

2.「id_rsa」ファイルをコピーして.sshフォルダに保存する

3.ホストの情報をconfigに設定

4.パーミッションの設定

5.サーバーに接続

  

1.Macのターミナルを起動する

まずはMacのターミナルを起動しておきます。

ちなみにアプリを起動するのに「Alfred」を活用してたりします。

f:id:lord_cashew:20130210161507p:plain f:id:lord_cashew:20130210171810p:plain

 

2.「id_rsa」ファイルをコピーして.sshフォルダに保存する

既に作成してあった(他のパソコンから接続していたので) id_rsaファイルとid_rsa.pubファイルをデスクトップにコピーします。

接続するサーバーが複数ある場合、このid_rsaファイルが複数あると思いますので、それぞれファイル名を変更します。 

id_rsa.****

id_rsa.pub.****

(****は任意の半角英数字)

これらのファイルを全て、 ホームフォルダにある「 ./ssh (不可視フォルダ)」に保存します。

 

「 ./ssh」は普通にFinderからアクセスすると見えません。

f:id:lord_cashew:20130210163226p:plain

 

不可視フォルダを表示には、ターミナルからコマンドを入力して設定することができるのですが、今回は簡単に不可視フォルダの表示非表示が設定できる「ShowOrHide」というフリーソフトを使いました。

f:id:lord_cashew:20130210163126p:plain

このフリーソフトを起動して、

f:id:lord_cashew:20130210163444p:plain

「Show」をクリックするだけで、不可視フォルダ・ファイルが見えるようになります。

f:id:lord_cashew:20130210163519p:plain

この状態で、デスクトップに保存してある「id_rsa.****」と「id_rsa.pub.****」を「.ssh」フォルダに移動します。

 (移動した後はHideに戻しておくことをお勧めします)

 

3.ホストの情報をconfigに設定

次にターミナルでの作業にとりかかります。

ターミナルで次のコマンドを入力します。

$ cd .ssh

$ vi config

「vi」でconfigファイルを新規作成する画面になりますので、下記内容を入力します。

ちなみに下記は接続するサーバーが2つある(id_rsaファイルも2つ)場合での内容です。

Host **** ←任意の半角英数字(id_rsaと同じにした方が管理しやすい)

HostName ***.***.***.*** ←接続先サーバーのホスト名もしくはIPアドレス

Port ** ←接続先のポート

IdentityFile ~/.ssh/id_rsa.**** ←使用する鍵ファイルを指定

User **** ←接続先サーバーでのユーザー名

Host ○○○○

HostName ○○○.○○○.○○○.○○○

Port ○○

IdentityFile ~/.ssh/id_rsa.○○○○

User ○○○○

入力したら保存して「vi」を終了します。

 

「 vi」の操作方法についての詳しくはググって調べてほしいのですが、

x カーソル直前の文字を削除

i インサートモード(編集モード)

ESC インサートモード終了

:q! 編集を破棄して強制終了

:wq ファイルに保存してviを終了

よく使うのはザックリこんなコマンドです。

 

4.パーミッションの設定

続いてパーミッションを変更します。

ターミナルで次のコマンドを入力します。

$ chmod 700 ~/.ssh

$ chmod 600 ~/.ssh/id_rsa.**** ←使用するファイルの数だけコマンド入力

保存先のフォルダのパーミッションを700、保存したid_rsaファイルのパーミッションを600に、それぞれ設定します。

 

パーミッション700(rwx——は、自分には全ての実行権が許可されるが、自分以外のグループや他人には何も許可しない、という意味です。

パーミッション600(rwx——は、自分は呼出と書込はできるが実行はできない、、自分以外のグループや他人には何も許可しない、という意味です。

 

5.サーバーに接続

これで準備は完了です。

ターミナルから下記コマンドを入力してサーバーに接続します。

$ ssh **** ←ホスト名

さくらVPSに接続されます。

接続ユーザーは「config」で設定したユーザーです。

f:id:lord_cashew:20130210171512p:plain

初めて接続した時はパスワードを聞いてくるので、接続ユーザーのパスワードを入力して下さい。

 

まとめ

仕事用とプライベート用、自分用とお客様用など、複数のサーバーに接続してる人は多いのではないでしょうか。

Windowsの「TeraTerm」だと複数サーバーへの接続は簡単にできるのですが、いざMacの「ターミナル」から接続しようと思った時に「???」となったので、いろいろと調べつつ試しつつ実現してみました。