以前から関心の高かったVPS(Virtual Private Server)をついに契約しました。
VPSとは、1台の物理サーバーを仮想化技術で分割し、
- ユーザーごとに、独立した仮想サーバーとして提供するサービス
- 共用サーバーより自由度が高く、専用サーバーより安価に利用できる
- 管理者権限(root権限)が付与され、OSやソフトウェアを自由にカスタマイズできる
ことから、Webアプリのホスティング、開発・テスト環境の構築、データベースサーバーなどで広く利用されています。
以下がVPSのイメージ図です。なお、これはClaudeで生成したものです。
簡単に言えば、自由に使える、自分だけのサーバーを手に入れたということです😁
VPSとレンタルサーバーの違い
VPSとレンタルサーバーは混同されがちですが、まったく異なるものです。
おそらくレンタルサーバーの契約を考える人の多くが、WordPressなどでブログやWebサイトの構築がきっかけでしょう。レンタルサーバーではクリック1つでWordPressをインストールできるようにセッティングされています。
レンタルサーバーでは、root権限は得られませんし、OSをインストールすることも不可能です。
一方、VPSは、OSさえ自由にインストールできます。その反面、セキュリティ対策は自己責任です。
つまり、レンタルサーバーとVPSでは、求められるスキルが格段に違うということです。
業務効率化を追い求めていたら、セキュリティ知識の強化の必要性にたどり着き、VPSを契約しました。
VPS契約後すぐに行った設定・セキュリティ対策
VPS契約後すぐに行った設定・セキュリティ対策は以下のとおりです。ちなみに、OSにはUbuntuを選択しました。
- 新しいユーザーを作成し、rootユーザーでのSSH接続を禁止
- SSHキーペア認証の設定(パスワード認証の無効化)
- ファイアウォールの設定
- UFW: Uncomplicated Firewallを利用
- ポート番号の変更(ボットによる自動攻撃への対策)
当然ですが、サーバーの設定はコマンド操作で行っていきます。1つ1つのコマンド意味を理解し設定していく作業は緊張しますが、正直かなり楽しいです。
SSH(Secure Shell)は、GitHubでも利用しますが、SSHを利用することでパスワード認証よりも安全な公開鍵認証方式の理解が深まります。
また、ファイアウォールの設定を通じて、TCP/IPのポート番号も身近に感じることができます。
正直、情報セキュリティに関する知識は、一般の社労士に比べてかなりある方だと思っています。自分自身で、0からWebアプリを構築したこともありますし。
しかし、サーバー管理をはじめてみて、知識だけでなく実践を通じた学びを得ている感覚が強く、これまで以上のレベルアップが必要と感じています。
VPSを契約した理由
VPSを契約した理由は、前述のとおり、業務効率化のためにプログラムを使っていたら、
- サーバー周辺の知識が必要になった
- サーバーを自由に使いたくなった
- セキュリティの知識が必要になった
という順番で進んでいったからです。
また、情報セキュリティに関して世間の関心も高くなり、顧問先からも相談を受けることが増えてきました。
そのため、VPSによるサーバー管理の実践を通じて、情報セキュリティをより深く学び、顧問先への価値ある情報提供を行っていくつもりです👍
なお、VPSを契約したもう1つの理由は、それは以下で書いていますが、ビジネスチャットツール「Mattermost」を使ってみたかったからです。
Nginxはもう古い・・・今はCaddy
ITおじさんには懐しい言葉かもしれませんが、Webアプリケーション開発の基本スタックを表す総称で、LAMPという言葉があったんです。以下の頭文字をとって、LAMPです。
- Linux(OS)
- Apache(Webサーバー)
- MySQL(データベース)
- PHP(プログラミング言語)
ただ、時代の進化に伴い、Apache → Nginxという知識まではあったのですが、以下の記事のとおり、今はそのNginxすら古いんですね・・・😅
参考:【Caddy】Nginxはもう古い?最強のWebサーバーCaddyを使おう
VPSを契約し、Nginxを学ぶつもりだったので若干肩透かしのような気分になりましたが、Caddyの設定はめちゃくちゃ簡単でした。どんどん、シンプルで効率的な新世代ツールが登場しているんですね。
サーバー管理を通じて、技術トレンドをキャッチアップし、様々な情報を顧問先に提案できる社労士でありたいと考えています👍