「特定のディレクトリだけにIP制限をかけたい」
「でも、Basic認証だとスマホでの入力が面倒だし、かといってWordPressをわざわざ入れるほどでもない……」
開発の現場やサイト運用の中で、一度はこんな悩みに直面したことはありませんか?
今回、そんな「ちょうどいい制限」を実現するために、
データベース不要、ファイルを置くだけで即座に本格的なIPゲートウェイを構築できる
『GTI IP Gate』を開発しました。
エックスサーバーやロリポップ!などの共用レンタルサーバーでも、
PHP 8.0以上があれば今すぐ使えます。
今回は、このツールの設計思想や技術的なポイントについてご紹介します。
目次[閉じる]
なぜ「IP制限」なのか、なぜ「シンプル」なのか
管理画面や限定ページを守る方法として、
真っ先に思いつくのは BASIC認証 かもしれません。
- スマホやタブレットでの入力が面倒
- パスワード管理が煩雑
- 一時的な共有がやりづらい
一方で、WordPressなどのCMSを導入すると、
それはそれでオーバースペックになることもあります。
そこで目指したのが、
「ファイルを置くだけで、ちゃんと安全」
という、現場で使いやすい落としどころでした。
GTI IP Gate の基本コンセプト
- WordPress 非依存
- データベース不要
- 設定はテキストファイル1枚
- FTPだけで復旧可能
Apacheの .htaccess と最小限のPHPを組み合わせ、
軽量だが妥協しないIP制限を実現しています。
単一エントリーポイントによる多段ゲート設計
GTI IP Gate では、Apache側ではすべてのリクエストを
1つのPHPファイルに集約します。
- 許可されたIPかどうか
- パスが正規化されているか
- 実在するファイルかどうか
これらを段階的に評価し、
すべてを満たした場合のみ処理を継続します。
IP制限「だけ」に頼らず、
「IP × 実在ファイル」という二条件で守る設計です。
インストール手順(最短5分)
GTI IP Gate の導入は非常にシンプルです。
サーバーにファイルを配置し、IPを1つ書くだけで動作します。
- ZIPファイルをダウンロードして解凍
GitHub Releases または本ページのダウンロードリンクから取得します。 - 任意のディレクトリにアップロード
例:/secret/や/admin_gate/など
※このディレクトリ全体がIP制限対象になります。 - IP設定ファイルをリネーム
admin/allow_ips_conf.sample.cgiをadmin/allow_ips_conf.cgiに変更します。 - 自分のIPアドレスを1行で記述
例:203.0.113.10 ※CIDR表記(例:203.0.113.0/24)も使用可能です。 - ブラウザでアクセスして確認
https://example.com/secret/
許可IPからは表示され、それ以外は403になります。
これでインストールは完了です。
初回につまずきやすいポイント
管理画面に入れなくなった
→ FTPで admin/allow_ips_conf.cgi を直接編集すれば必ず復旧できます。
403が出てアクセスできない
→ allow_ips_conf.cgi に自分のIPが書かれていない可能性が高いです。
スマホ・テザリングでアクセスできない
→ モバイル回線ではIPが頻繁に変わります。
必要に応じて固定IPやCIDR指定を検討してください。
GTI IP Gate には、一般的な会員管理や多段認証のログイン画面は存在しません。
管理画面について
上述した通り、GTI IP Gate には、一般的なログイン画面は存在しません。
管理画面に入る条件は非常にシンプルで、
許可されたIPからアクセスしていること、
ただそれだけです。
管理画面へのアクセス時は ID/パスワード を入力します。

ここで ログインID、パスワードを入力してログインできます。ログインIDの変更等はREADME.md をご覧ください。

管理画面では IPを入力して 追加、 許可済みIPのゴミ箱をクリックして除去の簡単操作で管理できます。
管理画面へは、次のURLにアクセスしてください。
https://example.com/secret/admin/admin.php
※ secret の部分は、設置したディレクトリ名に置き換えてください。
また、「ログイン情報の変更」から admin/admin.php へのログインID/パスワード の変更を行えます。

このツールが向いているケース
- 開発・検証環境をサクッと守りたい
- 簡易的な管理画面を限定公開したい
- 共用レンタルサーバーで使いたい
- 締め出し事故を極力避けたい
このツールが向いていないケース
- 不特定多数が利用する会員制サービス
- 頻繁にIPが変わるモバイル回線主体の運用
- 厳密な認証や監査が必要な環境
GitHub Releases として公開しています
GTI IP Gate は、GitHub上で Releases として公開しています。
実運用を前提としたツールとして、
バージョン管理と変更履歴を明確にしています。
ダウンロード
サイト上からもダウンロードできるようにしています。
こちらからダウンロードしてください。説明も読んでください。
⚠️ 免責およびお願い
本ツールは「指定ディレクトリのIP制御」を目的として、
株式会社ジーティーアイ(GTI)が独自に開発・公開しているものです。
オープン配布のため、動作保証・個別サポート・苦情対応は一切行いません。
ご利用は自己責任でお願いいたします。
任意のサーバーにて運用テスト・バックアップを行ったうえでご利用ください。
ご意見・ご要望があればお知らせください。
まとめ
GTI IP Gate は、
「特定のディレクトリだけを、ちょうどよく守りたい」
という現場の感覚から生まれたツールです。
- DB不要
- WordPress不要
- .htaccess + PHPのみ
- FTPで即復旧可能
やりすぎない、でも妥協しない。
そんなIP制限を探している方には、
きっと刺さるはずです。

コメント Comments
コメント一覧
コメントはありません。
トラックバックURL
https://blog.gti.jp/post-75298/trackback/