くにまりです。昨年からVPSでDiscordのMusicbotを動かしたり、このウェブサイトのホストをしたりしています。備忘録も兼ねてこのページに色々まとめておきたいと思います。
VPSとは?
レンタルサーバーの個人のLinuxが使える版、とでも考えれば良いのでしょうか。(多分詳しい人が見ると怒られると思う)
conohaの解説が詳しいと思います。
ついでにVPSは自由にLinuxが使える、ということなのでセキュリティをしっかりやっておかないとダメらしいです。
GMOの解説が詳しいと思います。
Time4VPSの契約
ここでは月340円(2017年10月現在)のTime4VPSのSプランを使うことにします。Sプランのスペックは
- CPU: 2.40GHz 1基
- RAM: 1024MB
- HDD: 40GB
- 帯域幅:1TB
このようになっています。ちなみに自分はこれでMusicbot二基とWordpressを入れたWebサーバーを動かしています。ちょっと重いけど使えないということはないです。
アカウント開設
まずは以下の新規登録ページにアクセスします。
携帯電話番号はSMSが届くものを使用してください。番号は、冒頭の0を抜いて「81」をつけてください。(090-1234-5678の場合→819012345678)
情報を入力して送信したあと、数字のかかれたSMSが届くので、こちらのフォームに入力します。「Verify」を押して認証されたらOKです。
メールアドレスにも認証コードが届いているので、こちらのURLをクリックして認証します。
「Welcome to Client Portal」と表示されたらOKです。
新規VPSサーバー取得
左にあるMain MenuからServicesをクリックします。
画面中央にある「Order new service!」をクリックします。
プランを選ぶ画面に移動します。ここではSプランを選んで「Continue」をクリックします。
確認画面になります。Continueを押します。
支払い方法選択になります。オススメはPaypalです。ここに書いてある「WebMoney」は日本のWebMoneyではなく使えないので注意してください。クレジットカードかPaypalのどちらかを選びましょう。
次に、その下のチェックマークと「Checkout」をクリックします。
Invoice(請求書)が発行されるので、「Submit payment」をクリックします。
このように請求書が表示されるので、右にある「Check Out Paypal(もしくはCredit Card)」をクリックします。「Subscript」では毎月請求が自動になります。
Paypalのページに飛ぶので、アカウントがある人はログイン、無くてクレジットカードで払いたい人は「Pay with Debit or Credit Card」をクリックします。
確認して支払いましょう。
このような画面になったら支払い完了です。
この後、さきほどのInvoiceページに戻りますが、まだ「Unpaid(未支払い)」になっていると思います。これはまだ反映されていないだけで、10分ぐらい経つと反映され「Paid(支払い済み)」になるので安心してください。
VPSサーバーにOSをインストール
新しいサーバーが準備されるまで15分くらい掛かります。準備されるまで気長に待ちましょう。
先程のServicesページに戻ると、新しいサーバーの表示が出来ているのでクリックします。
サーバー情報画面になります。ここでサーバーの使用量などを確認することが出来ます。ここではOSのインストールをするので、「Install OS」をクリックします。
ここで「Ubuntu 16.04 (64bit)」を選び、「Yes」にチェックを入れて「Continue」します。
インストールが完了するまで5分待ちましょう。
5分経ったら、「Installation Results」をクリックします。
インストールが完了していると、このように「ホスト名」「パスワード」「IPアドレス」が表示されるので、これを忘れないようにコピーしておきましょう。
VPSの構築
さて、OSがインストールできたらコンソールでセットアップしていきます。サーバーがリトアニアがあるということもあり、レスポンスが遅い(入力がもたつく)ことがありますが、一字一字間違えないように注意してやっていきましょう。
自分のPCからVPSサーバーにログインする
まずは自分のPCに「Tera Term」というソフトを入れます。
これをインストールしておいてください。インストールできたら起動します。
こんな画面になるので、ホストに先ほど書かれていたIP:のIPアドレス(Hostでは無いです)を、TCPポートは22番、SSHを選択してOKを押します。
セキュリティ警告という画面が出ますが、続行してください。
次にSSH認証というユーザー名とパスワードを入れる画面が出て来るので、ユーザー名に「root」、パスワードは先ほど書かれていたパスワードを入力してログインします。
このように表示されたらOKです。
次に、セキュリティを高めるために以下の作業を行います。
- 作業用ユーザーを作り、管理者権限を付与
- rootユーザーでのログインを禁止
- ログインポートの変更
作業用ユーザーを作る
Ubuntu上の作業はすべてコマンドで行います。まずは以下のコマンドを入力し、Enterを押します。
adduser (ユーザー名)
Enter new UNIX Password、Retype new UNIX Password でユーザーのパスワードを入力します。その後、ユーザーの情報が聞かれますが、何も入力せずすべてEnterでOKです。
最後にIs the information correct? [Y/n]と聞かれるので、yと入力し、Enterで終了です。
次にこのユーザーに管理者権限を付与します。
sudo gpasswd -a (ユーザー名) sudo
このように表示されたらOKです。
ポート番号の変更・rootユーザーのログインを禁止する
次に、自分のPCからVPSサーバーにログインする時(SSH接続と言います)の設定を変更します。
vim /etc/ssh/sshd_config
変更するのは上の赤枠で囲った二点です。vimの使い方が少し独特なので、注意しながら作業してください。
まず、通常状態では文字を入力することが出来ません。入力するためには、「i」キーを押し、挿入モード(Insert Mode)に切り替える必要があります。
「i」をタイプすると、左下に —INSERT— と表示されると思います。この状態でカーソルを動かし、該当場所を変更していきます。
Port 22 → Port 10022
PermitRootLogin yes → PermitRootLogin no
変更できたら、Escキーを押し挿入モードを解除します。その後、「:」「w」「q」の順に入力し、Enterを押して保存して終了となります。
もしも途中で間違えてしまい、やり直したい!という場合でしたら、Escを押して挿入モード解除、「:」「q」「!」で保存せずに終了になります。
vimの詳しい使い方については以下のページをご覧ください。簡単にまとまっています。
サーバーを再起動する
とりあえずできたので、サーバーを再起動後、作業用ユーザーでログインするようにします。
reboot
Enterを押すとTera Termが自動的に終了します。数分程度待って、もう一度Tera Termを起動し、先ほどの作業用ユーザー、パスワード、変更したポート番号(この記事の手順でやっているならば10022)でログインします。
このようにログインできたらOKです。念のためにrootユーザーでログインしても弾かれることを確認してください。
以上でVPSサーバーの基本的なセットアップは終了です。オツカレオツカレ!