エックスサーバーにSSHで接続してみよう!
こんにちは、okutani(@okutani_t)です。本記事ではエックスサーバーへSSH接続をおこなう手順を紹介しています。
また今回、Macのターミナルを使って接続設定をおこなっています。Windowsの方はPuTTYなどのターミナルソフトを利用してください。
ではさっそく、エックスサーバーにSSHで接続する手順をみていきましょう。
エックスサーバーにSSHで接続する
まずはサーバーパネルから管理画面にログインします。
LINKサーバーパネル – ログイン | レンタルサーバー 高速・高機能・高安定性の【エックスサーバー】

『SSH設定』をクリック。

SSHの設定を有効にします。『ONにする』をクリック。

エックスサーバーではSSHのパスワード接続が禁止されているため、公開鍵を使ったアクセスをおこないます。
また、公開鍵接続の設定は2通りあり、『サーバー上で公開鍵の鍵ペアを生成』『PC上で公開鍵の鍵ペアの生成』のいずれかで鍵を生成します。お好きな方法で設定してみてください。
まずは『サーバー上で公開鍵の鍵ペアを生成』の方法をみていきましょう。
サーバー上で公開鍵の鍵ペアを生成する場合
さきほどのSSH設定画面から『公開鍵認証用鍵ペアの生成』タブを選択し、パスフレーズを入力、『公開鍵認証用の鍵ペア生成(確認)』をクリック。

確認画面が表示されるので『公開鍵認証用の鍵ペア生成(確定)』をクリック。

これで公開鍵認証用の秘密鍵『サーバーID.key』ファイルがダウンロードされます。
ホームディレクトリに.sshディレクトリを作成し、そこに秘密鍵を「id_rsa」にリネームして配置しておきましょう。
$ mkdir ~/.ssh
$ mv サーバーID.key ~/.ssh/id_rsa
パーミッションを「.sshを700」「秘密鍵を600」に変更しておきます。
$ chmod 700 ~/.ssh
$ chmod 600 ~/.ssh/id_rsa
ちなみに、公開鍵はサーバ上の「/.ssh/authorized_keys」へ設置されています。
接続してみる
次のコマンドでエックスサーバーにSSH接続してみましょう。
$ ssh -l サーバーID -p 10022 サーバーID.xsrv.jp

上記のように「Are you sure you want to continue connecting (yes/no)?」と聞かれるのでyesと入力。
パスフレーズを入力。

これでエックスサーバーにSSH接続できました。

次に、PC上で公開鍵の鍵ペアの生成して、SSH接続する方法を説明します。
PC上で公開鍵の鍵ペアを生成する場合
ホームディレクトリに.sshディレクトリを作成し、そこに公開鍵「id_rsa.pub」と秘密鍵「id_rsa」を生成しましょう。なお、すでに他のサービスで鍵を生成している場合は使いまわしてもOKです。
$ mkdir ~/.ssh
$ ssh-keygen -t rsa
ssh-keygenコマンド入力後、「Enter1回」「パスフレーズ2回」入力します。

公開鍵と秘密鍵が生成されました。パーミッションを変更しておきます。
$ chmod 700 ~/.ssh
$ chmod 600 ~/.ssh/id_rsa
次のコマンドを入力しておくと、接続時にパスフレーズを省略することができます。お好みでどうぞ。
$ ssh-add ~/.ssh/id_rsa
エックスサーバーに公開鍵を登録します。次のコマンドで公開鍵の内容をコピーしておきましょう。
// Macの場合
$ pbcopy < ~/.ssh/id_rsa.pub
// Windowsの場合
$ clip < ~/.ssh/id_rsa.pub
サーバーパネルから『SSH設定』→『公開鍵登録・設定』を開き、公開鍵の内容を貼り付けます。
ちなみに、改行して複数の公開鍵を登録することもできます。別のPCや、複数人でSSHを使いたい時に便利ですね。
『公開鍵を登録する(確認)』をクリックします。

『公開鍵を登録する(確定)』をクリック。

接続確認
ターミナルから次のコマンドで、エックスサーバーにSSH接続してみましょう。
$ ssh -l サーバーID -p 10022 サーバーID.xsrv.jp

無事にエックスサーバーにSSH接続することができました。
最後に、接続コマンドを簡略化する方法を説明します。
configファイルで接続を簡略化
接続時に毎回、『ssh -l サーバーID -p 10022 サーバーID.xsrv.jp』と打つのはめんどうです。~/.ssh/configファイルに接続設定を記述することで、コマンドを簡略化することができます。
$ vi ~/.ssh/config
Host xsrv
HostName サーバーID.xsrv.jp
Port 10022
User サーバーID
IdentityFile ~/.ssh/id_rsa
ServerAliveInterval 60
SSH接続は、一定時間サーバーとのやりとりがないと勝手に接続が切れてしまうため、上記のように「ServerAliveInterval 60」を指定しておきます。こうすると、60秒に1回サーバーへメッセージが送信されるので接続が切れなくなります。
次のコマンドで接続してみましょう。
$ ssh xsrv

エックスサーバーでSSHを使いたい方の参考になれば幸いです。
サーバーをいろいろいじりたいと思ったらSSH接続は必須ですね。エックスサーバー以外のサーバーも同じような手順でおこなうので、一度手順を覚えておくと何かと便利です。