攻撃を知り、守りが「自分ごと」になった。
第2回:TCP/IPとの出会い - 閉ざされたシステムの時代(1996-2000)
【連載記事】 この記事は全9回の連載です。📚 連載まとめ・目次はこちら
THM時代の始まり
1996年〜
入社してすぐに、制御システムの通信プログラム開発を任せられる。
ここで、初版発行から30年以上経った今でもTCP/IPのバイブルであり続ける「マスタリングTCP/IP 入門編」を読んで通信プログラムを組み、TCP/IPの基礎を学ぶ。この経験は、その後の人生を振り返ると非常にラッキーであった。
コラム:TCP/IPの基礎
TCP/IPは、インターネットで使用される通信プロトコルです。IPはパケット交換ネットワークで使われ、パケットを宛先まで届ける役割を担います。
TCP/IPと記載していますが、IPの上位プロトコルにはTCPとUDPがあります。
TCPはデータの信頼性を保証します。TCPはコネクション型のプロトコルで、送信データが正しく受信されたかを確認しながら通信を行います。一方UDPはデータの信頼性を保証しません。UDPはコネクションレス型のプロトコルで、送信データが正しく受信されたかは確認しません。ただし、TCPのようなコネクションのやりとりが発生しないためシンプルであることや、TCPが行う信頼性を確保するための自動再送のような管理外のタイミングでのパケット送信が発生しないため、送信タイミングを厳密に管理したい制御システムでは広く使われています。
TCP/IPは今日のインターネットを支える重要な技術となっています。
プログラムを覚えることは楽しく、サーバにOSをインストールし、ネットワークをつなげてシステムのインフラ環境を構築することも楽しかった。
当時はまだシステム開発の創世記の香りが残っていた時代であり、猫も杓子もプログラムなど見たこともない人が集められ学びコーディングしていた時代である。
次第に、周りの同期メンバーがマネジメントとしての人の管理に業務の比重を移していく中、かたくなに現場で計算機とソースコードに向き合うことにこだわっていた。
独立した閉ざされたシステムの時代
当時のシステムは、まだ独立した閉ざされたシステムであった。
それまで主流だったのは、メインフレーム(ホスト計算機)と同軸ケーブルのネットワークという時代だった。そこから、ワークステーションを用いたサーバ・クライアントモデルが普及し始めていた頃である。
サーバとクライアントはツイストペアケーブルとバカハブでつながれており、ようやくスイッチングハブも出てきていた。
コラム:スイッチングハブとリピーター(バカハブ)の違い
バカハブとはリピーターのことであり、当時は賢いスイッチングハブとの対比としてバカハブと俗称で呼ばれていました。
ハブには、スイッチングハブとリピーター(バカハブ)の2種類があります。リピーターは、受信したパケットをすべてのポートに転送します。一方、スイッチングハブは、パケットのMACアドレスを読み取り、宛先のポートにのみパケットを転送します。
そのため、スイッチングハブはネットワークの効率化とセキュリティ向上に寄与します。現在では、スイッチングハブが主流となっており、スイッチやハブといえばスイッチングハブのことを指すようになっています。
サーバが通信する外部のネットワークは、専用の回線でつながれた監視・制御対象のみという時代であり、オフィスネットワークとの接続など考える人すらいなかった。
世の中にはファイアウォールが存在してはいたが、まだ制御システムセキュリティという用語はほとんど聞かれない時代である。
2000年〜
業界再編と外の世界
当時、システム業界で盛り上がっていた2000年問題も何事もなく平和に超えた頃、ITバブル崩壊の影響もあり業界再編の波が押し寄せ、同業ライバルとの交流が増えていた時代である。
景気は低迷したかもしれないが技術者目線から見た場合には良いこともあった。一度、企業に入社してしまうと、外の世界が見えにくくなるものであるが、外部出身の技術者との交流が増えたことで、他社がどのようにシステムを開発しているのかを知れたのは良い経験であった。
思い返せば、このときの経験が、他の世界に踏み出したいという思いのきっかけだったのかもしれない。
セキュリティという話題の出始め
この頃、開発現場にもセキュリティという話題が出始めてきた。
サーバと通信する遠隔地にある監視・制御対象がTCP/IPで通信するのが主流になってきたことにより、ファイアウォールも適用され始めたのである。
とはいえ、セキュリティに詳しい人間がそれほどいるわけもなく、ネットワークやインフラ周りに明るかった田中がセキュリティも担当するようになるのは当然の流れであった。
なお、制御システムのネットワークと事務所環境などの外部のシステムは通信を行わないことは常識であった。
ファイアウォールは設置していたものの、今思えば、セキュリティ設計と呼べるほどの考慮がなされた設定だったかは疑問である。 守るための手段であるはずが、「入れること」自体が目的になっていた。現在でも、このような場面は多いのではないだろうか。
次回予告
次回は、2010年代から2015年頃までのTHM時代中盤を振り返ります。
トラブル対応で日々顧客対応に追われ疲弊している技術者たちの姿。
週末時間を問わず電話がかかってくる日々。
そんな中で見えてきた「安定して正常にサービスを提供しつづけるシステム」という理想。
田中が掲げた「100年使えるシステム」構想とは何だったのか。
可用性という制御システム特有の価値観について描きます。
【ご注意】 本記事は教育・啓発を目的としています。登場人物・組織は架空のものであり、記載された技術情報の悪用を推奨するものではありません。
守るだけでは腑に落ちなかった - 制御システム技術者のサイバー修行録【連載まとめ】
- 第1回:なぜ私は24年勤めた会社を辞めたのか - 4時間で決まった転職
- 第2回:TCP/IPとの出会い - 閉ざされたシステムの時代(1996-2000)(本記事)
- 第3回:トラブルシューターの日々と『100年使えるシステム』構想(2010-2015)(次回予定)
- 第4回以降:順次公開予定