Utilisation d'un meta-script
This commit is contained in:
parent
ad99a6a181
commit
d1689ad66d
5 changed files with 58 additions and 12 deletions
2
add.sh
2
add.sh
|
@ -1,7 +1,5 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
. suidchecker.conf
|
|
||||||
|
|
||||||
# On récupère tous les fichiers ayant le bit SUID
|
# On récupère tous les fichiers ayant le bit SUID
|
||||||
fichiers=$(find / -perm -4000 2> /dev/null)
|
fichiers=$(find / -perm -4000 2> /dev/null)
|
||||||
|
|
||||||
|
|
2
check.sh
2
check.sh
|
@ -1,7 +1,5 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
. suidchecker.conf
|
|
||||||
|
|
||||||
# Script de vérification. Récupère la liste des fichiers répertoriés, et
|
# Script de vérification. Récupère la liste des fichiers répertoriés, et
|
||||||
# vérifie leur état, en fonction de leur taille et leur somme de contrôle
|
# vérifie leur état, en fonction de leur taille et leur somme de contrôle
|
||||||
|
|
||||||
|
|
8
init.sh
8
init.sh
|
@ -1,7 +1,5 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
. suidchecker.conf # Récupération de la conf
|
|
||||||
|
|
||||||
# Script d'initialisation de la base de donnée. Crée le fichier s'il n'existe
|
# Script d'initialisation de la base de donnée. Crée le fichier s'il n'existe
|
||||||
# pas, crée la base de donnée, puis la remplie avec les premières images.
|
# pas, crée la base de donnée, puis la remplie avec les premières images.
|
||||||
|
|
||||||
|
@ -12,12 +10,6 @@ then
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Vérifie qu'on est bien en root
|
|
||||||
if [ $(id -u) -ne 0 ]
|
|
||||||
then
|
|
||||||
echo "Ce script doit être executé en root" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Création de la base de données
|
# Création de la base de données
|
||||||
echo "Création de la base de données"
|
echo "Création de la base de données"
|
||||||
|
|
57
suidchecker
Executable file
57
suidchecker
Executable file
|
@ -0,0 +1,57 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Vérifie qu'on est bien en root
|
||||||
|
if [ $(id -u) -ne 0 ]
|
||||||
|
then
|
||||||
|
echo "Ce script doit être executé en root" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
. /etc/suidchecker.conf &>/dev/null || . suidchecker.conf &>/dev/null
|
||||||
|
|
||||||
|
export DATABASE
|
||||||
|
export INSTALL_PATH
|
||||||
|
|
||||||
|
OPTS=$(getopt -o h -l init,reinit,add,check,help -- "$@")
|
||||||
|
eval set -- $OPTS
|
||||||
|
|
||||||
|
usage() {
|
||||||
|
echo "Utilisation du script :"
|
||||||
|
echo -e "\t--init : initialise la base de données"
|
||||||
|
echo -e "\t--reinit : réinitialise la base de données"
|
||||||
|
echo -e "\t--add : parcours l'arborescence et ajoute les fichiers ayant le bit SUID qui n'existent pas dans la base"
|
||||||
|
echo -e "\t--check : vérifie les fichiers répertoriés dans la base"
|
||||||
|
echo -e "\t--help, -h : affiche ce message"
|
||||||
|
echo
|
||||||
|
echo "Plus d'informations dans le man"
|
||||||
|
}
|
||||||
|
|
||||||
|
init() {
|
||||||
|
$INSTALL_PATH/init.sh
|
||||||
|
}
|
||||||
|
|
||||||
|
reinit() {
|
||||||
|
rm $DATABASE
|
||||||
|
init
|
||||||
|
}
|
||||||
|
|
||||||
|
add() {
|
||||||
|
$INSTALL_PATH/add.sh
|
||||||
|
}
|
||||||
|
|
||||||
|
check() {
|
||||||
|
$INSTALL_PATH/check.sh
|
||||||
|
}
|
||||||
|
|
||||||
|
while true ; do
|
||||||
|
case "$1" in
|
||||||
|
-h|--help) usage; exit 0;;
|
||||||
|
--init) init; shift;;
|
||||||
|
--reinit) reinit; shift;;
|
||||||
|
--add) add; shift;;
|
||||||
|
--check) check; shift;;
|
||||||
|
--) shift; break;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
exit 0
|
|
@ -1 +1,2 @@
|
||||||
DATABASE=suidchecker.db
|
DATABASE=suidchecker.db
|
||||||
|
INSTALL_PATH=.
|
||||||
|
|
Loading…
Reference in a new issue