| Line 1... | 
            Line 1... | 
          
          
            | 1 | 
            #!/bin/bash
  | 
            1 | 
            #!/bin/bash
  | 
          
          
            | 2 | 
            # $Id: alcasar-conf.sh 2324 2017-07-10 10:18:59Z tom.houdayer $
  | 
            2 | 
            # $Id: alcasar-conf.sh 2327 2017-07-10 22:29:15Z richard $
  | 
          
          
            | 3 | 
             
  | 
            3 | 
             
  | 
          
          
            | 4 | 
            # alcasar-conf.sh
  | 
            4 | 
            # alcasar-conf.sh
  | 
          
          
            | 5 | 
            # by REXY
  | 
            5 | 
            # by REXY
  | 
          
          
            | 6 | 
            # This script is distributed under the Gnu General Public License (GPL)
  | 
            6 | 
            # This script is distributed under the Gnu General Public License (GPL)
  | 
          
          
            | 7 | 
             
  | 
            7 | 
             
  | 
          
          
            | 8 | 
            # Ce script permet la mise à jour ALCASAR 
  | 
            8 | 
            # Ce script permet la mise à jour ALCASAR 
  | 
          
          
            | 9 | 
            #	- création de l'archive des fichiers de configuration dans "/tmp/alcasar-conf.tar.gz" (alcasar-conf.sh -create)
  | 
            9 | 
            #	- création de l'archive des fichiers de configuration dans "/tmp/alcasar-conf.tar.gz" (alcasar-conf.sh -create)
  | 
          
          
            | 10 | 
            #	- chargement de l'archive de fichiers de configuration lors de la mise à jour d'un alcasar (alcasar-conf -load)
  | 
            10 | 
            #	- chargement de l'archive de fichiers de configuration lors de la mise à jour d'un alcasar (alcasar-conf -load). Le cas échéant, c'est ici qu'on met à jour les fichiers entre versions 
  | 
          
          
            | 11 | 
            #	- application des directives du fichier de conf central "/usr/local/etc/alcasar.conf" lors d'un changement de conf réseau à chaud (alcasar-conf -apply) 
  | 
            11 | 
            #	- application des directives du fichier de conf central "/usr/local/etc/alcasar.conf" lors d'un changement de conf réseau à chaud (alcasar-conf -apply) 
  | 
          
          
            | 12 | 
            # This script allows ALCASAR update 
  | 
            12 | 
            # This script allows ALCASAR update 
  | 
          
          
            | 13 | 
            #	- create the configuration files backup "/tmp/alcasar-conf.tar.gz" (alcasar-conf.sh -create)
  | 
            13 | 
            #	- create the configuration files backup "/tmp/alcasar-conf.tar.gz" (alcasar-conf.sh -create)
  | 
          
          
            | 14 | 
            #	- load the backup of configuration files during the update process (alcasar-conf -load)
  | 
            14 | 
            #	- load the backup of configuration files during the update process (alcasar-conf -load). If needed, it's here we update files between versions
  | 
          
          
            | 15 | 
            #	- apply ALCASAR central configuration file "/usr/local/etc/alcasar.conf" when hot modification is needed (alcasar-conf -apply)
  | 
            15 | 
            #	- apply ALCASAR central configuration file "/usr/local/etc/alcasar.conf" when hot modification is needed (alcasar-conf -apply)
  | 
          
          
            | 16 | 
             
  | 
            16 | 
             
  | 
          
          
            | 17 | 
            new="$(date +%G%m%d-%Hh%M)"  				# date et heure des fichiers
  | 
            17 | 
            new="$(date +%G%m%d-%Hh%M)"  				# date et heure des fichiers
  | 
          
          
            | 18 | 
            fichier="alcasar-conf-$new.tar.gz"			# nom du fichier de sauvegarde
  | 
            18 | 
            fichier="alcasar-conf-$new.tar.gz"			# nom du fichier de sauvegarde
  | 
          
          
            | 19 | 
            DIR_UPDATE="/tmp/conf"					# répertoire de stockage des fichier de conf pour une mise à jour
  | 
            19 | 
            DIR_UPDATE="/tmp/conf"					# répertoire de stockage des fichier de conf pour une mise à jour
  | 
          
          
            | Line 153... | 
            Line 153... | 
          
          
            | 153 | 
            		&& chown root.root /etc/sysconfig/dnsmasq \
  | 
            153 | 
            		&& chown root.root /etc/sysconfig/dnsmasq \
  | 
          
          
            | 154 | 
            		&& chmod 644 /etc/sysconfig/dnsmasq
  | 
            154 | 
            		&& chmod 644 /etc/sysconfig/dnsmasq
  | 
          
          
            | 155 | 
            # admin profile update (admin + manager + backup)
  | 
            155 | 
            # admin profile update (admin + manager + backup)
  | 
          
          
            | 156 | 
            		$DIR_BIN/alcasar-profil.sh --list
  | 
            156 | 
            		$DIR_BIN/alcasar-profil.sh --list
  | 
          
          
            | 157 | 
            # Start / Stop SSH Daemon
  | 
            157 | 
            # Start / Stop SSH Daemon
  | 
          
          
            | 158 | 
            		ssh_active=`grep SSH= $CONF_FILE|cut -d"=" -f2`
  | 
            158 | 
            		ssh_active=`grep "^SSH=" $CONF_FILE|cut -d"=" -f2`
  | 
          
          
            | 159 | 
            		if [ $ssh_active = "on" ]
  | 
            159 | 
            		if [ $ssh_active = "on" ]
  | 
          
          
            | 160 | 
            		then
  | 
            160 | 
            		then
  | 
          
          
            | 161 | 
            			/usr/bin/systemctl -q enable sshd.service
  | 
            161 | 
            			/usr/bin/systemctl -q enable sshd.service
  | 
          
          
            | 162 | 
            		else
  | 
            162 | 
            		else
  | 
          
          
            | 163 | 
            			/usr/bin/systemctl -q disable sshd.service
  | 
            163 | 
            			/usr/bin/systemctl -q disable sshd.service
  | 
          
          
            | 164 | 
            		fi
  | 
            164 | 
            		fi
  | 
          
          
            | 165 | 
            # Remove the update folder
  | 
            165 | 
            # Remove the update folder
  | 
          
          
            | 166 | 
            		rm -rf $DIR_UPDATE
  | 
            166 | 
            		rm -rf $DIR_UPDATE
  | 
          
          
            | - | 
               | 
            167 | 
            # If needed : write modifications between version
  | 
          
          
            | - | 
               | 
            168 | 
            # V3.1.3
  | 
          
          
            | - | 
               | 
            169 | 
            	# add "HTTPS_LOGIN=on" in conf file
  | 
          
          
            | - | 
               | 
            170 | 
            		HTTPS_LOGIN=`grep -c "^HTTPS_LOGIN=" $CONF_FILE`
  | 
          
          
            | - | 
               | 
            171 | 
            		if [ $HTTPS_LOGIN != "1" ]
  | 
          
          
            | - | 
               | 
            172 | 
            		then
  | 
          
          
            | - | 
               | 
            173 | 
            			echo "HTTPS_LOGIN=on" >> $CONF_FILE
  | 
          
          
            | - | 
               | 
            174 | 
            		fi
  | 
          
          
            | 167 | 
            		;;
  | 
            175 | 
            		;;
  | 
          
          
            | 168 | 
            	--apply|-apply)
  | 
            176 | 
            	--apply|-apply)
  | 
          
          
            | 169 | 
            		PTN="\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\/([012]?[0-9]|3[0-2])\b"
  | 
            177 | 
            		PTN="\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\/([012]?[0-9]|3[0-2])\b"
  | 
          
          
            | 170 | 
            		PRIVATE_IP_MASK=`grep ^PRIVATE_IP $CONF_FILE|cut -d"=" -f2`
  | 
            178 | 
            		PRIVATE_IP_MASK=`grep ^PRIVATE_IP $CONF_FILE|cut -d"=" -f2`
  | 
          
          
            | 171 | 
            		check=$(echo $PRIVATE_IP_MASK | egrep $PTN)
  | 
            179 | 
            		check=$(echo $PRIVATE_IP_MASK | egrep $PTN)
  |