思い出話
僕がVPSに興味を持ったのはもうかなり昔のことになる。たいていの無料ブログサービスという代物は、ちょっとでも標準の枠外を越えた変更をしようとすると途端に金をせびってきて、当時知識がなかった僕は渋々支払っていたのだが、この手の有料プランはやたらと恩着せがましい機能が色々ついており、そのせいで無駄に高価だったりする。金を払うのも嫌だったが、使いもしない機能にそのうちの一部が渡ることはもっと我慢ならなかった。
ほどなくして僕に空前のLinuxブームが訪れた。昔からWindowsにしろmacOSにしろ隅から隅までいじりたおしていたが、この時期になるとどちらのOSもすこぶる安定した作りになっており、あらゆる要素はきれいに整理され、もはや探検の余地はなかった。そこへいくとLinuxには無限の選択肢があり、いくらでも改変可能で、何の制約もない。最初はVirtualboxでおそるおそる触っていたが、すぐに専用のハードディスクを用意して実機で遊びはじめた。そんな僕がVPSの存在を知って飛びつかないわけがなかった。何回でも最初から環境を作り直せて、ネットワーク環境も初めから整備されている。PHPやMySQLだっていくらでも動かせる。
この時、僕はさすがにブログサービスの表層的な機能をいじくり回すのに飽き、レンタルサーバ上でWordPressを動かしていたのだが、それと大差ない月額料金でLinuxサーバをまるごと動かせるというのだ。ネット上の友達とMinecraftを遊ぶためのサーバも、もはや自分のPC上でいちいち立ち上げる必要がなくなる。二十四時間連続稼働が可能になったのである。僕が寝たり、食事をしたり、学校へ行っている間、ニートの友達がサーバに入って城を作ったり、探検したり、僕の家を爆破したりしていた。重要なのは、単にその事件が面白いのではなく、そういうことが可能な環境や状況を僕が提供して、自在にコントロールできるところだった。当時、Realmはまだなかった。
それからいくつかのサービスを運用してはやめたりを繰り返していたが、最後の最後までブログとメールサーバは残った。どんなにモダンな情報の拡散手段や連絡手段が現れようとも、ある種のイデオロギーとしてブログとメールサーバは手元で管理し続けた。ろくすっぽ記事も蓄積せず、特に重要な連絡相手がいるわけでもないのにこのようなこだわりを持ち続けたのは、僕の世代を通した認識の中にサーバ上で実行されるウェブページと原始的なEメールが極めて基礎的なもの――アナログ世代にとっての手紙や帳面のようなもの――として存在していたからだと思う。中にはメールサーバを踏み台にされて大量の迷惑メールをばらまく片棒を担がされるなどの失敗もあったが、総合的にはこれらの経験から得たものはかなり大きかった。
その後、VPS上で個人的にやりたかったことはだいぶやり尽くし、ただ必要なサービスを維持し続けるだけの日々が残った。OSをアップデートするたびに何かしらの問題に見舞われ、そのたびに設定を見直し、色々と手を尽くしてなんとか解決する。目新しさがなくなった今となってはただのコストに過ぎなくなっていた。気づけば世の中はオンプレミスを越えクラウドを通り過ぎ、サーバーレスの時代が到来していた。やたらと肥大化した高額な有料プランを押し付ける商いが衰退し、最小の構成から欲しい機能だけを選りすぐって課金できる賢明な時代がはじまっていたのである。
Firebase Hosting + Hugo
静的サイトジェネレータ「Hugo」に移行した理由は以前にも書いたとおりだが、ここへメールサーバの暗号化通信につまずく問題がのしかかり、ついにはVPSそのものの動作もアップデートに伴ってかやたらと不安定になってしまった。こうなるとさすがにイデオロギーどころではない。必要な機能を十全に働かせられないのであれば使うべきではない。
静的サイトを無料でホスティング――いわゆる無料ブログサービスのようなドケチな仕様ではない――するサービスがあるというのは既に知っていたし、仕事で使ったこともあるが、まさか自身のブログにそれを使うことになる日が来るとは思わなかった。実を言うと、このウェブページは既にFirebase上に存在している。Firebase Hostingとは小規模なウェブコンテンツを動かすためのサービスで、VPSほど手間はかからないがレンタルサーバほど機能は限定されていない。個人用途としては手のかゆいところに届きまくっているちょうど良い塩梅の仕様だ。
こういった有名なサービスを利用する利点は、記事のデプロイなどの作業を自動化するための手法が広く共有されているところにある。VPS上にホスティングしていた時はいちいちコマンドを打つか専用のスクリプトを一から書かなければならなかったが、Githubに記事をpushしたら同時にFirebaseにデプロイするといった自動化処理はほとんど丸々コピペで実現できてしまう。nginxの設定だとか、バージョンだとか、パーミッションだとかを気にする必要はもう一切ない。趣味でこんなに楽をしてしまっていいのだろうか。
容量と月あたりの転送量には一定の制限があるとのことだが、僕は自分のブログでは一貫して独りよがりな記事を書くと心に決めているので無料の範囲を越えるほどのPVを稼ぐ見込みはまずないだろう。画像だってできれば面倒臭いから用意したくないくらいである。しかしそれでも、ごく稀にそんなオナニー全開の文章に好感を寄せてくれる物好きがいるから面白い。
メールサーバ選びは結構迷った
静的サイトのホスティングはFirebaseで良いとしても、メールサーバ選びの方はだいぶ難航した。ブログはともかくとしても今時メールにこだわりがある人はそういるものではない。自前のドメインでメールアドレスを作りたいなどという変なこだわりを実践したせいでどれだけのサービスにそのアドレスを登録したか判らない。たぶん百や二百では済まないだろう。GMailやOutlookで十分だったろうって?まったくもってその通りだが、今更やめることはできない。僕のメールアドレスはもはや第二の住所と言っても差し支えないほどの歴史を持ってしまっている。事実、僕はここ十年の間に三回も引っ越しをしているが、メールアドレスは一度も変えていない。
SSL/TLSやSPFやDKIM、DMARCといった暗号化やセキュリティに関わる認証も僕のメールサーバにはすべて実装してあった。これらをおろそかにしていると相手方のサーバからスパム判定を受ける恐れがあるため、基本的には用意されていなければならない。しかし、年額千円にも満たない廉価なメールサーバはこれらの実装をあらかさまにサボっているひどい代物しかなく、逆にすべて満たすものは法人向けの無駄に高額なプランばかりだった。
しばらく探し回って比較検討した結果、けっきょくConoHaが提供しているメールサーバに落ち着いた。Firebase Hostingとは異なり当たり前に月額料金をとられるが、VPSよりはずっと安く、PostfixやDovecotの設定に煩わされることもない。もちろん上に列挙した認証はすべて実装されている。
かくして僕はサーバ上のあれこれからほぼ完全に解放された。/var/log/mail.logに山のように記載された外部からのアタックログをもう見ずとも済む。月あたりの経費も半分以下になった。明確な改善、明白なる向上だ。にも関わらず、どういうわけか躍起になってVPSと格闘していた頃が既に懐かしくなりはじめている。