はじめに

こんにちは技術開発部技術局の yosida95 こと吉田昂平です。

シリーズGWS、第4回の今回は Gehirn RS2 Plus に話題を移し、アカウントを作成して SSH でログインするところまでの流れを順を追ってご説明します。

Gehirn RS2 Plus とは

まずは、 Gehirn RS2 Plus がどのようなサービスであるかご紹介します。

Gehirn RS2 Plus は、これまで Gehirn Web Services でご提供してきた Gehirn RS2 の次世代バージョンとして、これまでには無かった以下の特徴を持っています。

  • アカウントごとの計算リソース割り当て
  • デーモンプロセスの管理 (supervisor)
  • サイトごとのウェブサーバーの切り替え
  • フレキシブルなバックアップ
  • アーカイブイメージ

それでは、それぞれについて簡単にご説明してきます。

アカウントごとの計算リソース割り当て

Gehirn RS2 Plus は一台のサーバーを複数の利用者と共有する、共有型レンタルサーバーサービスです。 しかし、他の共有型レンタルサーバーサービスとは違い、アカウントごとにプロセス空間を分離して、それぞれに計算リソースを個別に割り当てています。

このことによって、同じサーバーに収容されている他の利用者の影響を可能な限り低減しています。 つまり、これまでの共有型レンタルサーバーサービスで問題となってきた、他の利用者の影響を受けて自分のサイトが重くなる、接続不可になるといった類の問題が起こりづらくなっています。

デーモンプロセスの管理 (supervisor)

Gehirn RS2 Plus では、 supervisor というデーモンプロセスを管理するソフトウェアを標準で提供し、またコントロールパネルに supervisor の管理機能を組み込んでいます。

この機能を使うことによって、例えばメンテナンスによってサーバーが再起動した場合や、デーモンプロセスとして起動したソフトウェアのバグなどで予期せず終了した場合などに、人手を介さず自動でデーモンプロセスが再起動されます。

Gehirn RS2 Plus デーモンプロセス管理

サイトごとのウェブサーバーの切り替え

Gehirn RS2 Plus は、これまでの共有型レンタルサーバーサービスとは違い、サイトごとに Web サーバー (httpd) を切り替えられます。 切り替え先は、 Apache か Nginx 、または HTTP か FastCGI ないし WSGI でやりとりできる任意の TCP ポートへのリバースプロキシから選べます。 また、 Nginx の場合はアドバンスモードを有効にすることで、自由に nginx.conf を記述することもできます。

このため、 WordPress など PHP を利用する場合は mod_php が有効な Apache 、静的サイトを提供する場合やパスによってバックエンドを変更する場合には Nginx 、 WebSocket を利用する場合や uWSGI や Unicorn でダイレクトに HTTP リクエストを受けたい場合には TCP ポートへのリバースプロキシなど、サイトの構成に合わせて最適に設定することが可能です。

Gehirn RS2 Plus サイト設定

フレキシブルなバックアップ機構

Gehirn RS2 Plus は、 Gehirn RS2 よりもさらに充実したバックアップ機構を提供します。

その一翼を担うのがスナップショット機能です。 スナップショット機能では、配置されているファイルはもちろん、データベースの内容、サイトやデーモンプロセスの設定内容など、 Gehirn RS2 Plus アカウントに関連するすべての情報を保存します。

このスナップショットは定期的に取得され、最大で30世代分まで無料で保存されます。 さらに、スナップショットの取得間隔を30分から1日の間で自由に設定することができます。 1時間毎に取得することで1日分の設定を遡ることも、1日毎に取得することで1ヶ月分の設定を遡ることも自在です。

また、スナップショットをコントロールパネルから手動で取得することもできます。 手動でスナップショットを取得することに要する時間はわずか10秒程度です。

Gehirn RS2 Plus スナップショット一覧

アーカイブイメージ

Gehirn RS2 Plus のバックアップ機構はスナップショットだけではありません。 取得したスナップショットをいつまでも保存できるアーカイブイメージもバックアップ機構の重要な一部です。

サイトの構成が完了した時点や、 WordPress などのインストールが完了した時点、いつも使うプログラミング言語の実行環境を整えた時点でスナップショットを取り、それをアーカイブイメージにすることで、30世代よりも前の状態がいつまでも保存でき、いつでもすぐにその状態に復元することができます。

もちろん、アーカイブイメージを自動で取得することもできます。 8時間毎のスナップショット取得で、3回に1回取得したスナップショットをアーカイブイメージにする設定をすることで、1日に1個のアーカイブイメージを毎日取得していくといった運用ができます。

また、アーカイブイメージの世代管理オプションを有効にし、7世代分保存する設定をすることで、1週間分毎日アーカイブイメージを保存し、それ以上前のものは自動で削除するような運用も行えます。

Gehirn RS2 Plus スナップショット設定

さらに、 Gehirn RS2 Plus ではアカウントの新規作成時にアーカイブイメージからアカウントを構成するオプションを選択できます。 このオプションを活用することで、例えばいつも利用するプログラミング言語の実行環境を一度だけ整えるだけで、いつでも何度でも同じ環境の新しいアカウントをすぐに用意することができます。

Gehirn RS2 Plus のアカウントを作成する

それでは、さっそく Gehirn RS2 Plus のアカウントを作成してみましょう。

Gehirn RS2 Plus 新規アカウント作成 step1 まずは、ベースとするアーカイブイメージを選択します。 これが先ほど説明したオプションで、 Gehirn RS2 Plus 標準の環境を利用するか、カスタマイズしたアーカイブイメージを利用するかを選びます。

Gehirn RS2 Plus 新規アカウント作成 step2 次に、利用するプランを選択します。 Public Preview の期間中は、「ショートプラン」のみ選択できます。 正式提供時に選択いただけるプランの一覧は、 Gehirn RS2 Plus プラン・価格 でご説明しています。

