- エックスサーバーVPSでSSH接続がしたい!
このような疑問にお答えします。
サーバーとの通信にはSSH接続が必須です。
慣れてしまえば簡単なのですが、サーバーを触りたての頃はよく分からず苦手分野になってしまっている方も多いはず。
本記事では理屈にはあまり踏み込まずに、設定の手順を中心に解説しました。
エックスサーバーの契約手順は、以下の記事で解説しました。
» 参考:【簡単】エックスサーバーVPS(XServer VPS)の申し込み方法
SSHするための準備
サーバー契約直後では、SSH接続ができない設定になっています。
そこで、まずはSSH接続を許可する必要があります。
VPSパネルでの設定
エックスサーバーVPSのログイン画面 にアクセスします。
このような画面が開くので、ログイン情報を入力して「ログインする」をクリックしましょう。
パスワードなどはVPS契約時に送られてくるメールに記載があります。
ログインができたら、サイドバーの「パケットフィルター設定」をクリックします。
画面遷移したら、「パケットフィルター設定を追加する」ボタンをクリック。
接続許可できる画面が表示されるので、フィルターを「SSH」にして「追加する」ボタンをクリックしましょう。
これでVPSサーバーにSSH接続する準備は完了です。
秘密鍵を生成してダウンロードする
VPS管理画面のサイドバーにある「SSH Key」を選択します。
キーを発行するため、左上の「SSH Keyの登録」ボタンをクリックしましょう。
続いて、SSHキーのファイル名を決めます。
登録方法は「自動生成」を選んでください。
さらに登録ボタンを押して、先に進みましょう。
秘密鍵をダウンロードするボタンが表示されますので、これをダウンロードしてください。
一見すると怖そうなメッセージですが、あまり気負わないでください。
仮にダウンロードをし忘れても、最初からやり直せばキーの作り直しはできますので。
「ダウンロードする」ボタンを押すと、秘密鍵がダウンロードできました。
公開鍵は、もうエックスサーバーVPS側にセットされた状態になっています。
そのため公開鍵をあえて取得する必要はないのですが、もし公開鍵を見たいなら「表示する」ボタンをクリックして確認できます。
以上でSSH接続するための準備が整いました。
エックスサーバーVPSにSSH接続する方法
ここまでの手順でSSH接続のための設定は終わっています。
あとは手元のPCからエックスサーバーVPSに接続するだけです。
rootアカウントで接続
最初に、先ほど取得した秘密鍵を、ローカルマシンの.ssh
ディレクトリにコピーします。
cp /Users/username/Downloads/xserver-vps-key.pem ~/.ssh/
続いて、この秘密鍵の権限を設定します。
600番は、「所有者は読み書きできる」という意味の権限です。
chmod 600 ~/.ssh/xserver-vps-key.pem
最後に、この秘密鍵を使ってVPSサーバーに接続します。
ssh -i ~/.ssh/xserver-vps-key.pem root@ipアドレス
最初の接続時には、本当に接続しても良いかの確認がされます。
yes
を入力してEnterを押しましょう。
無事にログインできました。
これでログインは完了です。お疲れ様でした!
接続時のコマンドを短くする方法
先ほどのコマンド、長くて毎回実行するのが面倒ですよね。
ssh -i ~/.ssh/xserver-vps-key.pem root@ipアドレス
そこでここからは、簡単なコマンドでVPSサーバーに接続する設定を行います。
~/.ssh/config
ファイルを編集しにいきましょう。
ローカルマシンで以下のコマンドを実行します。
vi ~/.ssh/config
以下の内容を書き込んで保存してください。
Host xserver-vps
HostName ***.***.***.***
User root
IdentityFile ~/.ssh/xserver-vps-key.pem
Port 22
設定項目は、以下を参考にしましょう。
設定項目 | 内容 |
---|---|
Host | コマンド実行時に使う名前 |
HostName | 接続先VPSのIPアドレス |
User | ログインするユーザー名 |
IdentifyFile | 秘密鍵のパス |
Port | SSHのポート番号22 |
これで、以下のコマンドだけでSSH接続ができるようになります。
ssh xserver-vps
xserver-vps
の部分は、先ほどHost
の後に入力したものになります。
補足:自力でSSHキーを作ってVPSに登録する方法
ここからは基本に立ち返って、コンソール上で以下を行う方法をお伝えします。
- 公開鍵・秘密鍵のペアを作る
- SSH経由で公開鍵を登録する
- 設定ファイルの整備
SSH接続をより深く理解したい方は、こちらの方法もお試しください。
公開鍵と秘密鍵を作る
次のコマンドを実行して、公開鍵と秘密鍵のペアを作ります。(メールアドレスはご自身のものに書き換えてください)
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
以下が実際の実行結果です。
~ % ssh-keygen -t rsa -b 4096 -C "********@gmail.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/****/.ssh/id_rsa): ~/.ssh/xserver-vps
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in xserver-vps
Your public key has been saved in xserver-vps.pub
The key fingerprint is:
SHA256:*********
コマンド実行後に、キーペアのファイル名を聞かれます。
ファイル名はわかりやすいものならなんでも良いので、好みの名前をつけていただいて構いません。
ここでは後から見てすぐにわかるようにxserver-vps
としました。
その後に「パスフレーズ」を設定するか聞かれます。
何も入力せずにEnterを押せばパスフレーズなしで鍵が生成されますが、セキュリティを高めたいならパスフレーズを設定しましょう。
キーペアが生成されているか、次のコマンドを実行して確認しましょう。
ls -la ~/.ssh
-rw------- 1 ccts staff 3434 10 5 17:59 xserver-vps
-rw-r--r-- 1 ccts staff 746 10 5 17:59 xserver-vps.pub
xserver-vps
は秘密鍵です。
xserver-vps.pub
の方は公開鍵で、この後にこの公開鍵をエックスサーバーVPSに登録しておくことになります。
これでキーペアの生成は完了です!
公開鍵をエックスサーバーVPSに登録する
先ほど作成したキーペアのうち、公開鍵の内容をコピーしておきます。
catコマンドでクリップボードにコピー。
cat ~/.ssh/xserver-vps.pub | pbcopy
サーバーにSSH接続して、~/.ssh/authorized_keys
を編集しにいきます。
ssh -i ~/.ssh/xserver-vps-key.pem root@ipアドレス
vi ~/.ssh/authorized_keys
ファイルの末尾にコピーした内容を貼り付けて、保存します。
ssh-rsa *******************************************== ********@gmail.com
sshd
を再起動しましょう。
sudo systemctl restart sshd
これで鍵の設定は完了です。
登録した鍵を使ってアクセスできるようになりました。
簡単なコマンドでSSH接続できるようにする
すでにご説明した通り、configファイルに接続情報を書き込んでおくと簡単なコマンドでSSH接続できます。
ローカルマシンの~/.ssh/config
に以下を入力します。
Host xserver-vps
HostName ***.***.***.***
User root
IdentityFile ~/.ssh/xserver-vps
Port 22
これで、以下のコマンドだけでSSH接続ができるようになります。
ssh xserver-vps
ssh
の後に続く文字列は、先ほどHost
の後に入力したものです。
まとめ
エックスサーバーVPSでSSH接続する方法を解説しました。
サーバーへの接続までの流れは以下のとおりです。
- SSH接続の許可をする
- キーペアを作成する
- 秘密鍵を使ってSSH接続する
本記事の内容をマスターして、ぜひ安心・安全なVPSサーバー生活をお送りください!
SSH接続についてもっと知りたい方は、より突っ込んで解説した記事もご覧ください。
» 参考:【もう怖くない】どこよりも分かりやすいSSH接続入門と実践テクニック
コメント