Subversion Repositories ALCASAR

Compare Revisions

Ignore whitespace Rev 383 → Rev 384

/alcasar.sh
66,7 → 66,7
# ****** Paths - chemin des commandes *******
SED="/bin/sed -i"
# ****** Alcasar needed RPMS - paquetages nécessaires au fonctionnement d'Alcasar ******
PACKAGES="freeradius freeradius-mysql freeradius-ldap freeradius-web apache-mpm-prefork apache-mod_ssl apache-mod_php squid dansguardian postfix MySQL logwatch ntp awstats mondo cdrecord buffer vim-enhanced bind-utils wget arpscan ulogd openssh-server php-xml coova-chilli pam_ccreds rng-utils lsb-release dnsmasq clamav sudo cronie-anacron"
PACKAGES="freeradius freeradius-mysql freeradius-ldap freeradius-web apache-mpm-prefork apache-mod_ssl apache-mod_php squid dansguardian postfix MySQL logwatch ntp awstats mondo cdrecord buffer vim-enhanced bind-utils wget arpscan ulogd openssh-server php-xml pam_ccreds rng-utils lsb-release dnsmasq clamav sudo cronie-anacron pciutils"
# ****************** End of global parameters *********************
 
header_install ()
171,7 → 171,11
fi
done
fi
 
# On supprime les paquetages orphelins et inutiles
for rm_rpm in avahi mandi dhcp-common radeontool
do
/usr/sbin/urpme --auto $rm_rpm --auto-orphans
done
# On configure les dépots et on les teste
echo "Configuration des dépôts de paquetages Internet (repository)"
chmod u+x $DIR_SCRIPTS/alcasar-urpmi.sh
207,20 → 211,15
exit 0
fi
# On mets à jour le système
urpmi --auto --auto-update
urpmi --auto --auto-update
# On installe les paquetages complémentaires
urpmi --auto $PACKAGES
# On empêche les mises à jour de coova-chilli et freeradius par le biais des dépôts
for rpmskip in coova freeradius
do
echo -n "/^$rpmskip/" >> /etc/urpmi/skip.list
done
# On supprime les paquetages, les services et les utilisateurs inutiles
for rm_rpm in dhcp-server avahi mandi shorewall c-icap-server cyrus-sasl
for rm_rpm in shorewall dhcp-server c-icap-server cyrus-sasl distcache-server
do
/usr/sbin/urpme --auto $rm_rpm --auto-orphans
done
for svc in alsa sound dm atd dc_server netfs bootlogd stop-bootlogd
for svc in alsa sound dm atd netfs bootlogd stop-bootlogd
do
/sbin/chkconfig --del $svc
done
246,6 → 245,11
done
IFS="$old"
urpmi --no-verify --auto $DIR_CONF/rpms/$ARCH/*.rpm
# On empêche les mises à jour de coova-chilli et freeradius par le biais des dépôts
for rpmskip in coova freeradius
do
echo -n "/^$rpmskip/" >> /etc/urpmi/skip.list
done
# On vide le répertoire temporaire
urpmi --clean
# On crée aléatoirement les mots de passe et les secrets partagés
254,8 → 258,8
echo -n "mot de passe de protection du menu de démarrage (GRUB) : " > $FIC_PASSWD
echo "$grubpwd" >> $FIC_PASSWD
md5_grubpwd=`/usr/bin/md5pass $grubpwd`
sed -i "/^password.*/d" /boot/grub/menu.lst
sed -i "1ipassword --md5 $md5_grubpwd" /boot/grub/menu.lst
$SED "/^password.*/d" /boot/grub/menu.lst
$SED "1ipassword --md5 $md5_grubpwd" /boot/grub/menu.lst
mysqlpwd=`cat /dev/urandom | tr -dc [:alnum:] | head -c8` # mot de passe de l'administrateur Mysqld
echo -n "compte et mot de passe de l'administrateur Mysqld : " >> $FIC_PASSWD
echo "root / $mysqlpwd" >> $FIC_PASSWD
648,19 → 652,6
$MYSQL="CREATE DATABASE IF NOT EXISTS $DB_RADIUS;GRANT ALL ON $DB_RADIUS.* TO $DB_USER@localhost IDENTIFIED BY '$radiuspwd';FLUSH PRIVILEGES"
# Ajout d'une base vierge
mysql -u$DB_USER -p$radiuspwd $DB_RADIUS < $DIR_CONF/radiusd-db-vierge.sql
# FICSQL_LIBFREERADIUS=`find /etc/raddb/sql/mysql -type f -name schema.sql`
# mysql -u$DB_USER -p$radiuspwd $DB_RADIUS < $FICSQL_LIBFREERADIUS
# $MYSQL="connect $DB_RADIUS;ALTER table radpostauth DROP column pass;"
# Ajout des tables de comptabilité journalière et mensuelle (accounting)
# DIRSQL_FREERADIUS=`find /usr/share/doc/freeradius-web* -type d -name mysql`
# mysql -u$DB_USER -p$radiuspwd $DB_RADIUS < $DIRSQL_FREERADIUS/mtotacct.sql
# mysql -u$DB_USER -p$radiuspwd $DB_RADIUS < $DIRSQL_FREERADIUS/totacct.sql
# correction d'un bug sur la table 'userinfo' avant import
# $SED "s?^ id int(10).*? id int(10) NOT NULL auto_increment,?g" $DIRSQL_FREERADIUS/userinfo.sql
# mysql -u$DB_USER -p$radiuspwd $DB_RADIUS < $DIRSQL_FREERADIUS/userinfo.sql
# correction d'un bug sur la table 'badusers' avant import (elle reste inutilisée par Alcasar pour l'instant)
# #$SED "s?^ id int(10).*? id int(10) NOT NULL auto_increment,?g" $DIRSQL_FREERADIUS/badusers.sql
# #mysql -u$DB_USER -p$radiuspwd $DB_RADIUS < $DIRSQL_FREERADIUS/badusers.sql
} # End init_db ()
 
