199
modifications
(ajout du code interface web) |
(version 3.21 nombreux correctif pour le paramètre -tlo + nouveau paramètre caché -deb utile pour la création du deb.) |
||
Ligne 15 : | Ligne 15 : | ||
#fi | #fi | ||
args=${1} | args=${1} | ||
installdeb="0" | |||
if [ ! -z ${2} ];then | |||
if [ ${2} = "-deb" ];then # utiliser dans les fichiers postinst et prerm du deb | |||
installdeb="1" | |||
else | |||
DIRhtmlPersonaliser=${2} | |||
if [ ! -d $DIRhtmlPersonaliser ];then | |||
echo "Chemin de répertoir non valide!" | |||
exit 0 | |||
fi | |||
fi | |||
fi | |||
SED="/bin/sed -i" | SED="/bin/sed -i" | ||
DIR_CONF="/usr/local/etc/CTparental" | DIR_CONF="/usr/local/etc/CTparental" | ||
Ligne 27 : | Ligne 39 : | ||
HOURSCONNECT=OFF | HOURSCONNECT=OFF | ||
EOF | EOF | ||
fi | fi | ||
Ligne 63 : | Ligne 74 : | ||
REALMADMINHTTPD="interface admin" | REALMADMINHTTPD="interface admin" | ||
CMDINSTALL="" | CMDINSTALL="" | ||
paquetresolv="resolvconf" | |||
yum help 2&> /dev/null | yum help 2&> /dev/null | ||
if [ $? -eq 0 ] ; then | if [ $? -eq 0 ] ; then | ||
Ligne 68 : | Ligne 80 : | ||
CMDINSTALL="yum install " | CMDINSTALL="yum install " | ||
CMDREMOVE="yum remove " | CMDREMOVE="yum remove " | ||
fi | fi | ||
urpmi --help 2&> /dev/null | urpmi --help 2&> /dev/null | ||
Ligne 81 : | Ligne 87 : | ||
CMDREMOVE="urpme --auto " | CMDREMOVE="urpme --auto " | ||
namservicecrond="crond" | namservicecrond="crond" | ||
fi | fi | ||
apt-get -h 2&> /dev/null | apt-get -h 2&> /dev/null | ||
Ligne 88 : | Ligne 93 : | ||
CMDINSTALL="apt-get -y --force-yes install " | CMDINSTALL="apt-get -y --force-yes install " | ||
CMDREMOVE="apt-get -y --force-yes remove --purge " | CMDREMOVE="apt-get -y --force-yes remove --purge " | ||
fi | fi | ||
if [ $args="-i" ] ; then | if [ $args="-i" ] ; then | ||
Ligne 98 : | Ligne 102 : | ||
fi | fi | ||
fi | fi | ||
if [ $( echo $CMDINSTALL | wc -m ) -eq 1 ] ; then | if [ $( echo $CMDINSTALL | wc -m ) -eq 1 ] ; then | ||
echo "Aucun gestionner de paquet connu , n'a été détecté." | echo "Aucun gestionner de paquet connu , n'a été détecté." | ||
set -e | |||
exit 1 | exit 1 | ||
fi | fi | ||
Ligne 176 : | Ligne 183 : | ||
echo "erreur lors du téléchargement processu interompu" | echo "erreur lors du téléchargement processu interompu" | ||
rm -rf $tempDIR | rm -rf $tempDIR | ||
set -e | |||
exit 1 | exit 1 | ||
fi | fi | ||
Ligne 181 : | Ligne 189 : | ||
if [ ! $? -eq 0 ]; then | if [ ! $? -eq 0 ]; then | ||
echo "erreur d'extraction de l'archive processu interompu" | echo "erreur d'extraction de l'archive processu interompu" | ||
set -e | |||
exit 1 | exit 1 | ||
fi | fi | ||
Ligne 477 : | Ligne 486 : | ||
USERHTTPD=$(cat /etc/passwd | grep /var/www | cut -d":" -f1) | USERHTTPD=$(cat /etc/passwd | grep /var/www | cut -d":" -f1) | ||
GROUPHTTPD=$(cat /etc/group | grep $USERHTTPD | cut -d":" -f1) | GROUPHTTPD=$(cat /etc/group | grep $USERHTTPD | cut -d":" -f1) | ||
chmod 640 $FILE_CONF | |||
chown root:$GROUPHTTPD $FILE_CONF | |||
cat << EOF > $MAINCONFHTTPD | cat << EOF > $MAINCONFHTTPD | ||
server.modules = ( | server.modules = ( | ||
Ligne 568 : | Ligne 578 : | ||
mkdir -p $DIRadminHTML | mkdir -p $DIRadminHTML | ||
cp -rf CTadmin/* $DIRadminHTML/ | cp -rf CTadmin/* $DIRadminHTML/ | ||
clear | #if [ $installdeb = "1" ]; then | ||
echo "Entrer le login pour l'interface d'administration :" | # addadminhttpd "admin" "admin" | ||
while (true); do | #else | ||
clear | |||
echo "Entrer le login pour l'interface d'administration :" | |||
while (true); do | |||
read loginhttp | |||
case $loginhttp in | |||
* ) | |||
echo "login: $loginhttp" > /root/passwordCTadmin | |||
break | |||
clear | ;; | ||
esac | |||
done | |||
clear | |||
echo "Entrer le mot de $loginhttp :" | |||
while (true); do | |||
read password | |||
case $password in | |||
* ) | |||
echo "password: $password" >> /root/passwordCTadmin | |||
addadminhttpd "$loginhttp" "$password" | |||
break | |||
;; | |||
esac | |||
done | |||
#fi | |||
chmod 700 /root/passwordCTadmin | chmod 700 /root/passwordCTadmin | ||
chown root:root /root/passwordCTadmin | chown root:root /root/passwordCTadmin | ||
Ligne 650 : | Ligne 664 : | ||
chown root:$GROUPHTTPD $FILE_HCONF | chown root:$GROUPHTTPD $FILE_HCONF | ||
chmod 660 $FILE_HCONF | chmod 660 $FILE_HCONF | ||
$CMDSERVICE$namservicehttpd start | $CMDSERVICE$namservicehttpd start | ||
test=$? | |||
if [ ! $test -eq 0 ];then | |||
echo "Erreur au lancement du service lighttpd " | |||
set -e | |||
exit 1 | |||
fi | |||
} | } | ||
install () { | install () { | ||
mkdir $tempDIR | mkdir $tempDIR | ||
mkdir -p $DIR_CONF | mkdir -p $DIR_CONF | ||
initblenabled | initblenabled | ||
cat /etc/resolv.conf > $DIR_CONF/resolv.conf.sav | cat /etc/resolv.conf > $DIR_CONF/resolv.conf.sav | ||
$CMDINSTALL dnsmasq | if [ $installdeb = "0" ]; then | ||
$CMDINSTALL dnsmasq | |||
$CMDINSTALL lighttpd | |||
$CMDINSTALL php5-cgi | |||
fi | |||
if [ ! -f blacklists.tar.gz ] | if [ ! -f blacklists.tar.gz ] | ||
then | then | ||
Ligne 673 : | Ligne 692 : | ||
if [ ! $? -eq 0 ]; then | if [ ! $? -eq 0 ]; then | ||
echo "erreur d'extraction de l'archive processu interompu" | echo "erreur d'extraction de l'archive processu interompu" | ||
uninstall | |||
set -e | |||
exit 1 | exit 1 | ||
fi | fi | ||
Ligne 682 : | Ligne 703 : | ||
dnsmasqon | dnsmasqon | ||
$SED "s?^LASTUPDATE.*?LASTUPDATE=$THISDAYS=`date +%d-%m-%Y\ %T`?g" $FILE_CONF | $SED "s?^LASTUPDATE.*?LASTUPDATE=$THISDAYS=`date +%d-%m-%Y\ %T`?g" $FILE_CONF | ||
$CMDINSTALL $paquetresolv | if [ $installdeb = "0" ]; then | ||
$CMDINSTALL $paquetresolv | |||
fi | |||
confresolvconf | confresolvconf | ||
Ligne 732 : | Ligne 755 : | ||
rm -f $RESOLVDNSMASQ | rm -f $RESOLVDNSMASQ | ||
resolvconf -u | resolvconf -u | ||
if [ $installdeb = "0" ]; then | |||
$CMDREMOVE php5-cgi | |||
$CMDREMOVE lighttpd | |||
$CMDREMOVE dnsmasq | |||
$CMDREMOVE $paquetresolv | |||
fi | |||
} | } | ||
Ligne 798 : | Ligne 823 : | ||
clear | clear | ||
echo -e "L'heure de debut doit ètre strictement inférieur a l'heure de fin: $RougeD$input$Fcolor " | echo -e "L'heure de debut doit ètre strictement inférieur a l'heure de fin: $RougeD$input$Fcolor " | ||
echo "exemple: 08h00 a | echo "exemple: 08h00 a 23h59 ou 08h00 a 12h00 et 14h00 a 23h59" | ||
echo -e -n "$RougeD$PCUSER$Fcolor est autorisés à se connecter le $BleuD${DAYS[$NumDAY]}$Fcolor de:" | echo -e -n "$RougeD$PCUSER$Fcolor est autorisés à se connecter le $BleuD${DAYS[$NumDAY]}$Fcolor de:" | ||
} | } | ||
Ligne 804 : | Ligne 829 : | ||
clear | clear | ||
echo -e "Mauvaise syntaxe: $RougeD$input$Fcolor " | echo -e "Mauvaise syntaxe: $RougeD$input$Fcolor " | ||
echo "exemple: 08h00 a | echo "exemple: 08h00 a 23h59 ou 08h00 a 12h00 et 14h00 a 23h59" | ||
echo -e -n "$RougeD$PCUSER$Fcolor est autorisés à se connecter le $BleuD${DAYS[$NumDAY]}$Fcolor de:" | echo -e -n "$RougeD$PCUSER$Fcolor est autorisés à se connecter le $BleuD${DAYS[$NumDAY]}$Fcolor de:" | ||
} | } | ||
Ligne 856 : | Ligne 881 : | ||
O | o ) | O | o ) | ||
alltime="O" | alltime="O" | ||
echo "$PCUSER=admin=" >> $FILE_HCONF | |||
break | break | ||
;; | ;; | ||
N| n ) | N| n ) | ||
alltime="N" | alltime="N" | ||
echo "$PCUSER=user=" >> $FILE_HCONF | |||
break | break | ||
;; | ;; | ||
Ligne 867 : | Ligne 894 : | ||
for NumDAY in 0 1 2 3 4 5 6 | for NumDAY in 0 1 2 3 4 5 6 | ||
do | do | ||
if [$alltime = "O"];then | if [ $alltime = "O" ];then | ||
break | |||
break | |||
fi | fi | ||
Ligne 882 : | Ligne 905 : | ||
input=$choi | input=$choi | ||
choi=$(echo $choi | sed -e "s/h//g" | sed -e "s/ //g" | sed -e "s/a/-/g" | sed -e "s/et/:/g" ) # mise en forme de choi pour pam | choi=$(echo $choi | sed -e "s/h//g" | sed -e "s/ //g" | sed -e "s/a/-/g" | sed -e "s/et/:/g" ) # mise en forme de choi pour pam | ||
if [ $( echo $choi | grep -E -c "^[0- | if [ $( echo $choi | grep -E -c "^([0-1][0-9]|2[0-3])[0-5][0-9]-([0-1][0-9]|2[0-3])[0-5][0-9]$|^([0-1][0-9]|2[0-3])[0-5][0-9]-([0-1][0-9]|2[0-3])[0-5][0-9]:([0-1][0-9]|2[0-3])[0-5][0-9]-([0-1][0-9]|2[0-3])[0-5][0-9]$" ) -eq 1 ];then | ||
int1=$(echo $choi | cut -d ":" -f1 | cut -d "-" -f1) | int1=$(echo $choi | cut -d ":" -f1 | cut -d "-" -f1) | ||
int2=$(echo $choi | cut -d ":" -f1 | cut -d "-" -f2) | int2=$(echo $choi | cut -d ":" -f1 | cut -d "-" -f2) | ||
Ligne 898 : | Ligne 921 : | ||
MINUTES2=$(echo $int2 | sed -e 's/.\{02\}//') | MINUTES2=$(echo $int2 | sed -e 's/.\{02\}//') | ||
HEURES2=$(echo $int2 | sed -e 's/.\{02\}$//') | HEURES2=$(echo $int2 | sed -e 's/.\{02\}$//') | ||
echo "$PCUSER=$NumDAY=$HEURES1 | echo "$PCUSER=$NumDAY=$HEURES1${h}h$MINUTES1:$HEURES2${h}h$MINUTES2" >> $FILE_HCONF | ||
echo "$MINUTES2 $HEURES2 * * ${DAYSCRON[$NumDAY]} root /usr/bin/skill -KILL -u$PCUSER" >> /etc/cron.d/CTparental${DAYS[$NumDAY]} | echo "$MINUTES2 $HEURES2 * * ${DAYSCRON[$NumDAY]} root /usr/bin/skill -KILL -u$PCUSER" >> /etc/cron.d/CTparental${DAYS[$NumDAY]} | ||
break | break | ||
Ligne 919 : | Ligne 942 : | ||
HEURES4=$(echo $int4 | sed -e 's/.\{02\}$//') | HEURES4=$(echo $int4 | sed -e 's/.\{02\}$//') | ||
## minutes heures jourdumoi moi jourdelasemaine utilisateur commande | ## minutes heures jourdumoi moi jourdelasemaine utilisateur commande | ||
echo "$PCUSER=$NumDAY=$HEURES1 | echo "$PCUSER=$NumDAY=$HEURES1${h}h$MINUTES1:$HEURES2${h}h$MINUTES2:$HEURES3${h}h$MINUTES3:$HEURES4${h}h$MINUTES4" >> $FILE_HCONF | ||
echo "$MINUTES2 $HEURES2 * * ${DAYSCRON[$NumDAY]} root /usr/bin/skill -KILL -u$PCUSER" >> /etc/cron.d/CTparental${DAYS[$NumDAY]} | echo "$MINUTES2 $HEURES2 * * ${DAYSCRON[$NumDAY]} root /usr/bin/skill -KILL -u$PCUSER" >> /etc/cron.d/CTparental${DAYS[$NumDAY]} | ||
echo "$MINUTES4 $HEURES4 * * ${DAYSCRON[$NumDAY]} root /usr/bin/skill -KILL -u$PCUSER" >> /etc/cron.d/CTparental${DAYS[$NumDAY]} | echo "$MINUTES4 $HEURES4 * * ${DAYSCRON[$NumDAY]} root /usr/bin/skill -KILL -u$PCUSER" >> /etc/cron.d/CTparental${DAYS[$NumDAY]} | ||
Ligne 942 : | Ligne 965 : | ||
done | done | ||
if [ $alltime = "N" ] ; then | |||
echo "*;*;$PCUSER;$HORAIRESPAM" >> $FILEPAMTIMECONF | |||
else | |||
echo "*;*;$PCUSER;Al0000-2400" >> $FILEPAMTIMECONF | |||
fi | |||
done | done | ||
Ligne 1 053 : | Ligne 1 079 : | ||
usage="Usage: CTparental.sh {-i }|{ -u }|{ -dl }|{ -ubl }|{ -rl }|{ -on }|{ -off }|{ -cble }|{ -dble } | usage="Usage: CTparental.sh {-i }|{ -u }|{ -dl }|{ -ubl }|{ -rl }|{ -on }|{ -off }|{ -cble }|{ -dble } | ||
|{ -tlo }|{ -tlu }|{ -uhtml }|{ -aupon }|{ -aupoff }|{ -aup } | |{ -tlo }|{ -tlu }|{ -uhtml }|{ -aupon }|{ -aupoff }|{ -aup } | ||
Ligne 1 083 : | Ligne 1 103 : | ||
- avec un repertoir source : CTparental.sh -uhtml /home/toto/html/ | - avec un repertoir source : CTparental.sh -uhtml /home/toto/html/ | ||
- par default : CTparental.sh -uhtml | - par default : CTparental.sh -uhtml | ||
permet aussi de changer le couple login ,mots de passe de l'interface web. | |||
-aupon => active la mise ajour automatique de la black liste de toulouse (tous les 7 jours). | -aupon => active la mise ajour automatique de la black liste de toulouse (tous les 7 jours). | ||
-aupoff => desactve la mise ajour automatique de la black liste de toulouse. | -aupoff => desactve la mise ajour automatique de la black liste de toulouse. |
modifications