GNU/Linux >> Linux の 問題 >  >> Linux

Apache 2 サーバーが機密データをログに記録しないようにする

CustomLog ディレクティブと少しの sed マジックを組み合わせることで、最終的に access.log に記録される前にパスワードをマスクできます (https://stackoverflow.com/a/9473943/102170 で説明されているように):

これにより、出現するすべての password=secret が置き換えられます password=[FILTERED]/your/path/access.log で :

CustomLog "|/bin/sed -u -E s/'param=[^& \t\n]*'/'param=\[FILTERED\]'/g >> /your/path/access.log" combined

そうは言っても、可能であれば機密データをクエリ文字列に入れないようにするのが最善です.


<ブロック引用>

Apache 2 はデフォルトで、すべてのリクエストのクエリ文字列を含むリクエスト URI 全体をログに記録します。

Apache 2 Web サーバーが機密データ (パスワード、クレジット カード番号など) をログに記録するのを防ぎながら、残りのリクエストをログに記録する簡単な方法は何ですか?

機密情報を URI で QueryString として送信していることを正しく読んでいますか?最初にそうするように、アプリケーションを変更することをお勧めします。

そうすれば、apache を変更する必要はありません。デフォルトではそのようなことはしないからです。


GET と POST の違いを読み、アプリケーションを書き直して、GET パラメーターにパスワードと情報を入れないようにします。


Linux
  1. CentOS8にApacheをインストールする

  2. Fedora31へのApacheのインストール

  3. Linux (Central Log Server) で Rsyslog リモート ロギングをセットアップする方法

  1. クラウドからクラウドへの移行

  2. Linux にソースから Apache 2 をインストールする

  3. Apache アクセス ログからトラフィックを測定する

  1. ApacheWebサーバーにアクセスする上位10個のIPアドレスを検索する

  2. HTML テーブルからのデータの抽出

  3. Apache/Linux サーバー、独自 IP からの DoS 攻撃