私の知る限り、Apache本番サーバーですべてのmod_proxyのものを無効にしています。それをテストまたは確認するための合理的な方法は何ですか?私のhttpd.confを見ると、「プロキシ」が含まれている行にはコメントが付けられていることがわかります。
私が尋ねる理由は、今朝のログウォッチレポートでこのようなものを見たからです。
Connection attempts using mod_proxy:
81.88.124.30 -> 64.12.202.116:443: 1 Time(s)
81.88.124.30 -> 64.12.202.15:443: 1 Time(s)
81.88.124.30 -> 64.12.202.1:443: 1 Time(s)
81.88.124.30 -> 64.12.202.22:443: 1 Time(s)
81.88.124.30 -> 64.12.202.29:443: 1 Time(s)
81.88.124.30 -> 64.12.202.36:443: 1 Time(s)
81.88.124.30 -> 64.12.202.43:443: 1 Time(s)
81.88.124.30 -> 64.12.202.50:443: 1 Time(s)
81.88.124.30 -> 64.12.202.8:443: 1 Time(s)
Requests with error response codes
403 Forbidden
64.12.202.116:443: 1 Time(s)
64.12.202.15:443: 1 Time(s)
64.12.202.1:443: 1 Time(s)
64.12.202.22:443: 1 Time(s)
64.12.202.29:443: 1 Time(s)
64.12.202.36:443: 1 Time(s)
64.12.202.43:443: 1 Time(s)
64.12.202.50:443: 1 Time(s)
64.12.202.8:443: 1 Time(s)
私のレポートには通常はないものです。ですから、彼はその試みで403を獲得したように見えますが、これは良いことだと思います。しかし、なぜ彼はそれが試してみる価値があると感じたのですか?
多分彼/彼女/それはそれが試してみる価値があるかどうかを理解しようとしていました。サーバーにプロキシリクエストを送信してそれが機能するかどうかを確認するだけで費用はかからないため、通常、これらのリクエストは無差別に送信されます。
参考までに、mod_proxyが無効になっていることを確認する確実な方法の1つは、行を確認することです。
LoadModule mod_proxy.so proxy_module
コメントアウトされています。構成ファイルで1回だけ発生するはずですが、確認のためにgrepを実行しても問題はありません。また、実行することができます
Apache2ctl -M
(または、おそらくあなたのシステムに相当するものですが、私の場合は/etc/init.d/Apache2 modules
)ロードされたモジュールをリストし、プロキシモジュールがリストにないことを確認します。
Apache 2.xでは、mod_proxyモジュールが有効になっている場合でも、デフォルトで次のディレクティブのデフォルト値を使用してプロキシが無効になっています。
ProxyRequests Off
オンに設定すると、オープンプロキシになります。それ以外の場合は、安全である必要があります。
https://httpd.Apache.org/docs/2.0/mod/mod_proxy.html#proxyrequests
オープンプロキシではないことを確認するためにテストするには、ポート80にTelnetで接続し、次を送信します。
GET http://www.google.com/ HTTP/1.0
(最後に2行のリターンが2つ必要ですが、食べられています)。 404ページに戻る必要があります。あなたがグーグルを取り戻すならば、あなたは開いています。
ProxyRequestsをオフにし、mod_proxyをロードせずに、200の応答を受け取ることができます。この動作の原因となったクライアントのWebサーバー上の構成に遭遇しました-デフォルトの仮想ホストには、phpスクリプトを介してすべての要求を送信する.htaccessディレクティブがあり、「ページが見つかりません」ページは200の応答コードを返しました。文字通り何でもリクエストでき、404エラーは発生しません。理想的な状況ではありませんが、オープンプロキシでもありません。それは検索エンジンのインデクサでは地獄です..LOL
FWIW、それがロードされていないことを確認する最良の方法は、ドライブからモジュールを削除してから、Apacheを再起動することです。