##########################################################################
694,7 → 685,7
chmod 660 /etc/raddb/sites-available/alcasar /etc/raddb/modules/ldap
chgrp apache /etc/raddb /etc/raddb/sites-available /etc/raddb/modules
ln -s /etc/raddb/sites-available/alcasar /etc/raddb/sites-enabled/alcasar
# Inutile dans notre fonctionnement mais les liens sont recréés par un update de radius ... donc forcé en tant que fichier à 'vide'
# Inutile dans notre fonctionnement mais les liens sont recréés par un update de radius ... donc forcé en tant que fichier à 'vide'
touch /etc/raddb/sites-enabled/{inner-tunnel,control-socket,default}
# configuration du fichier client.conf (127.0.0.1 suffit mais on laisse le deuxième client pour la future gestion de l'EAP)
[ -e /etc/raddb/clients.conf.default ] || cp -f /etc/raddb/clients.conf /etc/raddb/clients.conf.default
952,7 → 943,7
# on remplace la page d'interception (template)
cp -f $DIR_CONF/virus-fr.html /etc/havp/templates/fr/virus.html
cp -f $DIR_CONF/virus-en.html /etc/havp/templates/en/virus.html
# mise à jour de la base antivirale de clamav toutes les 2 heures
# automatisation de la mise à jour de la base antivirale (toutes les 2 heures)
$SED "s?^Checks.*?Checks 12?g" /etc/freshclam.conf
$SED "s?^NotifyClamd.*?# NotifyClamd /etc/clamd.conf?g" /etc/freshclam.conf
}
976,9 → 967,9
chmod 750 /var/log/firewall
chmod 640 /var/log/firewall/firewall.log
$SED "s?^file=\"/var/log/ulogd.syslogemu\"?file=\"/var/log/firewall/firewall.log\"?g" /etc/ulogd.conf
sh $DIR_DEST_BIN/alcasar-iptables.sh
# création du fichier d'exception au filtrage
touch /usr/local/etc/alcasar-filter-exceptions
sh $DIR_DEST_BIN/alcasar-iptables.sh
} # End of firewall ()
 
##################################################################################
1219,13 → 1210,13
cp -f $DIR_CONF/logrotate.d/* /etc/logrotate.d/
chmod 644 /etc/logrotate.d/*
# processus lancés par défaut au démarrage
$SED "s?^# Default-Start.*?# Default-Start: 3 4 5?g" /etc/init.d/mysqld
$SED "s?^# Default-Stop.*?# Default-Stop: 0 1 2?g" /etc/init.d/mysqld # pour éviter les alertes de dépendance de services (netfs)
$SED "s?^# chkconfig:.*?# chkconfig: 23 61 40?g" /etc/init.d/dnsmasq # pour démarrer dnsmasq avec eth1 up avant chilli - utile ??
for i in netfs ntpd iptables ulogd dnsmasq squid chilli httpd radiusd mysqld dansguardian havp freshclam
for i in ntpd iptables ulogd dnsmasq squid chilli httpd radiusd mysqld dansguardian havp freshclam
do
/sbin/chkconfig --add $i
done
# pour éviter les alertes de dépendance avec le service 'netfs'.
$SED "s?^# Required-Start.*?# Required-Start: \$local_fs \$network?g" /etc/init.d/mysqld
$SED "s?^# Required-Stop.*?# Required-Stop: $local_fs $network?g" /etc/init.d/mysqld
# On affecte le niveau de sécurité du système : type "fileserver"
$SED "s?BASE_LEVEL=.*?BASE_LEVEL=fileserver?g" /etc/security/msec/security.conf
# On supprime la vérification du mode promiscious des interfaces réseaux ( nombreuses alertes sur eth1 dûes à Tun0 )