個人サイトが1か月で33万回攻撃されていた

実測データと対策 | 2026年7月 tkurume.work サーバーログの記録

先に結論

1日に数人しか訪れない個人サイトのサーバーに、1か月で 33万回のログイン試行が来ていました。攻撃はサイトの内容とも人気とも無関係で、サーバーを立てた瞬間から始まります

ただし 侵入は1件もありません。理由は単純で、攻撃のほぼ全部が「パスワードの当てずっぽう」と「ありがちなファイル名の探索」だからです。鍵をかけてあれば当たりません。

この記事は、実際のログを数えた生の数字を公開します。これから機器やサービスをインターネットにつなぐ方に読んでいただきたい内容です。

1. まず数字

332,668SSHログイン失敗
(2026年7月・27日間)
335,467同・6月分
(30日間)
約 12,0001日あたりの試行回数
0侵入に成功した数

このサーバーの実際の読者は 1日に数人です。人間の訪問者1人に対して、機械が 2,000〜3,000回ログインを試している計算になります。

数え方について。 Linux は失敗したログインを btmp というファイルに記録します。上の数字はこれを月ごとに数えたものです。ログの解釈ではなく、記録された件数そのものです。

2. 何のユーザー名が狙われたか

ログイン試行に使われたユーザー名を多い順に並べると、攻撃の性格がはっきり見えます。

ユーザー名試行回数なぜ狙われるか
root134,555Linux の最高権限アカウント。取られたら全部取られる
admin16,671機器やアプライアンスの既定の管理者名
user6,987初期設定のまま放置されがちな名前
ubuntu6,638クラウドのUbuntuイメージの既定ユーザー
test3,790検証用に作って消し忘れたアカウント狙い
debian3,572同上(Debian イメージの既定)
deploy3,088自動デプロイ用アカウント狙い
ftpuser2,024古いFTP運用の名残を狙う
postgres1,917データベースの既定ユーザー
oracle1,636同上(業務システム狙い)
pi1,613Raspberry Pi の既定ユーザー名
pi が 1,600回以上狙われているのは見逃せません。Raspberry Pi を現場に置いて外から見られるようにしている設備は珍しくありません。初期ユーザー名・初期パスワードのまま外につなぐと、数時間で見つかります。

この一覧に、私が実際に使っているユーザー名も 6,039回含まれていました。ドメインの登録情報などから名前を推測して試すパターンです。「珍しい名前だから安全」は成り立ちません。

3. どこから来ているか

攻撃元は 864 個の異なるIPアドレスに分散していました。上位を挙げます。

試行回数回線の種類
5,531香港クラウド事業者
5,443ドイツ大手レンタルサーバー事業者
4,454中国公的機関の回線
2,672 / 2,529フランスクラウド事業者(2アドレス)
1,994 / 1,991 / 1,989 …オランダ同一事業者の複数アドレス
1,700アンドラクラウド事業者

特徴は、ほとんどが正規のクラウド事業者のサーバーだという点です。攻撃者が自分の回線から来ることはまずありません。乗っ取られたサーバーや、使い捨てで借りたクラウドが踏み台になっています。「怪しい国からのアクセスを遮断する」といった対策があまり効かないのはこのためです。

なお中国の1件は公的機関名義の回線でした。当人が攻撃しているというより、その組織のサーバーが乗っ取られて加害側に回っていると見るのが自然です。守れていない機器は、いつのまにか他人を攻撃する道具になります。

4. Webサイト側も同時に叩かれている

SSHとは別に、Webサーバーにも探索が来ます。直近のアクセス記録から数えました。

38,685総リクエスト
17,753存在しないURLへの要求
(全体の46%)
6,085機密ファイル狙いの探索
0中身を取られた数

探されていたのは、判で押したように同じファイルです。

探索されたもの本来そこに何があるか
/.envデータベースのパスワードやAPIキーを書く設定ファイル。置き場所を間違えると外から読めてしまう
/.git/configソースコード管理の情報。ここから全ソースを復元される
id_rsa / .ssh/SSHの秘密鍵。取られたら即座にログインされる
/wp-login.php /wp-admin/WordPress の管理画面
/phpmyadmin/データベース管理画面
/admin/ /.aws/ *.sql管理画面、クラウドの認証情報、データベースの吸い出しファイル

全て 404(存在しない)を返しています。理由は簡単で、このサイトにはそれらが1つも無いからです。WordPress を使っていないので管理画面が存在せず、設定ファイルは公開ディレクトリの外に置いてあります。

Web と SSH の両方を叩いている相手が 34 アドレスありました。同じ相手が「Webの穴」と「SSHの穴」を並行して探しているということです。片方だけ守っても意味がありません。

5. AIのクローラーは攻撃ではない(が、数は多い)

ログを見ていると、攻撃とは別に大量の巡回プログラムが来ています。

