しばらく操作していないとすぐ忘れてしまうので、備忘録用に。
XServerの サーバー上で公開鍵認証用鍵ペアの生成を行い、MacのターミナルからSSH接続する手順について記載しています。
なお、Windows PCからTeraTermを利用してSSH接続する方法については こちらの記事 に掲載しています。
XServer側での作業
XServerにログインし、サーバーパネルの『SSH設定』から下記2つの設定を行います。
- SSH設定の状態を「ON」にする。
- 公開鍵認証用鍵ペアを生成する。

「SSH設定」をクリックします。

初期設定ではOFFになっていると思いますので、ONにチェックを入れて「設定する」をクリックします。これでSSH設定の状態が「ON」になります。

続いて公開鍵認証用鍵ペアを生成します。
こちらは、「SSH設定」の隣のタブを開いてパスフレーズを入力したあと、「確認画面へ進む」をクリックして表示された画面です。「生成する」をクリックすると、秘密鍵(「サーバーID.key」)が自身のPCにダウンロードされます。
パスフレーズは、このあとターミナルからSSH接続する際に必要ですので、控えておきましょう。
Mac側での作業
ターミナルを起動し、以下コマンドを打ち込んでいきます。
なおターミナルは、「Finder」→「アプリケーション」→「ユーティリティ」の中にあります。
mkdir ~/.ssh
「.ssh」というディレクトリを作成。
mv ~/Downloads/xxx.key ~/.ssh/
XseverのSSH設定にて生成・ダウンロードした秘密鍵を、「.ssh」ディレクトリに移動。
xxx.keyには、実際にダウンロードしたファイル名を入れること。
mv ~/.ssh/xxx.key ~/.ssh/id_rsa
秘密鍵(xxx.key)の名前を「id_rsa」に変更。
chmod 700 ~/.ssh
「.ssh」のパーミッション(アクセス権限)を変更。
chmod 600 ~/.ssh/id_rsa
「id_rsa」のパーミッション(アクセス権限)を変更。
cd .ssh
「.ssh」ディレクトリに移動。
ssh -l サーバーID -i id_rsa サーバーID.xsrv.jp -p 10022
サーバーIDには、自身のXserverのIDを入れること。
この操作後、「Enter passphrase for key ‘id_rsa’:」と出たら、公開鍵認証用鍵ペアの生成時に設定したパスフレーズを入力する。(パスフレーズは、入力してもコマンド上に表示されませんが、気にせず入力してからEnterを押してください。)
パスフレーズがきちんと入力されていれば、これで接続できるはずです。
以下のような確認が表示されることがあります。
The authenticity of host '[ホスト名]' can't be established.
...........
...........
Are you sure you want to continue connecting (yes/no/[fingerprint])?
このメッセージは、MacのターミナルからSSHでサーバーに接続しようとした際に、サーバーのホスト鍵(SSHの公開鍵)がMacの ~/.ssh/known_hosts ファイルに登録されていないために表示される警告です。
「yes」と入力すれば先に進めます。
また、サーバーのホスト鍵が ~/.ssh/known_hosts に記録され、次回以降このメッセージは表示されなくなります。
