【Xserver VPS】SSHの設定

SSH Xserver VPS

前回紹介したコンソールから作業を行う事もできますが、操作しづらいのでVPSにSSH接続して作業ができるように設定を行います。

サーバのSSHポートを開ける

VPSパネルから接続許可ポートの【変更する】をクリックします。

【全て許可】を【OFFにする】をチェック、【SSH(22)】を【ONにする】をチェックし、【接続許可ポートを設定する】をクリックする。

Xserver VPS Panel - Opening Port

SSH接続の設定を行う

以下の作業ではサーバ側での作業とローカルでの作業の双方が必要となってきます。
明示的に区別した方が良い場合には- Sever – / – Local -と表記します。

VPS申込時にダウンロードしておいた秘密鍵をホームディレクトリの.sshディレクトリに移動し、パーミッションを400(所有者のみread可)に変更します。

- Local -
$ mv ssh_key_name.pem ~/.ssh/
$ chmod 400 ssh_key_name.pem

ls -alを実行して以下の通り表示されていればOK。

Result of "ls -al"

SSH接続の確認

VPSパネルでサーバのIPアドレスを確認する。

Xserver VPS Panel - Check IP Address

ローカルで以下コマンドを実行し接続できることを確認しておく。xxx.xxx.xxx.xxxには先ほど確認したIPアドレスを入力する。

- Local -
$ ssh -i ~/.ssh/ssh_key_name.pem root@xxx.xxx.xxx.xxx

一般ユーザの作成とSSH設定

このままではrootでしかログインできず、セキュリティ上も好ましくないので一般ユーザでログインし、root権限が必要な時にはsuやsudoコマンドを使用して作業するようにします。

サーバ上で以下のコマンドを入力します。

- Server -
# useradd -m -d /home/user_name user_name

一般ユーザでもSSHログインできるように必要なファイルをコピーします。

- Server -
# cp -r /root/.ssh/ /home/user_name/.
# chown -hR user_name:user_name /home/user_name/.ssh

ローカルから一般ユーザでSSH接続ができるかを確認します。

- Local -
$ ssh -i ~/.ssh/ssh_key_name.pem user_name@xxx.xxx.xxx.xxx

ログインできたらOKです。

SSHサービス設定変更

一般ユーザでSSH接続できるようになったので、SSHサービスの設定を変更し、rootでのログインとパスワードでのログインを禁止してセキュリティを高めます。viの使い方はこちらを参照してみてください。

- Server -
# vi /etc/ssh/sshd_config

以下の通り設定を変更します。デフォルトでサンプル設定が記載されていますので、対象項目の行頭に#がついている場合は#を削除して、yes→noに設定を変更します。

PermitRootLogin no
PasswordAuthentication no

設定変更が完了したらSSHサービスを再起動し設定を反映させます。

- Server -
# systemctl restart sshd

SSHクライアントの設定(おまけ)

SSH接続時に毎回各種パラメータを設定しなくて良いように.sshディレクトリにconfigファイルを作成し、以下の設定をしておきます。

- Local -
$ vi ~/.ssh/config

configファイルに以下を記載。

Host host_name ←自分で名前を自由につける
        HostName xxx.xxx.xxx.xxx ←VPSのIPアドレス
        Port 22
        User user_name ←一般ユーザ名
        IdentityFile ~/.ssh/ssh_key_name.pem ←秘密鍵のパス
        ServerAliveInterval 60

以下のコマンドでSSH接続できればOKです。

- Local -
$ ssh host_name ←configファイルに書いたhost_name

次回はファイアウォールの設定を行っていきます。

コメント

タイトルとURLをコピーしました