私のIP変更は別のDクラスを実行するので、範囲を設定したいと思います。
123.123.123.xxx。最後のセグメントは0〜255です。
現在、Apacheはこう言っています:
<RequireAny>
Require ip 127.0.0.1
Require ip ::1
</RequireAny>
まず、「Apache-2.2」タグにもかかわらず、投稿した構文は2.4からのものであるため、Apache 2.4を意味すると想定します。
Apacheのドキュメントから:
ip.addressは、IPアドレス、部分的なIPアドレス、ネットワーク/ネットマスクのペア、またはネットワーク/ nnn CIDR仕様です。
クラスDはマルチキャストアドレスであり、クラスフルネットワーキングは90年代に廃止されたため、/ 24を許可することを望んでいると思います。/24を許可するには、次のいずれかを使用できます。
Require ip 123.123.123
Require ip 123.123.123.0/255.255.255.0
Require ip 123.123.123.0/24
個人的には、最後の方が最初の方より曖昧さが少なく、2番目よりも読みやすいと思います。
ドキュメントのこのセクションが役に立つ場合があります: http://httpd.Apache.org/docs/2.4/howto/access.html#Host
Apache 2.2以下では、次のコマンドを使用できます:
Order deny,allow
Deny from all
Allow from 24.18 # allow access from home
Allow from 162.12 # allow access from work
.htacess内で、ベースレベルに直接(<directive>
)。
Apache 2.4以降では、次のようになります:
<RequireAny>
#IPv4 range at my work
Require ip 207.100
#IPv4 range I usually get through my mobile provider
Require ip 29.11
#IPv6 from home
Require ip 2a02:4126:2aa4::/48
</RequireAny>
(すべての数字は架空のものであり、心配はありません;-)。
私はこれを長年使用して、潜在的なユーザーの99%からバックエンドフォルダーを保護しています。 (旅行中に熱心なブロガーでない限り、非常にうまく機能しています。Gmailユーザーの場合:一番下にある「最後のアカウントアクティビティ」リンクは、自分の「IP習慣」を理解するための快適な方法です)。
注:他の人が恩恵を受ける可能性があるため、ここではこれを残します。質問に対する直接の回答ではありません。
例えば:
ip 192.168.100.0/22が必要
動作している間
ip 192.168.100.0/22 #localnetworkが必要
失敗!
Httpd出力の再起動:
制御プロセスがエラーコードで終了したため、httpd.serviceのジョブが失敗しました。詳細については、「systemctl status httpd.service」および「journalctl -xe」を参照してください。
つまり、その行にはコメントは許可されませんのようです。
Apache 2.2を使用して確認済みであることに注意して、Apache 2.2はRequire ip
または<RequireAny>
をサポートしていません。 Apache HTTPサーバー2.4の新機能の概要 に記載されているように、「Require
ディレクティブと、<RequireAll>
などの関連するコンテナーディレクティブを使用して、高度な承認ロジックを指定できるようになりました。」前者は、Apache 2.4に追加された改善の1つです。
Apache 2.2でこれに対処するには、おそらく次のようにする必要があります。
Order allow,deny
Allow from 123.123.123
指定された範囲全体を取得します。
Apacheの Require ディレクティブは、ユーザーがリソースへのアクセスを許可または拒否されるようにするために、承認フェーズ中に使用されます。 mod_authz_Hostは、承認タイプをip、Host、forward-dnsおよびlocalに拡張します。他の認証タイプも使用できますが、追加の認証モジュールをロードする必要がある場合があります。
これらの承認プロバイダーは、サーバーの領域にアクセスできるホストに影響を与えます。アクセスは、ホスト名、IPアドレス、またはIPアドレスの範囲によって制御できます。
V2.4.8以降、 式 はHost requireディレクティブ内でサポートされます。 IPが必要
Ipプロバイダーを使用すると、リモートクライアントのIPアドレスに基づいてサーバーへのアクセスを制御できます。 Require ip ip-addressが指定されている場合、IPアドレスが一致する場合、リクエストはアクセスを許可されます。
完全なIPアドレス:
Require ip 10.1.2.3
Require ip 192.168.1.104 192.168.1.205
アクセスを許可されたホストのIPアドレス
IPアドレスの一部:
Require ip 10.1
Require ip 10 172.20 192.168.2
サブネット制限のために、IPアドレスの最初の1〜3バイト。
ネットワーク/ネットマスクのペア:
Require ip 10.1.0.0/255.255.0.0
ネットワークa.b.c.d、およびネットマスクw.x.y.z。より細かいサブネット制限。
Network/nnn CIDR仕様:
Require ip 10.1.0.0/16
前のケースと同様ですが、ネットマスクはnnnの上位1ビットで構成されています。
上記の最後の3つの例は、まったく同じホストのセットと一致することに注意してください。
IPv6アドレスとIPv6サブネットは、次のように指定できます。
Require ip 2001:db8::a00:20ff:fea7:ccea
Require ip 2001:db8:1:1::a
Require ip 2001:db8:2:1::/64
Require ip 2001:db8:3::/48
注:IPアドレスは起動時に解析されるため、式はリクエスト時に評価されません。
ソース: https://httpd.Apache.org/docs/trunk/mod/mod_authz_Host.html