ウィルス対策サーバー保守管理における
アプリケーションモジュールのアップデート

【案件概要】
ウィルス対策サーバー保守管理におけるアプリケーションモジュールのアップデート
【サマリー】
インターネット基盤の保守契約をしていた企業の基幹システムで運用されている「ウィルス対策サーバー」に、セキュリティ上の脆弱性が発見された。クライアントに情報提供を行いアップデート実施が決定された。全国1万以上のユーザー端末が、インターネットに接続するときに必ず経由するセキュリティシステムだったため、アップデート対応はユーザー利用が少ない深夜に計画された。
【予算感】
システム保守費用内のスポット対応/2人日(事前調整含む)
【エンジニアスキル】
Linux、ゲートウェイ型ウィルス対策製品、Shellスクリプト、CCNA、LPIC Level2、ネットワークスペシャリスト資格

 

企業における基幹システムは、常に業務とともに稼働していることから、メンテナンスのためのシステム停止は、ユーザーがいない休日や深夜に対応することが多い。クライアントは、社員の就業が交代制であり、土日祝日にユーザーが居なくなるという業態ではないため、一般的なシステムメンテナンスと同様に比較的利用者数の少ない深夜帯での作業となった。

インフラ系システムの保守を請負う弊社としては、基幹システムに組み込まれたソフトウェアのアップデート対応は珍しくないが、当時は実働できるエンジニアが限られていたこともあり、案件で必要とされるレベル以上のスキルを有していたエンジニアで対応を実施した。対応スタッフは、各種サーバーからネットワークアプライアンス・プログラミングまで幅広く対応可能なインフラエンジニアで、15年以上の業界経験を積んでいるベテランエンジニアである。

脆弱性の内容がクリティカルであったため、クライアントより即日対応を求められ、急いで作業計画を作成後、クライアントの情報システム部門への説明と合意を得る。システム保守作業で最も重要な工程が、この作業計画の考案と作成となる。これは、登山に例えると「山頂(目的地)に向かうまでの経路をマップに起こす」イメージ。マップがなければ、効率的に山頂(目的地)にたどり着けないばかりか、道に迷って遭難の危険もあり大変重要な工程だ。当然想定外の事態も考えてエスケープルートも用意する。(しかしながら、いま思い返すとこの作業計画が、少しアバウトなモノであったと反省が募る。要求された期日までの時間が無く、想定するルート(手順)の確実性を高める事前チェックがあまかったと───。)

午前0時。アップデート作業を開始。基幹システムにアクセスし、コマンドラインで作業を進めていく。今回の作業は午前4時までに完了し、システムを復帰させるというのがミッション。
先ずはアップデート対象のサーバーをロードバランサーから切り離し、ユーザーのアクセスが流入しなくなったことを確認。続いて関連するプログラムの実行を停止し、その後、主システムを停止、アップデートを実行する。滞りなく、手番を実行することが出来ていた。しかし、最後のシステムの再起動で問題が起きた。

システムが起動しない───。画面にはエラーコードも表示されない。
計画した作業手順どおりに進行しているし、その手順はメーカーにも確認をとっている。しかしエラーメッセージもなく無言で起動しない…。通常、ここでメーカーに連絡してアップデートプログラムの内容や調査方法について確認し、その対策を実施していくことになるのだが、今は深夜3時、タイムリミットはあと1時間…。メーカーに連絡は不可能な時間帯であった。

1と0で出来ているITの世界において、このような想定外の状況にでくわすことは意外と多いが、このような状況に迫られたときこそ、エンジニアとしての実力が試される───。比較的ライトな案件と高をくくっていたが、この案件を対応したのは守備範囲の広いインフラエンジニアであり、経験も豊富なベテランであった。弊社にとって、これが功を奏した。

作業に当たったエンジニアは、ここで冷静な判断をとることが出来た。
対応としては2つ。
① エスケープルートに切り替え、既存の状態に切り戻して復旧させる。
② エラーを解析して対処、アップデート対応した状態でシステムを起動する。

① の選択はベター。トラブルが発生したら戻る。これはある意味想定内の対応だ。しかし、クライアントにとっては、本来の目的が果たせないことで悦ばしいことではない。そこで、該当エンジニアはクライアントと相談し、制限時間である午前4時のギリギリまで②にトライした。

アップデート後の起動スクリプトをデバッグモードで実行し、問題の原因を探っていく。

通常計画通り進まない場合は切り戻して仕切り直すのがセオリーであるが、普段からシステム保守としてお客様の業務に接してお客様の考えを汲み取れているからこそ、「お客様のために」と最善を尽くすことを選択したエンジニアが、弊社にとっては誇らしい。

担当エンジニアは、アップデートプログラム内のバグを発見し、問題箇所が起動部分に限定されていることなどの状況をクライアントに説明し、クライアントの判断を経て該当箇所を改修してシステムは再稼働することが出来た。アップデートプログラム発行元のメーカーにバグの報告をしたところ、内容を認知。即座にあらたなアップデートプログラムが全世界に発信された。

該当プログラムは、世界的な規模で使用されていたこともあり、このトラブルの解決をクラスアクトが行ったという誉な気分と共に、トラブル発生からタイムリミットが1時間しかない中で原因の特定からクライアントへの説明と対処を完遂し、クライアントが翌日も普通にシステムを使用して業務を遂行できた事実に大きな喜びを感じた。

後日、クライアントもアップデートプログラムにメーカー側の不手際があった事実を知り、これまで以上にクラスアクトの技術力を評価していただけることとなった。この案件での経験から、我々は、常にお客様のために技術力を向上し、それを余すことなく使用することで、お客様の歓びを、自分の歓びとかえて日々尽力していきたいと考えるようになった。

powered by icons8