1. はじめに
1.1. 背景
- 自分が所属するサークルの連絡やファイル共有等をIT化するにあたり、NextCloudなどを導入してプライベートなストレージ環境を構築しようと計画しました
- 導入できるか検討するため、まずは自宅サーバを公開して試使用することにしました
- その手段として、表題にもあるようにCloudflareというCDNサービスが展開するCloudflare tunnelを使用して、公開をしました
- 参考: Cloudflare Tunnel を使って自宅をデータセンターみたいにする , Zenn EightT様記事, 2024/11/30確認
- Webサイトの導通確認の一環で、お試しでWordPressを立てて使用してみることにしました
1.2. 発生したこと
- Cloudflareのサイトでは、自身の登録したドメインに対してHTTPトラフィックの確認をしたり、WAFの設定をしたりすることができます
- WordPressを構築して、1日後にHTTPトラフィックを確認したところ、何も記事を作成していないのに、海外からのアクセスが思ったよりある、ということがわかりました
- たまたまなのか、意図的なアクセスなのかはわからないですが、海外からアクセスされる必要は全くないため、驚きました
- この状況を見て、いそぎ対策を入れました
2. 対策
- あくまで自宅サーバを公開するにあたっての対策となります
- 費用をかければ、VLAN導入やネットワークの分離などもっと策があるかと思います
2.1. blogサーバ(Ubuntu 24.04)の対策
- FireWallの確認
- 80番、443番ポート以外遮断
- sshなどの不要プロセスの停止
2.3. WordPress自体の対策
- 2FA認証pluginを導入し、ログイン時にスマホでの認証を必須化
2.3. CloudflareでのWAF設定
※Cloudflareに関しての内容となりますが、他のCDNサービスでも類似の設定ができるかと思います。
- WAFの設定からカスタムルールを作成し、海外(特に危険と思われる国)からのアクセスを遮断する
- 私の場合、あえて"日本以外から"のリクエストはブロックとして、海外アクセスを禁止にしました
- 日本国内であっても、不正なアクセスはあり得るため、限られた拠点からのIPアドレスのみ許可、というようにしたほうが、効果が高いです
3. おわりに
- CloudflareというCDNサービスを介したWebサイトアクセスとなるため、デフォルトで脆弱性に対する攻撃やDDoS攻撃などのサイバー攻撃から保護してくれます
- ただし、それでもやはり不審なアクセスはある、再認識しました
- 今回はお試しのWordPressだったからまだよいのですが、nextcloudでプライベートストレージ環境を整備しようとしていたので、その前に再認識できてよかったです