誰でもできるノード構築 ~サーバ遠隔操作編~
本記事ではノード構築のためにレンタルした外部の仮想サーバを「遠隔操作」する手順を解説します。
前回記事「サーバレンタル手順」は以下からどうぞ。
サーバ遠隔操作の概要
遠隔操作の本題に入る前に簡単な概要を見ていきます。
遠隔で操作する手段
インターネットに接続されているコンピュータは、同じネットワーク上にある別のコンピュータからアクセスできます。無論、好き勝手にアクセスされては無法地帯になってしまうので、あらゆるセキュリティが設けられているうえで、必要な認証操作を行うことでアクセスできます。
遠隔操作のプロトコルとしては、WindowsユーザーであればRDP(リモートデスクトップ)は耳にしたことがあるのではないでしょうか。
他にもRFB(リモートフレームバッファ)を用いたVNCやCLI(コマンドラインインターフェース)ベースで操作するTelnet・SSHがあります。
利用するプロトコルにあったツール・ソフトウェアを利用することで、インターネット上の別の端末を遠隔操作できます。
コマンドベースの遠隔操作
今回レンタルした仮想サーバはLinux OSのUbuntuというディストリビューションです。「Linux」というワードは聞いたことがあっても、利用したことがない人も多いと思います。
基本的にLinuxはCLI(コマンドラインインターフェース)で利用する形となりますので、黒い背景の画面にキーボードでコマンドを入力して操作していきます。
Windowsユーザーが馴染みのある画面に対して直感的なマウス操作ができるGUI(グラフィカルユーザーインターフェース)ではないため、最初は抵抗があることでしょう。
![](https://assets.st-note.com/img/1675951902674-g4Cda9wNzs.png?width=1200)
※Linuxも専用ツールを入れることでGUI操作は可能です。
「Linuxはコマンドベースの操作」という前提を踏まえて、レンタルした仮想サーバの遠隔操作の準備をしていきます。
※ここからはCLIでLinuxを操作していきます。Linuxの基礎がわからない状態だと、手順書があってもすぐに詰まってしまうことでしょう。できる範囲で結構ですので、以下を一読してLinuxの概要に触れておいてください。
遠隔操作ツールのセットアップ
ここから遠隔操作のためのツールをインストールし、セットアップしていきます。筆者はWindowsユーザーのため、端末はWindowsを前提としています。
※Macユーザーの場合この手順は不要です。遠隔操作のためのSSHクライアントソフトは標準搭載のものを使用します。次の『仮想サーバを遠隔操作』までスキップしてください。
ツールの選定
前項で遠隔操作に用いるプロトコルは複数あると書きました。
今回の操作対象はLinuxのためコマンドベースでの操作です。利用できるのはVNC・Telnet・SSHとありますが、通信が暗号化されていて安心かつLinuxのCLI操作に最適と思われるSSHを利用します。
で、SSH用のクライアントソフトは、筆者の独断で「Tera Term(テラターム)」にしたいと思います(単に使い慣れているので笑)。
他のSSHクライアントを利用しても、何ら問題はありません。
※Windows(10以降)も標準でSSH接続が可能です。ただし、本記事では筆者の環境に合わせるためにSSH用のクライアントソフトを利用する手順としています。
Tera Termのインストール
Tera Termは無料で使用できるフリーソフトです。インストールの手順は以下記事をご参考にどうぞ。
一応、本記事を書くためにTera Termをアンインストールしてしまったので、簡単にインストールの流れも書いておきます(完了済みの場合はスキップ推奨)。
■Tera Termインストール手順
以下をクリックしてDLを開始
2. DL完了後、ファイルを開く
![](https://assets.st-note.com/img/1675951902594-qoEcgl6Ksy.png?width=1200)
3. 「実行」をクリック
4. 「日本語」で「OK」をクリック
![](https://assets.st-note.com/img/1675951902119-tT9PxMjiAF.png)
5. 「同意する」にチェックして「次へ」をクリック
![](https://assets.st-note.com/img/1675951902876-Nq3sSBjqio.png)
6. 「次へ」をクリック
※インストール先のフォルダに指定がある場合は任意で選択
![](https://assets.st-note.com/img/1675951902214-y1zaZL2hLe.png)
7. 変更せず「次へ」をクリック
![](https://assets.st-note.com/img/1675951902685-TV7AQZDfPS.png)
8. 「日本語」のまま「次へ」をクリック
![](https://assets.st-note.com/img/1675951902201-eOJ6RYaZvF.png)
9. 変更せず「次へ」をクリック
![](https://assets.st-note.com/img/1675951902961-84QgnYd7EZ.png)
10. 任意の設定を選択して「次へ」をクリック
※基本変更なしでOK
![](https://assets.st-note.com/img/1675951902804-j6UKx5iFk4.png)
11. 「インストール」をクリック
![](https://assets.st-note.com/img/1675951902630-QRQhYsGaJs.png)
12. インストール完了
![](https://assets.st-note.com/img/1675951902379-r7CtirK8vt.png)
これでツールの準備が完了です。インストールお疲れさまでした。
Tera Term起動
せっかくインストールができたので、早速起動してみましょう。
前項の12で「今すぐTera Termを実行する」にチェックして「完了」をクリックした場合、すでに起動しているかと思います。
起動していない人はインストール済みアプリの中から選択して起動してください。
起動すると以下のような画面が表示されます。
![](https://assets.st-note.com/img/1675951903064-GI30zYBmzU.png?width=1200)
あとは接続先となるContaboのサーバ・ログイン情報を入力すると、晴れてレンタルした仮想サーバを遠隔で操作できる状態になります。
仮想サーバを遠隔操作
実際に仮想サーバにアクセスして遠隔で操作していきます。
※Macユーザーの場合は、【Mac】ターミナルでサーバーにSSH接続する方法(パスワード、秘密鍵)を参考にログインしてください。
ログイン
先ほど表示されたTera Termの画面にContaboのサーバ・ログイン情報を入力していきます。
Contaboから届いているメールを見ながら入力します。
「ホスト」にサーバのIPアドレスを入力して「OK」をクリック
![](https://assets.st-note.com/img/1675951902278-QVmqZMUsJH.png?width=1200)
2. known hostsの確認メッセージでそのまま「続行」をクリック
※ここでリストに追加することで次回以降この確認メッセージは表示されなくなります。
![](https://assets.st-note.com/img/1675951903001-1ZJ2yv6JME.png)
3. 「ユーザー名」と「パスワード」を入力して「OK」をクリック
![](https://assets.st-note.com/img/1675951902325-WDHCMCmctF.png)
4. 接続完了
![](https://assets.st-note.com/img/1675951902212-u3r1r5p436.png?width=1200)
おめでとうございます。これであなたはドイツに配置されているであろうレンタルしたサーバを遠隔操作できる状態になりました。
コマンド試し打ち
せっかくログインしたので幾つかコマンドを試し打ちしてみましょう。以下を参考に実行してみてください。
※コマンド記載箇所は以下の構成※
・# ~ →コメント(何を行うコマンドなのかの説明)
CLIで実際に入力する必要なし
・$ ~ →実行コマンド
$の右に記載の"~"の部分をCLIで入力して実行
・{~} →任意の文字に置換
カッコ内かな文字の場合のみ置換
※${USER}のように英語の場合はそのままCLIで実行
# 現階層のファイルサイズや更新日時を表示
$ ls -l
# ls -lのショートカットキー
$ ll
上記を実行すると以下のように表示されます。
※手順通りにやっている場合はログインユーザーは「root」です。
![](https://assets.st-note.com/img/1675953170918-f0f9oL1ICx.png?width=1200)
他は以下記事を参考にして、気になるコマンドを実行してみましょう。
セットアップ
ここまで出来たら、すぐにでもノード構築の作業を始めることができます。が、ここで一旦、セットアップと称してサーバの設定をいじっておきます。
というのも現在ログインしているユーザーは「root(ルート)」ユーザーと呼ばれる管理者権限を持ったユーザーです。
私的利用なので、そんなに気にする必要もないかもしれませんが、万が一悪意をもった人物にアカウント情報が漏れた際の悪用を防ぐために、一般ユーザーを作成して、そのユーザーで作業するようにします。要はセキュリティの担保です。
ということで、rootユーザーのSSH接続を無効化して、一般ユーザーを作成します。以下の手順で進めてください。
■一般ユーザー作成~設定
# ユーザー作成
$ sudo useradd -m -s /usr/bin/bash {ユーザー名}
# パスワード設定
$ sudo passwd {ユーザ名}
New password: # 任意のパスワードを入力(表示されないので注意)
Retype new password: # パスワード再入力
passwd: password updated successfully # パスワード設定完了
# sudoグループにユーザー追加
$ sudo adduser {ユーザ} sudo
Adding user `[ユーザ名]' to group `sudo' ...
Adding user [ユーザ名] to group sudo
Done. #正常終了
# sudoグループ確認(追加したユーザー名が表示されたらOK)
$ cat /etc/group | grep sudo
# 終了
$ exit
ここで一度ログアウトしますが、再度Tera Termを起動して仮想サーバに接続します。
ログインはつい先ほど作成した一般ユーザーで行います。
以下で作成した一般ユーザーのユーザー名とパスワードを入力します。
![](https://assets.st-note.com/img/1675955230514-FSNG0aeI0E.png)
■SSH接続設定ファイル変更
rootユーザーでのSSH接続を無効化するため、SSH接続の設定ファイルを変更します。
# 設定変更のためrootユーザーに切り替え
$ su -
Password: #パスワードを入力
# SSH設定ファイルをコピー
$ cp /etc/ssh/sshd_config /etc/ssh/sshd_config.org
# エディタコマンドでファイルを編集
$ vi /etc/ssh/sshd_config
viコマンドを実行すると以下のようなエディタ画面になります。キーボードの"↓"を押下して、最下部までスクロールします。
![](https://assets.st-note.com/img/1675955690833-0dLjXKXYHb.png?width=1200)
変更箇所は赤字の部分のみです。キーボードの"i"を押下すると編集モードに切り替わります。
あとは普通に"Delete"または"BackSpace"で「yes]を削除して「no」に書き換えます。
![](https://assets.st-note.com/img/1675955876004-qvCrcGmF7e.png?width=1200)
編集が完了したら、"esc"を押下して":"、"w"、"q"の順に押下します。
最後に"Enter"を押下するとエディタ画面が閉じます。
設定変更を反映する前に構文のチェックをします。
# 構文チェック
$ sshd -t
ここでエラーが発生しなければ問題なしです。
最後に設定変更を反映します。
反映するとrootユーザーでのSSH接続ができなくなります。
# リスタートして設定を反映
$ systemctl restart sshd.service
# 終了
$ exit
以上でセットアップが完了です。
これにて本記事の作業も終了となります。今回もお疲れさまでした。