昨日、ジョグのねっとわーくで一時的にログインや記録ができない障害が発生しました。
夜は平日でも300名以上、週末や連休では500~600名の方にご利用いただく時間帯のため、ご不便をおかけしましたことをお詫び申し上げます。
原因
調査の結果、原因はデータベースではなく、セッション管理に使用しているRedisサーバーでした。
Redisの設定が第三者によって書き換えられ、外部サーバーのレプリカ(複製先)に変更されていたため、書き込みができない状態となり、ログイン処理が停止していました。
幸いにも、活動記録やユーザーデータを保存しているMySQLデータベースには影響はなく、記録データの消失も確認されていません。
復旧までの対応
今回実施した主な対応は以下のとおりです。
- Redisレプリケーションの復旧
- サイトの正常動作確認
- Redisを外部から接続できないよう設定変更
- サーバー間通信のみ許可するようファイアウォールを見直し
- 古い設定や不要な公開サービスの棚卸し・整理
あわせて、今回の障害をきっかけにサーバー全体のセキュリティ設定を見直しました。
被害について
調査では、
- 利用者データの漏えい
- 活動記録の消失
- システム改ざん
は確認されていません。
攻撃はRedisの設定変更まで行われていましたが、OSへ永続的な変更を書き込もうとした処理は権限不足により失敗しており、深刻な被害には至りませんでした。
今後について
今回の障害を教訓として、さらに安全な運用環境へ移行を進めます。
現在計画している新しいサーバー環境では、
- Dockerによる構成管理
- サービスごとの分離
- セキュリティ設定の標準化
- 古い設定を持ち越さないクリーンな環境
を取り入れ、より安定した運用を目指します。
最後に
ジョグのねっとわーくは、大手サービスのような大規模システムではありませんが、多くのランナーの皆さまが毎日の練習記録として利用してくださっています。
そのため、障害発生時にはできるだけ早く原因を特定し、復旧だけでなく再発防止まで対応することを心掛けています。
ご心配をおかけしましたが、現在は正常にご利用いただけます。
今後とも、安心して練習記録を残せるサービスとして運営を続けてまいります。
※今回の対応を通じてサーバー全体のセキュリティ点検も実施し、不要な公開設定の整理やアクセス制御の強化を行いました。障害は残念な出来事でしたが、システムをより堅牢にする良い機会にもなりました。