Gehirn RS2 Plus 新規アカウント作成 step3 次に、表示名を設定します。 この表示名には、アカウントを用途を表す簡潔な説明を設定しておくと、管理する上で便利です。

Gehirn RS2 Plus 新規アカウント作成 step4 最後に、これまで設定した内容を確認します。 この設定に誤りが無いことを確認してアカウントを作成します。

Gehirn Infrastructure Services 通知センター アカウントの作成中は、コントロールパネル上部のタスクセンターに「タスクを実行中」という表示がされ、作成が完了するとこの表示が消え「契約一覧」に作成したアカウントが追加されます。

UNIX ユーザを作成する

Gehirn RS2 Plus では、コントロールパネルから UNIX ユーザを管理することができます。 UNIX ユーザは SSH ログインに使用することはもちろん、先述のデーモンプロセスの実行ユーザなどとしても使用することができます。

それでは、まずは SSH ログインに使用する UNIX ユーザを作成してみましょう。

Gehirn RS2 Plus UNIX ユーザ UNIX ユーザは、アカウント管理画面の「 UNIX ユーザ」タブから管理できます。 デフォルトイメージからアカウントを作成した場合、最初から "rs2p" ユーザが存在しています。 アーカイブイメージからアカウントを作成した場合は、アーカイブイメージ作成時点で存在したすべての UNIX ユーザがここに復元されています。

Gehirn RS2 Plus UNIX ユーザ作成 作成する UNIX ユーザの名前を入力して確定ボタンを押すと UNIX ユーザが作成されます。

SSH でログインのための設定をする

Gehirn RS2 Plus UNIX ユーザ設定

それでは、今作成した yosida95 ユーザで SSH ログインするための準備をしていきます。 SSH ログインには2通りの方法があります。 一方が公開鍵認証を利用する方法で、他方がパスワード認証を利用をする方法です。

しかし、パスワード認証を利用するとブルートフォースアタックに対して脆弱になるため、公開鍵認証を利用することを強くオススメします。 止むに止まれずパスワード認証を利用する場合は、 「タイムベース認証」を併せて設定することを強く推奨します。

公開鍵認証を利用する方法

まずは、手元に公開鍵認証に利用する鍵ペアを用意してください。

Gehrin RS2 Plus SSH 公開鍵管理 次に、先ほど作成した yosida95 ユーザの設定メニューから「公開鍵の管理」を選択します。

Gehrin RS2 Plus SSH 公開鍵追加 そして、右上の緑色の「公開鍵を追加」を押すと現れる入力フォームに、用意した鍵ペアの公開鍵の方を入力します。

Gehrin RS2 Plus SSH 公開鍵追加 追加されました。

パスワード認証を利用する方法

Gehirn RS2 Plus では、安全のため作成直後の UNIX ユーザに対するパスワード認証が無効に設定されています。 そのため、パスワードを認証を有効にして、パスワードを設定する必要があります。

Gehirn RS2 Plus UNIX ユーザパスワード設定 まずは、UNIX ユーザの設定メニューから「パスワードの設定」を選択します。 そして、パスワードを ON に切り替え、現れる入力ボックスにパスワードを入力して設定します。

タイムベース認証を設定する

パスワード認証を利用する場合は、 UNIX ユーザの安全性を向上するため、併せてタイムベース認証を利用することを強く推奨します。

Gehirn RS2 Plus UNIX ユーザタイムベース認証 タイムベース認証を利用するために、 UNIX ユーザの設定メニューから「タイムベース認証」を選択し、タイムベース認証を ON に切り替えます。

そして、表示された二次元バーコードを Google Authenticator や Authy などの、対応するアプリケーションで読み取り、6桁の数字を入力ボックスに正しく入力して設定します。

SSH でログインする

いよいよ、 Gehirn RS2 Plus のアカウントに SSH ログインをします。

Gehirn RS2 Plus UNIX ユーザ設定 UNIX ユーザの設定メニュー上部には OpenSSH クライアントのコマンド例が表示されています。 今回は、これをコピーアンドペーストすることで SSH でログインしてみます。

Gehirn RS2 Plus SSH ログイン 初回ログイン時は SSH のサーバー鍵がクライアントに記録されていないため、上記のような警告が出ます。 yes と入力することでログイン試行を継続します。

Gehirn RS2 Plus SSH ログイン パスワード認証を利用し、かつタイムベース認証を設定した場合は、このようにパスワードの入力後に認証コードの入力を求められますので、 Google Authenticator や Authy などに表示されている6桁の認証コードを入力してログインします。

Gehirn RS2 Plus SSH ログイン ログインに成功しました。 Gehirn RS2 Plus のデフォルトイメージでは、ZSH がデフォルトシェルに設定され、設定済みの .zshrc も提供しています。 また、 .zlogin でログインと同時に tmux を自動で立ち上げる設定も行っています。

余談ですが、これらの設定は私が普段利用している設定から、社長の指示により「かわいさ」と「クセ」を抜いたものになっています。

おわりに

シリーズ第4回となる今回は、 Gehirn RS2 Plus の特徴のご紹介と、アカウント作成から SSH でログインするまでの手順の解説を行いました。

Gehirn RS2 Plus はこれまでの共有型レンタルサーバーでは提供されてこなかった、先進的な機能をいくつもご提供しています。 Public Preview 期間中は、多くの方に利用していただき、ご要望や不具合のご報告などのフィードバックをいただくことで、サービスの品質と利便性を向上することを目的として、どなた様も無料でご利用いただけます。

フィードバックは Gehirn Web Services Public Preview フィードバックで随時受け付けています。

この機会にぜひ、 Gehirn RS2 Plus をお試しください!