From 54edb48c777428d59015c6803b51902361d52628 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pierre-Elliott=20B=C3=A9cue?= Date: Sat, 7 Jul 2012 04:03:15 +0200 Subject: [PATCH] [Corbeau] On chiffre les logs du corbeau. Ignore-this: 9650d16205a13c97237c789c478faa40 darcs-hash:20120707020315-b6762-e5b2879840f42935d71bd4ec31c5506828464817.gz --- corbeau | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/corbeau b/corbeau index cfe58258..e2299d4a 100755 --- a/corbeau +++ b/corbeau @@ -20,9 +20,17 @@ if [[ $ACTIF == 1 ]]; then # Est-ce que ça contient le mot de passe ? if cat ${TEMP} | egrep -q "^Mot de passe : corbeau$"; then # On loggue tout dans /var/log/corbeau - FILE="corbeau_$(date +%Y_%m_%d_%H_%M_%S).log"; - cat ${TEMP} >> "/var/log/corbeau/${FILE}"; + DIR="/var/log/corbeau" + FILE="corbeau_$(date +%Y_%m_%d_%H_%M_%S)"; + # Création d'une clef AES aléatoire de 256 bits. + dd if=/dev/urandom bs=32 count=1 | sha256sum | head -c 32 >> ${DIR}/keys/${FILE}.key 2>> /var/log/corbeau/corbeau.err + + # Chiffrement du mail venant vers corbeau@crans.org à l'aide de la clef + cat ${TEMP} | gpg --armour --symmetric --cipher-algo aes256 --passphrase $(cat ${DIR}/keys/${FILE}.key) >> ${DIR}/${FILE}.log 2>> /var/log/corbeau/corbeau.err + + # Cf ssss, l'idée est de finir par splitter la clef AES à l'aide de ssss-split, et d'en distribuer un bout à chaque membre du C.A., il faudrait au minimum #ca/2 bouts de la clef pour la reconstruire, et débaguer le corbeau. + # Puis on envoit la version modifiée. cat ${TEMP} | egrep -v "^Mot de passe : corbeau$" | \ formail -I "Received" \ @@ -47,7 +55,7 @@ if [[ $ACTIF == 1 ]]; then -A "Path: Corbeau" | \ rnews 2>> /var/log/corbeau/corbeau.err - # Le mail ne contient pas le mot de passe, on répond à l'expéditeur + # Le mail ne contient pas le mot de passe, on répond à l'expéditeur else ( cat ${TEMP} | formail -r -A "From: corbeau@crans.org" -A "Content-Type: text/plain; charset=UTF-8; format=flowed" ; cat << EOF Bonjour,