apacheでアクセス制限

 contents

 
前回攻撃のあった場所を特定させましたが、埒があかないのでapacheのアクセス権限を使用し403(Forbidden)でアクセス制限をかけ、さらにファイヤーウォールで接続に来るIPに対して遮断をしてしまおうという計画です。

まずはアクセス制限でHTTPステータスコード403にさせます

やり方メモ:
1.apacheのconfファイルに設定を追加。
2.apacheを再起動。
※大事な設定ファイルをいじりますので、ファイルについては日付をつけるなどしてバックアップは必ず取得してください。

まずはapacheの設定ファイルが保存されているディレクトリにcdします。
※yumでインストールしてますので、場所はその環境毎に変えてください。
soootaは今後もこんな感じの攻撃があるかもしれないと思い、追加する設定を外出しのconfファイルに設定を記載します。
ここでは、設定ファイル名はaccess_denied.confとします。
前回取得してきたログからxmlrpc.phpにアクセスしてきていることがわかるため、xmlrpc.phpへのアクセスに対して制限をかけていきます。

コマンド

access_denied.confのファイルに記載する内容

xmlrpc.phpへのアクセスに対する権限を外した感じになります。
これでアクセス制限のためファイルが出来上がりました。
Filesディレクティブについてはまた後日書きたいと思いますが、とりあえずapacheの公式ページを載せておきます。

次は、作ったファイルをapacheのconfファイルで読み込ませます。
/etc/httpd/conf配下にあるhttpd.confの最終行に次の1行追加をします。

最後にapacheの再起動を行ってください。
apacheの再起動を行うと数秒ですが、ページにアクセスできなくなるので、注意してください。

apacheの再起動が完了したら、ページにアクセスしてみましょう。
 
forbidden
 
ブラウザから見るとForbiddenが表示され403へと遷移していることがわかります。
accesslogからも403へ遷移したことがわかります。

これで、xmlrpc.phpへのアクセスに対して403を返すことに成功しました。
次は、IPをファイヤーウォールで遮断します。
IPの遮断の必要性ですが、今回はアクセスをapacheで受けて403を返すということしただけですので、アクセスが止まらないと結局無駄にリソースを消費してしまいます。
そのため、ファイヤーウォールでapacheへも接続させないようにすることで、サーバを守っていきます。
 

ブログランキングに参加しています。クリックして応援していただけると嬉しいです。

人気ブログランキング
ブログランキング・にほんブログ村へ
にほんブログ村