GNU/Linux >> Tutoriels Linux >  >> Linux

Empêcher un serveur Apache 2 de consigner des données sensibles

Vous pouvez masquer les mots de passe avant qu'ils ne se retrouvent dans access.log en combinant une directive CustomLog avec un peu de magie sed (comme indiqué dans https://stackoverflow.com/a/9473943/102170) :

Cela remplacerait chaque occurrence de password=secret avec password=[FILTERED] dans /votre/chemin/access.log :

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

Cela étant dit, il serait préférable d'éviter si possible de mettre des données sensibles dans les chaînes de requête.


Apache 2 enregistre par défaut l'intégralité de l'URI de la requête, y compris la chaîne de requête de chaque requête.

Quel est un moyen simple d'empêcher un serveur Web Apache 2 d'enregistrer des données sensibles, par exemple des mots de passe, des numéros de carte de crédit, etc., tout en enregistrant le reste de la requête ?

Ai-je bien compris que vous envoyez des informations sensibles dans URI en tant que QueryString ? Je suggérerais de changer l'application pour qu'elle le fasse en premier lieu.

Ensuite, il ne serait pas nécessaire de changer apache, car il ne fait rien de tel par défaut.


Vous lisez la différence entre GET et POST et réécrivez vos applications pour arrêter de mettre des mots de passe et des informations dans les paramètres GET.


Linux
  1. Migration de cloud à cloud

  2. Installer Apache sur CentOS 8

  3. Installer Apache sur Fedora 31

  4. Comment configurer la journalisation à distance Rsyslog sous Linux (serveur de journal central)

  5. Mesurer le trafic à partir du journal d'accès apache

Comment installer Apache dans Fedora 20

Comment installer Apache sur Debian 7

Comment installer Apache sur Fedora 22

Comment installer Apache sur Debian 8.2

Créer un Serveur Cloud à partir d'un ISO

Comment puis-je obtenir des messages de journal du serveur LAMP sur Ubuntu 10.04 ?