今回はそんな悩みを解決するために、エックスサーバーVPSでSSH接続する方法を書いていきます。立てたサーバーにSSH接続したかったら参考にしていただけると幸いです。
- エックスサーバーVPSでのSSH Keyの登録方法
- プライベートキーの設定
- SSH接続方法
エックスサーバーVPSにはコンソールも用意されているけど、こういうコンソールはどこも使いづらいです。普通に作業するならSSH接続して操作するのがおすすめです。
エックスサーバーVPSでSSH接続する手順
エックスサーバーVPSでSSH接続するまでですが、以下の手順でできます。
- SSH Keyを登録する
- 秘密鍵の設定をする
- SSHの接続ポートを開ける
- SSH接続する
大体画面から操作できるのでそんなに難しいことはないです、やっていきましょう。
初期状態だと鍵を使わなくてもSSH接続自体はできるので、鍵使ってやりたくない場合はポート開けてSSH接続コマンド打てば入れるはずです。
SSH Keyを登録する
サーバーを立てる際にSSH Keyも一緒に作成していれば、この作業は必要ないです。申し込み時にここで指定していれば、SSH Keyは作成されて秘密鍵(プライベートキー)もダウンロードされているはずです。
もし作成されているのかわからなかったら、SSH Keyの項目に登録されているか確認してみるといいです。
もし登録されているけど、秘密鍵(プライベートキー)はどこかに消えてしまった・・・っていう場合には削除して新たにキーを作るといいですね。
SSH Keyを登録する
SSH Keyの登録がまだでしたらSSH Keyを登録しましょう。
Keyの名前を入力して生成します。
プライベートキーもダウンロードすることができるので、ダウンロードしましょう。
プライベートキーのパーミッション設定を行う
ダウンロードしたプライベートキーのパーミッション設定を行います。.sshディレクトリがなければ作成するといいです。
// .sshディレクトリに移動
$ mv /Users/〇〇/Downloads/xserver-vps-ssh-key.pem /Users/〇〇/.ssh
// パーミッション変更
$ cd /Users/〇〇/.ssh
$ chmod 400 xserver-vps-ssh-key.pem
これでSSHコマンドを打って接続できるかと思いきや、デフォルトだとSSHポートが開いていないので開けます。
SSHポート(22)を開ける
VPSの管理画面から接続許可ポートを変更します。
SSHをONにして、[接続許可ポートを設定する]ボタンをクリックすればOKです。
エックスサーバーVPSにSSH接続する
サーバーのIPアドレスを確認する
接続する際に使うのでIPアドレスを確認しておきましょう。
これをコマンドで指定する時に使います。
SSH接続する
[ssh -i 秘密鍵へのパス アカウント@ホスト]で接続です。$ ssh -i /Users/U/.ssh/xserver-secretkey.pem root@ipアドレス
うまくいくと接続できましたね。
ここからいろんなコマンドを打って作業してみてください。
パスワード認証で接続する
単純に鍵認証じゃなくてパスワード認証でも接続できる。
$ ssh root@ipアドレス
ただセキュリティのことを考えるとこれは後で禁止にしたいです。
もっと安全に接続できるように設定する
このまま作業してもできるんですが、これからもサーバー内の作業をする場合にはrootでの接続はできるだけやめたいです。新たにユーザーを作って、そのユーザーで作業することをおすすめします。
- 新たにユーザー作成
- 新たに作成したユーザーでSSH接続できるように設定
- rootログインの禁止
- パスワード認証の禁止
余裕があればやってみましょう。
新たにユーザーを作成する
# ユーザーの作成
$ adduser takizawa
wheelグループを作成して権限を与えます。
# wheelグループの作成
$ groupadd wheel
$ visudo
%wheel ALL=(ALL) ALL を追加
$ usermod -G wheel takizawa
これでSSH接続を一度切って再度この作成したユーザーで接続してみます。
$ ssh takizawa@サーバーのIPアドレス
無事接続できたらOKです。
新たに作成したユーザーでSSH接続できるように設定する
作成したユーザーは鍵を持っていないので、鍵を配置します。
rsync --archive --chown=takizawa:takizawa ~/.ssh /home/takizawa
root/.ssh/配下のauthorized_keysと同じように作成したユーザーにも鍵が設置されました。これで作成したユーザーと秘密鍵を指定してSSH接続してみましょう。
$ ssh -i 秘密鍵へのパス takizawa@ipアドレス
パスワードを聞かれずに鍵認証で接続できるようになりました。
rootでのSSH接続を禁止にする
sshの設定ファイルを開いてrootログインを禁止にします。
$ vim /etc/ssh/sshd_config
PermitRootLogin yes
↓
PermitRootLogin no
$ service ssh restart
これでrootでのSSH接続はできなくなりました。
パスワード認証でのSSH接続を禁止する
パスワードを使ったSSH接続は禁止したいので、PasswordAuthenticationをnoに変更します。
$ sudo vim /etc/ssh/sshd_config
PasswordAuthentication yes
↓
PasswordAuthentication no
これで再起動して完了です。
$ sudo service ssh restart
まとめ
エックスサーバーVPSでのSSH接続方法について見てみました。デフォルトだとSSH接続はrootでもパスワード認証でもできるので、それらは変更しておくことをお勧めします。
SSH接続できるようになったら、サーバーの設定をコマンドで諸々やっていきましょう。