VPS

ConoHa: セキュリティを高めた運用方法

最終更新日: 2024/05/03

ConoHaのセキュリティ上の課題

ConoHa[解説]は価格対性能比では最高レベルのVPSですが、

・コンパネアカウントで複数アカウント追加できない
・デフォルト設定のままだと十分にセキュリティを担保できない

為、企業ユースではそれに応じた設定が必要になります。
なお、後半部分は、ConoHaに限らず、通用するセキュリティ設定になります。


下準備

Webサーバーを立ち上げるには、使うドメインのドメインレジストラに登録してある、DNSの管理権限は必要となります。

DNSサーバーはConoHaを使う必要はありませんが、ConoHaのDNSサーバーはAPIで操作も可能で、結果的にSSL証明書の更新がドメインのTXTレコードを使って行うことも可能になりますので、使用するにあたっては悪くない選択肢です。


アカウントの作成

ConoHaのアカウントは一つで共有になるので、結果的にIDとパスワードは共有することになるので、以下の設定は必須になる。

ConoHaのアカウントを作ったらアカウント設定で
– ログインしたらメール通知
– 2重認証をON
をする。

この時メールアドレスは、それを管理する人というより、オーナー(所有者)を設定する。

2重認証のコードは表示する時しか取得チャンスはない。
もう一度設定する場合には、一旦解除して、再度追加だが、その場合には前回のは無効化される。
シークレットコード
バックアップコード
をメモしておく。

認証用にはAuthyをお勧め。

このAuthy設定を許したユーザーはきちんと記録しておく。

これによりIDとパスワードが漏れただけでコンパネが破られないことは保証される。

また、コンパネへのログイン情報は、IPアドレスを含め、メールで送られる形となり、それを持って記録できる。


プライベートネットワークを作る

ネットワークは、version2とversion3で異なるので、新規に作る場合、必ずversion3を選んで作ること。
同じConoHaユーザーからサーバーがローカルIPとしてアクセスされない様にプライベートネットワークを作る。

ひとまず
10.0.0.0/24 = 10.0.0.1 – 10.0.0.254
で作れば良い

そこからの詳しい設定については
ConoHaプライベートネットワークの設定を参照


sshキーの作成と登録

リモートからサーバーにログインするためのsshキーを作成し、それをConoHaに登録します。
サーバーを作るときは、そのsshキーでログインできる様にします。

Macの場合

ssh-keygen

と打ってから、リターンリターンと押してから生成されたファイル

cat ~/.ssh/id_rsa.pub

の中身を保存します。

また、この方法でログインするのが難しい非技術者向けには、コンパネから接続したらログインできるユーザーを用意して、後々それがルートユーザーに権限昇格できるようにしておきます。


踏み台サーバーの用意

sshキーでどのIPからもログインできるようにではなく、特定のIPアドレスからのみログインできるようにしましょう。
固定IP環境に常にいるのでなければ、その為の踏み台サーバーを別途用意しておく事がお勧めです。
踏み台サーバーのセキュリティの高め方については、別途考察します。

なお、踏み台サーバーに冗長性を持たせることもできますが、ダウンした場合には、コンパネからログインする形で対応させます。


ConoHaのサーバー作成

必ずversion3の方で作ること。
version2に比べて、2倍の性能と、対障害復旧機能が保証されます。
なお、ConoHaのサーバーのSLAは99.99%です。

OSの選定

OSは色々選択肢はありますが、Rocky Linuxの最新版を選ぶ事を今の所お勧めしております。
クラウド環境にはどのOSが最適?LinuxのOS(ディストリビューション)の選び方

ConoHaの契約は12ヶ月契約するとほぼ半額になるので、必要なスペックが定まっていたら12ヶ月契約をする事をお勧めします。

なお、追加ディスクを使うと高くはなりますが、使わなければディスク容量の上限は100GBであることに注意しましょう。
凄く速度が必要でなければ、追加ディスクよりも、追加サーバーを使って、そちらのディスクを使った方が良いでしょう。

rootパスワードの設定

rootパスワードは、リモートログインでは無効にしますが、コンパネからのログインでは有効になるので、適切なものを設定し、記録しておきましょう。

自動バックアップは、そこに意味のあるデータが溜まり、重要な場合には設定すると良いでしょう。

セキュリティグループの設定

defaultだけだとssh接続ができないので、一旦作業をする上では全てsshを追加しましょう。
Webサーはそれに加えWebを選びましょう。
なお、この変更はサーバーを止めずに、後で行うこともできます。

プライベートネットワークへのサーバーの追加

サーバーは一時停止してから、プライベートネットワークに追加します。

セキュリティは、デフォルトでかかっているConoHa側のポート制御もありますが、firewalldで防御もしましょう。

Webサーバーは特定のIPアドレスからのみSSHログインは可能に、HTTPSアクセスはオープン、
DBサーバーはWebサーバーか、踏み台サーバーからのみログイン可能とします。


(オプション) 冗長性の確保: ロードバランサーの作成

1台のサーバーが落ちてもサービスを継続させる為には、ロードバランサーを契約する。
なお、プライベートネットワークにサーバーは先に参加させておく必要がある。


(オプション) WAFの設定

ドメインとIPアドレスを用意されている状態で設定する。
なお、かなり値段が跳ね上がるので注意。


(オプション) テストサーバーの構築

テストサーバーはクロールされないように、Basic認証をかける


その後ConoHaに限らず共通する手順

Linuxサーバーを立ち上げた後の一般的な設定

②その後立ち上げるのがWordPressの場合、WordPressの設定

③その後立ち上げるのがLaravelの場合、Laravelの設定

④その後立ち上げるのがDjangoの場合、Djangoの設定

をご参照下さい。