注意: Decentralizedを完全に誤解してそうな人の記事です。娯楽としてどうぞ
分散化=インターネット初期
そもそも、インターネット初期にはインターネットサービスの覇権企業など存在せず、 各大学や一部の企業・個人が自らサーバを構築して運用していた。
これは、中央集権から遠く離れたものだと考えられる。
現代のインターネットに必須な中央集権
現在のインターネットの運用に必要な企業・団体は多く存在する。
Tier 1プロバイダは各国との接続においてファイバーなどの維持を業務にしていたりするし、 ICANNなどはDNSの実運用上の必須団体といっても差支えないであろう。
ほかにも、RIPE NCCなどのIPアドレス・ASN管理団体も、 インターネットをインターネットとして運用するうえで必須の団体・企業といえるであろう。
Self-hostedとFOSS
もし中央集権的なインターネットから脱出したいなら、 Self-hostedとFOSSが重要なキーワードになるかもしれない。
Self-hostedとは自らサーバや環境を用意しサービスを提供することを指す。
FOSSは無料でオープンなソフトウェアを指し、 多くの場合オープンソースソフトウェアを指すワードである。
なぜFOSSがリストにいるのか
正直、Self-hostedだけあれば十分である。 しかし、そのサービスを長く使いたいのであれば、 特定の個人・法人に開発が一任されるプロプライエタリなソフトウェアではなく、 やる気さえあれば自分でプログラムをより良い方向へ持っていけるOSSを使うとよいだろう。
Self-hostedで中央集権から脱出する
Self-hostedなサービスで中央集権から脱出するには次の点を考える必要がある。
- 2台以上のサーバを複数の国にまたいで設置する
- 特定の国の予測不能なインターネット障害・遮断への対抗
- ISP・IP管理団体の分散
- gTLDを購入する
- gTLDを取得することによって当該ドメインの管理団体がICANNのみになる
- ここを一般ユーザを置いていかずに中央集権から分離させることはできなさそう?
- できるだけSSL/TLSなどで暗号化する
- 現代でサービスを運用する場合は必須です
- できるだけバージョンが新しいものを利用しましょう
- ソフトウェアはLTSもしくは最新のものを利用する
- LTSが好ましい
- 決して古いソフトウェアを使い続けないようにしましょう
ソフトウェアの例
メール
Modoboa
Modoboaはオールインワンのメールサーバソリューションである。
オープンソースであり、ある程度のセキュリティ設定もやってくれるらしい。
実際に運用する際にはPostfixなどでModoboaホストと接続できなくてもメールがDropしない仕組みを作るのは必須である。
オンラインファイルストレージ
Nextcloud
Nextcloudは何でもありのグループウェアである。
先に紹介したModoboaのメールをこのソフトウェアから閲覧することもできる。
また、カレンダーや連絡先も共有できるほか、チャットや通話も可能である。
連絡先・カレンダー
Nextcloud (別で紹介)
Nextcloudで紹介している。
チャット
Element
ElementはチャットソフトウェアとしてMatrixという公開されたプロトコルを使用しているソフトウェア。
詳しいわけではないので詳しい紹介はしないが、いかにもDecentralizedな感じの設計だと思う。
Mattermost
Mattermostは完全なオープンソース製品ではないが、 最低限チャットソフトウェアに欲しい機能は無料で提供してくれる。
UIはSlackに近く、Teamという概念でSlackのように複数ワークスペース作ることもでき、 個人・企業問わず便利なソフトウェアである。
通話
Jitsi
Jitsiはオープンソースのビデオ通話ソフト。
有名なWebで完結するビデオ通話ソフトウェアと同じように利用できる。
最後に
ここに書いてあるようなサービスを社内だけでも運用すると、 インターネットが発展するにあたってなぜ中央集権が必須となっていったのかよくわかる。