【実話】ホームページが突然消えた!複数業者に外注した結果起きた恐怖の事件
目次
ホームページ制作会社を2社以上使っている企業が注意すべきこと
どうも、ウェブ企画パートナーズ竹内です。
今回はですね、2社以上に外注している会社が気をつけることというテーマでお話しさせていただければと思います。
これ何を言ってるかと言いますと、ホームページを自社で更新作業だったりをしてない会社さんのお話になります。
複数の制作会社に依頼する際の現実
A社のホームページ制作会社とB社のホームページ制作会社、2つの会社に修正を依頼する際に、この作業はこっちの会社に任せよう、この作業はこっちの会社に任せようですとか、そういった2社以上、2名以上でもいいかもしれませんね。
修正とかをフリーランスの方に任せるという会社も増えておりますので、クラウドワークスだったり、ランサーズとかですね、そういったところを経由して2名以上の方にホームページの管理とか修正とか更新とかを任せている会社さんに、ちょっと注意してもらいたいなと思った出来事がありましたので、そちらをお伝えしていければと思います。
あと制作会社の方で言うと、あるあるだなと思っていただけるんじゃないかなと思いますので、もしよかったら最後まで聞いていただければと思います。
複数社に依頼する具体的なケース例
- A社(ホームページ制作会社):デザインや大規模な改修を担当
- B社(ホームページ制作会社):細かい修正や更新作業を担当
- フリーランスのデザイナー:バナー制作や画像加工を担当
- フリーランスのコーダー:HTMLやCSSの修正を担当
- SEO会社:SEO対策やコンテンツ更新を担当
- クラウドソーシング経由の作業者:簡単な更新作業を担当
実際に起こった事例:サーバーファイルが消失
では今回どういう事が起こったかというところなんですけど、サーバーですね。平たく言っちゃうとサーバー問題なんですが。
緊急事態の発生
とある会社さんから電話がかかってきまして、お取引してる会社さんなんですけど、緊急事態といった電話がかかってきて、ホームページが表示されなくなってしまっていると。
自社でサーバーとかも確認したらファイルがごっそり消えてると。WordPressで作られてるサイトだったんですけど、サイトの内容がもうしっかりサーバーから消えてしまっているというところで、どう対応したらいいかと。御社の何か影響でファイルが消えてしまったのではないか、そういった内容のお電話をいただきまして。
事件の経緯(時系列)
日時 | 出来事 | 関係者 |
---|---|---|
週の頭 | SEO会社がサーバーにアクセス | SEO会社 |
週の半ば | サイトが表示されなくなる | – |
同日 | ファイルがごっそり消えていることを発見 | 依頼主 |
同日 | SEO会社に連絡、「弊社じゃない」との回答 | SEO会社 |
同日 | 当社に緊急連絡が入る | 当社 |
同日 | サーバー管理パネルで復元作業が実行中であることを発見 | 当社 |
犯人探しの始まり
弊社は直近何か修正ですとか依頼されていることはなかったので、おそらく弊社ではないと思いますが、念のため確認してみますねということで。
ちょっと電話は一旦切って社内に確認して、そういうことは無かったという確信が取れたので、それを先方にお伝えして、ということがあったんですけど。
SEO会社の存在が判明
そういうことありませんでしたよということを電話でお伝えした時に、実は弊社は知らなかったんですけど、最近もう1社修正を実はお願いしている会社があると。SEOを弊社でやらせてくださいという営業がかかってきてそれで、ちょっと試してみようとなったと。その会社さんのせいかもしれないというのをおっしゃってたんですね。
真相究明:誰かが嘘をついている
ただ最初に、その担当者さんも、いや最近修正依頼してないし、今いろいろお願いしてるSEOの施策のために連絡してるやりとりしているのは、そのSEO会社さんなんですよ。
なんですがそこの会社さんは、いや弊社じゃないですと。触ったのは週の頭ぐらいで、その事件が起こったのは週の半ばくらいだったんです。
決定的な証拠の発見
我々もですね当然確認しないといけないので、確認してその時にお客様のサーバーのFTP、要は直接ファイルとアクセスするためのものではなくて、レンタルサーバー会社が発行してるサーバーの管理パネルみたいなものがあるんですね。
そちらを拝見して原因を究明するために我々も確認したところ、レンタルサーバー会社の1日前の状態に「復旧します」というそういう機能が付いてるんですね。それが実行中だったんですよ。
なので、犯人と言っていいのか分からないんですが、おそらくやっちゃった方、ごそっとファイルをですね、うっかり消しちゃった方っていうのは、それに気づいてこっそり復元ボタンを押してるんですよね。
問題の本質:うっかりミスではない
作業中にうっかり消してしまって、消してしまったことすら認識してないっていうパターンだったらわかるんですけど、おそらくその方は消してしまったことを認識したのでわざわざサーバーの管理サイトの方に入って、復元ボタンまで押すという行為をしてるので、完全に気づいてるんですよね。
それを誰かがやったのにやってないと。もしかしたら弊社がやったのにやってないかもしれないですし、弊社のメンバーのことは信用してますし疑うわけではないんですけど、現状ではもちろん弊社にも可能性がある。ただもう1社あるので、そちらが嘘をついている可能性ももちろんあるという状況なんですけど。
うっかりではないんですね。誰かはもう確実に嘘をついているような状況になってたんですね。
2社以上の外注で気をつけるべきこと
じゃあどうしたら防げるのかというところも、これを機会に考えていきたいなと思うんですけど。
サーバー管理パネルの権限管理
まず今回問題になったのが、サーバーの管理パネルですね。それに2社が入れてた、合計3社ですかね。依頼してる会社さんと外注の会社が2社ですね。1社が我々でもう1個が今回の場合でしたらSEO会社さんと。
知ってる人が多ければ多いほど、犯人探しって難しくなるんですよね。
複数社外注時の具体的な対策
- サーバーのパスワードを毎回変更する
- FTPアカウントを社ごとに分ける(可能な場合)
- 1社ずつ順番に作業を依頼する
- 作業完了後は速やかにパスワードを変更する
- アクセスログを定期的に確認する
- 重要な変更前にはバックアップを取る
- 作業内容と担当者を記録しておく
最も重要な対策:パスワード管理
なので、依頼する会社はこれ大変なんですけど、サーバーのパスワードを毎回変えていただく。もうこれに尽きると思います。当たり前なんですけど、これが最も重要になるかなと思います。
一応レンタルサーバーによってはFTPアカウントを何個か作るとか、そういうものもあるんですけども、それも当然やった方がいいと思うんですけど、サーバーの管理パネルにアクセスできるユーザー権限を増やすという、そういった機能はないレンタルサーバーが多いので。
具体的な運用方法
面倒なんですが、サーバー管理パネルに入るためのパスワードを毎回変える。1社しか知らない状態にするっていうのが大事になってくるかなと思います。
2社に依頼してもいいんですけど、1社に依頼する時にまず変えて、その新しいものを共有すると。修正が終わって、今度また別の会社に依頼したい場合は、パスワードをまた変えて新しいパスワードをその会社に伝えると。
パスワード管理の具体的手順
- A社に作業を依頼する前にパスワードを変更
- 新しいパスワードをA社に共有
- A社の作業が完了したら再度パスワードを変更
- B社に作業を依頼する場合は、新しいパスワードをB社に共有
- B社の作業完了後、また新しいパスワードに変更
- このサイクルを繰り返す
補足:1社ずつ順番に依頼する
2社以上に依頼してもいいんですが、同時に依頼しないということですね。1社ずつ依頼してかつパスワードを毎回変える。なので補足としては、1社ずつ頼むことですね。2社に外注してもいいんですけど、何か依頼するのは1社ずつというのが重要になってくるかなと思いますね。
そうすれば1社しか当然パスワードとかは知らないわけなので、何かトラブルがあった時にあなたのトラブルですよねと言えるようになるかなと思うんですけど。
それでも防げないケース
これでも防げないことがありまして、瑕疵担保責任というんですかね(※現在は契約不適合責任)。
修正の影響範囲の問題
何か修正をしましたと。ぱっと見ですね問題なさそうだなと。修正反映されてるなオッケーですということで、じゃあ次別の会社さんに頼んだとするじゃないですか。
よくよく数日後に、先に依頼した会社さんの修正したものと別のページを見た時に、そっちの表示が崩れてしまってると。今はもう修正OKですと言ってこちらの会社にパスワードを共有したので、サイトが崩れているということは今依頼している方の会社もせいなんじゃないかと思うんですけど。
防げないケースの具体例
- 修正の影響が後から別ページに現れる
- CSSの変更が予期せぬ箇所に影響する
- JavaScriptの競合が後から発生する
- データベースの不整合が時間差で表面化する
- キャッシュが原因で問題が遅れて発覚する
- プラグインやモジュールの相性問題が後から発生する
後から判明する不具合
今回ページの修正によって、実は別のところに不具合が出てたという可能性もあるんですよね。なのでそういったところは防げないんですね。
あなたのせいでしょう、いやいやよくよく調べたらちょっと弊社が修正してないページ、こちらの修正の時の影響でおそらくこっちも崩れてしまってるっていうのが確認できたんですけど、というともう怒りに任せてですねあんたのせいでしょうというとちょっと赤恥をかいてしまうようなことになるので。
複数社利用のメリットとリスク
怒りに任せてっていうのはやめておいていただけたらいいかなと思うんですが、2社以上に任せてしまってる場合、パスワードを変えれば、ある程度は防げるんですけどそれでも完全に防げないですよということが今回言いたかったことになりますね。
全ページを毎回正確に確認できるのであれば問題ないんですが、後から分かることもあるので、今回のようなトラブルだったらサーバーパスワードだけ変えていれば問題なかったと思うんですが。
セカンドオピニオンの価値
修正とかで2社以上に依頼してる会社も結構多いんじゃないかなと思うので、そういった時はこれだけでは防げないと。
だからといって1社だけに依頼しろとも言わないですよね。2社に依頼することによってセカンドオピニオン的に、この修正はこうだと思いますよっていう意見とかももらえたりするので、そういうメリットはあるんですがその場合は、誰が犯人か分からないような事件が起こるリスクを覚悟の上でやっていただく必要があると。それはご理解いただきたいなというところですね。
バックアップの重要性
完全に防げると言ったらあれなんですけどやはり、毎日バックアップを取るとかそういったところがあれば、仮にA社からB社に依頼した時にA社のミスが発見された時に、その状態に戻したりですとか、何かの状態に戻せるっていうのは非常に重要なので。
そういう時はバックアップを取っていただく。書いておきましょうかね。なので完全には防げないですけど、バックアップって大事ですよというのはそういうところですね。
バックアップを取るべきタイミングと方法
- 大規模な修正を行う前
- 新しい会社に作業を依頼する前
- WordPressやプラグインのアップデート前
- 定期的な自動バックアップ(毎日または毎週)
- サーバーのバックアップ機能を活用
- FTPでファイルをダウンロードして保存
- データベースのエクスポートも忘れずに
いろんな人が触ることがある場合は、バックアップを取っていただくのがいいんじゃないかなということで今回の動画を終わりにしたいかなと思います。
より高度な解決策:Git
今回事例を元に、こういった2社以上に外注している場合に気を付けることということで、サーバーのパスワードを変えたりバックアップを取ったりが大事ですよとお伝えしたんですが。
Git導入という選択肢
実はもしITに強い会社さんいらっしゃったらほぼ完璧に防ぐ方法がありまして、それがGitと呼ばれるものですね。
Gitという技術があると、誰がどのファイルをいつ編集したか、そういった履歴が全部残せてバージョン管理ができるというものがあるんですけど。
Gitのメリット
- 誰がいつどのファイルを編集したか完全に追跡可能
- 変更履歴が全て記録される
- 複数人が同じファイルを編集しても統合(マージ)できる
- 問題があれば即座に前のバージョンに戻せる
- ブランチ機能で安全にテスト環境を作れる
- コードレビューで品質管理ができる
Gitを使えばこういった問題、同じファイルを2名以上が同時に編集した時も統合ということができたり、いろんなことができるんですね。
世の中におそらくこういうことがたくさん起こって、これ防げないかなということで発明されたのがこのGITというものなんですけど、最初からGitを使って開発してくださいというお客様とかもいらっしゃるぐらい。
Git導入の現実的な課題
ただですね経験的には、結構ITに詳しい会社さんしかこの概念がないので、なかなかそういった環境を用意すること自体がまず一つちょっとハードルがあったりするんですけど。
Git導入の課題点
- IT知識が必要で学習コストがかかる
- 環境構築に専門知識が必要
- 運用ルールの策定が必要
- 全ての外注先がGitを使えるとは限らない
- 初期導入コストがかかる
- 社内での教育・トレーニングが必要
多くの会社はGitの概念を理解するのが難しいので直接管理、サーバーのパスワードを変えたりとやってると思うので、その場合の対応方法を中心にお伝えしたんですが。
実際はこういうGitとか次世代的な技術を使っていただくと、かなり解決できるということもお伝えさせていただきました。
トラブル発生時の対応フロー
万が一トラブルが発生した場合の対応フローも整理しておきましょう。
トラブル対応の基本フロー
状況確認
- 問題の内容を正確に把握
- 影響範囲を確認
- バックアップの有無を確認
緊急対応
- サイトの表示を優先的に復旧
- バックアップからの復元を試みる
- レンタルサーバーの復旧機能を確認
原因究明
- アクセスログの確認
- 作業履歴の照合
- 関係各社への確認
再発防止策の実施
- パスワード管理体制の見直し
- バックアップ体制の強化
- 作業フローの改善
報告と共有
- 社内での情報共有
- 必要に応じて外注先への通知
- 改善策の文書化
以上が2社以上に外注してる会社さんが気を付けることということで、弊社に2社目のご依頼をしていただけるという会社はお気軽にお問い合わせいただければと思います。
それではまた。