Scribble at 2023-07-28 09:35:26 Last modified: 2023-07-28 09:45:51

なんだかんだと(クライアント側で)もめてから、移設先を探していたサイトの行き先が CPI から SAKURA インターネットになった。ただ、運用上の自由度が低い CPI から替わるのはいいとして、あいかわらずのことだが最近の上場企業や大企業に限って「予算がない」の一言で、吉本芸人や VTuber(最近は「ライバー」と言ってる方が通るようだが)や SNS のインフルエンサーに払う金が精一杯らしく、サーバのメンテナンスやセキュリティには何の予算も付かない。したがって、移設先のサーバ構築にかかる手間賃は小遣い銭ていど(数十万円)をいただいているが、メンテナンスの予算はいただいていないため、こちらとしては cron で dnf の update をかける設定すら無視してサーバを構築することになる。矜持? そんなもん金次第に決まってるだろう。プロのエンジニアにとっての「矜持」とは、そもそもギャラと予算の中で何をどれだけやるかという話であって、これを滅私奉公とかオタク的なこだわりの話にすり替えたのは技術系の会社の経営者とコンサルとマスコミだろう。

ということで、SAKURA の場合は内部で他の契約者のサーバを攻撃するなんてことが頻繁にあると言われているから、せいぜい悪い相手に見つからないように祈るくらいしかないわけだが、来週より VPS でのサーバ構築に入る。ちなみに、何週間か前に書いたとおり、OS は RedHat 系統にして、その中でも AlmaLinux とした(Ubuntu とか、それどころか FreeBSD を選ぶと、他社へサーバの管理を引き継いだ際に扱えない人がいるからだ)。RedHat 系の中で AlmaLinux にした強い理由はないのだが、CentOS Stream は先にも書いたようにテスト版だと思っているので、production server に採用するのは論外だ。そして、Rocky Linux は若くして亡くなった技術者の名前を冠したというプライベートな逸話が強すぎて、あまり事業継続性が感じられないと思ったからだ。また、RedHat がリポジトリの公開をやめると発表してからでも、開発を継続していくと発表したのも AlmaLinux の方が早かったので、技術的というよりも政治的と言うべき事情で選んだ。やっぱり大規模な開発体制を維持するというのは組織運営の話でもあるわけだし、政治ができないとコミュニティや事業なんて続けられないからなぁ。

なお、これをわざわざ公に言うのもどうかと思うが、今回も SELinux は適用しない。これは20年近く前から(それこそ正式にメインラインへ加えられた直後から)間接的に関わってきている機能なのだが、実は仕事で構築したサーバで SELinux を有効にした事例は数えるほどしか・・・これだけだと1兆回でも「数えられる」と言われるので、5回以内とだけ言っておくが、ともかく業務として100回ていどはサーバ構築をやってきた中できわめて少ないと言える。最も強い理由は、一つ設定を間違えるとサーバにアクセスすらできなくなるという致命的な設定が多い(それだけ致命的なことを制御するのだから当然だが)ということだ。しかし、そういう致命的なリソース管理や設定をしなくては SELinux を導入する意味がないのだから、このリスクは或る程度は覚悟しなくてはいけない。しかし、安定した運用ができるまで試行錯誤するという余裕が、たいていの受託案件や社内案件では与えられないのがネット・ベンチャーやウェブの制作会社というものだ。そして、SELinux とは別の色々なセキュリティにかかわる設定やツールの導入によって、これまでに大過なくサーバを運用してきたという事実も「わざわざリスクを高めてまでやるほどのことか」という印象を強めてしまっている。これを有効にして僕が他のアプローチで実現しているセキュリティ・レベルに加えて 0.1 ポイントだけレベルが上がるとしても、これを有効にしてサーバがまったく制御不能になるリスクが 500 ポイントも上昇するのであれば、プロの技術者としてどちらをとるかは明白だろう。仕事の道具というものは、うまく使えば成果の品質が 0.1 ポイントだけ上がるとしても、ガラクタを作ってしまうリスクが 500 ポイントもあるなんてことでは採用できない。これは、例えば大工仕事で使うカンナを考えたら分かるだろう。誰かが新しい発想で削った面の滑らかさを 0.1 ポイントだけ向上させるカンナを開発したとする。だが、扱い方や形状が独特であり、人間国宝の職人ですら指を切り落とすようなリスクが 500 ポイントも上がるとすると、扱いに成功したら品質が 0.1 ポイント上がるとしても、それは人間国宝はもとより他の誰にも勧められないだろう。

そして、それ以前の話として SELinux は情報としても開発体制としても、他のセキュリティ・ツールと比べて非常に不鮮明で明快な印象がつかめないという、情緒的というか非常に損な状況で実装されていると思う。たとえば、多くの Linux に実装されている有名な機能であるにも関わらず、これを開発しているのが誰なのか、たぶん大企業のサーバ・エンジニアでも知っている人は少ないだろう(皮肉なことだが、スノーデンがいた NSA である)。そして、採用した事例が少ないと事実だけを生半可な知識の IT ジャーナリストとかメディアが繰り返して「解説」したり「報道」しているあいだに、それが或る種の宣伝になってしまい、「なくても大半のシステムは問題なく動いている」という事実とあわせて、国内に根強い不要論が広まってしまうという逆効果になる。

もちろん、適正に扱えば強力な機能であることは言うまでもないが、情報の少なさ(NSA が開発しているからといって、ソースは公開されているのだから開発の方針を隠しているわけでもなかろう)が致命的な弱点となっている。しかも、日本の技術的なブログやメディアの特徴として、実際に運用している人物が説明するのではなく、少し英語の文章が読めるていどの学生や素人、あるいは暇な大企業の新卒などが暇つぶしに「ご紹介」記事を乱造している傾向がある。僕らのようなプロ(しかも SELinux が正式にリリースされたこれから付き合っているようなレベルの)から見て、20年前の公式ドキュメントを元にした大学の期末レポートみたいなものを何千ページと公開されても、はっきり言って何の役にも立たない。もちろん、僕らのようなプロにとっては言うまでもなく、これから Linux の運用を学ぼうとする人々にとってすら役に立たない。Qiita や Hatena ブログなどに、「俺はこんな『上級』スキルを持ってるぜ」と言わんばかりのオタク的な自慢話ばかり書いているようでは、採用事例が増えるわけないのである。

  1. もっと新しいノート <<
  2. >> もっと古いノート

冒頭に戻る


※ 以下の SNS 共有ボタンは JavaScript を使っておらず、ボタンを押すまでは SNS サイトと全く通信しません。

Twitter Facebook