名前回数正体
Bytespider797TikTok(ByteDance)の収集
Applebot472Apple の検索・AI
meta-externalagent359Meta(Facebook)の収集
Googlebot337Google 検索
ClaudeBot / Claude-User / anthropic-ai687Anthropic(Claude)
GPTBot / ChatGPT-User / OAI-SearchBot727OpenAI(ChatGPT)
bingbot229Microsoft Bing
Amazonbot197Amazon
PerplexityBot179Perplexity(AI検索)

これらは害はありません。むしろ AI に質問したとき自分の記事が答えに使われるための前提です。ただし1つだけ実害があります。

アクセス数を大きく見誤ります。 「1日◯◯アクセス」という数字にこれらが混ざると、実際の読者の何十倍にも膨らみます。当サイトでは「ページの画像まで読み込んだ本物のブラウザだけ」を数える方式に変え、実際の読者数を把握できるようにしました。ログの生の数字を成果として報告するのは、もはや意味がありません。

6. なぜ33万回叩かれて平気なのか

特別なことは何もしていません。効いているのは次の5つです。

  1. SSHを公開鍵認証にしている
    パスワードを使わない方式です。攻撃側は当てるべきパスワードが存在しないため、33万回試しても原理的に通りません。
  2. ファイアウォールで必要なポートだけ開けている
    開いているのは Web(80/443)と SSH(22)だけ。メール送信用のポートなどはサーバー内部からしか使えないようにしてあります。
  3. WordPress などのCMSを使っていない
    静的なHTMLが中心です。攻撃の主力である「CMSの脆弱性狙い」は、狙う対象が存在しないので全て空振りになります。
  4. データと設定を公開ディレクトリの外に置いている
    アクセス集計のデータや設定ファイルは Web から到達できない場所に置き、権限も限定しています。URLを直接叩かれても読めません。
  5. 動かしている自作プログラムを最小限にしている
    サーバー上で動く自作のPHPはアクセスカウンターだけです。プログラムが少なければ、穴の空く場所も少なくなります。
逆に言えば — 使っていないCMSを入れたまま、初期パスワードのまま、設定ファイルを公開フォルダに置いたまま、のいずれか1つでもあれば、この33万回のうちどれかが当たります。 攻撃者は賢いことをしているのではなく、ひたすら数を撃って、開いている家だけを見つけているのです。

7. 今回この調査で見つかった穴と、やったこと

「大丈夫だろう」と思って調べたのですが、実際には見落としが出ました。正直に書きます。

見つかった穴:設定ファイルの置き忘れ

サーバー移行作業をしたときの Webサーバー設定ファイルのコピーが、公開ディレクトリに残っていました。誰でもURLを叩けば読める状態です。中身にパスワードは含まれておらず、アクセス記録も外部からは0件でしたが、本来あってはならない状態です。即日削除しました。

作業の途中で作ったファイルを消し忘れる、というのは最もありふれた事故です。穴は高度な攻撃ではなく、自分の置き忘れから開きます。

やったこと:自動遮断(fail2ban)の導入

攻撃を止めることはできませんが、失敗を繰り返すIPアドレスを自動的に遮断する仕組みを入れました。一定回数ログインに失敗した相手は、しばらく接続そのものができなくなります。繰り返す相手ほど遮断期間が延びます。

侵入を防ぐ効果もありますが、実際に大きいのは ログが減ることです。1か月33万件の失敗記録に埋もれていると、本当に見るべき異常が見えません。

8. 制御機器をインターネットにつなぐ方へ

ここからが本題かもしれません。私の本業は照明・舞台の制御装置の設計です。近年は「遠隔で監視したい」「スマホから操作したい」という要望が確実に増えました。

そのとき必ずお伝えしていることがあります。

制御機器をグローバルIPに直接晒さないでください。
Art-Net、Modbus、各種の独自プロトコルの多くは 認証という概念を持っていません。閉じたネットワークで使う前提で設計されているからです。外から届く場所に置けば、見つけた者が操作できます。パスワードを破る必要すらありません。

この記事の数字が示しているのは、「うちみたいな小さいところは狙われない」が完全に間違っているということです。攻撃は有名かどうかで来るのではなく、全アドレスを機械が順番に舐めた結果として来ます。1日数人しか来ないサイトに1日1万2千回です。

現実的な指針

設備の制御と、それをネットにつなぐことは別の技術です。両方をまたいで設計できる人は多くありません。この記事のような調査も含め、方式の選定からご相談いただけます。

制御機器のネットワーク接続・遠隔監視の設計でお困りでしたら、ご相談ください。
照明制御45年。DMX512 / Art-Net / DALI / Modbus と、それをどう安全に外へ出すかまで含めて設計します。
お問い合わせ

まとめ

技術者向けの詳細版(Qiita)

同じ調査を、実際のコマンドと設定ファイル付きで書いたものを Qiita に公開しています。

ログの数え方、sshd_config の読み込み順の罠(設定したつもりで効いていない状態になる)、SSH をいじるときに自分を締め出さないための手順、fail2ban の設定まで。サーバーを運用している方向けの内容です。

📘 1日数人の個人サイトが1か月で33万回攻撃されていた — ログを数えて塞ぐまで(Qiita)

関連ページ