Configurazione di una linea di backup isdn manuale: Difference between revisions

From RVM Wiki
Jump to navigation Jump to search
mNo edit summary
Line 119: Line 119:
== Preparazione interfaccia di attivazione ==
== Preparazione interfaccia di attivazione ==


Creare la shell per l'utente backup-analogico:
Creare la shell per l'utente backup-isdn (attenzione, eliminare il comando relativo se non si usa il multilink):


<pre>
<pre>
Line 137: Line 137:
         sudo /etc/init.d/isdnutils start > /dev/null 2>&1
         sudo /etc/init.d/isdnutils start > /dev/null 2>&1
         sudo isdnctrl dial ippp0 > /dev/null 2>&1
         sudo isdnctrl dial ippp0 > /dev/null 2>&1
        # solo se si usa il doppio canale
        sudo isdnctrl addlink ippp0 > /dev/null 2>&1
         echo "================================================================================"
         echo "================================================================================"
         echo "=                      LINEA DI BACKUP ISDN ATTIVATA                          ="
         echo "=                      LINEA DI BACKUP ISDN ATTIVATA                          ="
Line 142: Line 144:
         echo "================================================================================"
         echo "================================================================================"
         read -n1
         read -n1
        # solo se si usa il doppio canale
        sudo isdnctrl removelink ippp0 > /dev/null 2>&1
         sudo isdnctrl hangup ippp0 > /dev/null 2>&1
         sudo isdnctrl hangup ippp0 > /dev/null 2>&1
         sudo /etc/init.d/isdnutils stop > /dev/null 2>&1
         sudo /etc/init.d/isdnutils stop > /dev/null 2>&1

Revision as of 17:09, 8 August 2006

Predisposizione della connessione

Seguire la guida di configurazione per la connessione ISDN, ed assicurarsi che funzioni.

Preparazione degli script ppp-up/down

Creare il file /etc/ppp/ip-up.d/05-sendipaddress

cat > /etc/ppp/ip-up.d/05-sendipaddress <<'EOFile'
#!/bin/sh -e
COUNT="0"
while [ "$COUNT" -lt "5" ]
do
        if wget assistenza.rvmgroup.it --quiet -O /tmp/05-sendipaddress; then
                mail -s "IP $HOSTNAME" gal-alert@rvmgroup.it < /tmp/05-sendipaddress
                COUNT="5"
        else
                COUNT=$(($COUNT+1))
        fi
done
EOFile
chmod 755 /etc/ppp/ip-up.d/05-sendipaddress

Creare il profilo firewall per la connessione ppp impostando le regole desiderate (necessita di iptables-initd_1.0.0-4):

/etc/iptables-init.d/start.ippp0

Creare il file di restart del firewall:

cat > /etc/ppp/ip-up.d/02-firewall <<'EOFile'
#!/bin/sh -e
/etc/init.d/firewall restart $PPP_IFACE
EOFile
chmod 755 /etc/ppp/ip-up.d/02-firewall

cat > /etc/ppp/ip-down.d/02-firewall <<EOFile
#!/bin/sh -e
/etc/init.d/firewall restart
EOFile
chmod 755 /etc/ppp/ip-down.d/02-firewall

Creare il file di restart per ssh:

cat > /etc/ppp/ip-up.d/03-ssh <<EOFile
#!/bin/sh -e
/etc/init.d/ssh stop
/etc/init.d/ssh start
EOFile
chmod 755 /etc/ppp/ip-up.d/03-ssh

cat > /etc/ppp/ip-down.d/03-ssh <<EOFile
#!/bin/sh -e
/etc/init.d/ssh stop
/etc/init.d/ssh start
EOFile
chmod 755 /etc/ppp/ip-down.d/03-ssh

Assicurarsi che openvpn su questa macchina:

  • non abbia una direttiva "local"
  • abbia la direttiva: "keepalive 30 61"

Dal lato opposto verificare che openvpn non abbia la direttiva "remote"


NON SERVE

Creare il file di restart OpenVPN:

cat > /etc/ppp/ip-up.d/04-openvpn <<EOFile
#!/bin/sh -e
/etc/init.d/openvpn stop
/etc/init.d/openvpn start
EOFile
chmod 755 /etc/ppp/ip-up.d/04-openvpn

cat > /etc/ppp/ip-down.d/04-openvpn <<EOFile
#!/bin/sh -e
/etc/init.d/openvpn stop
/etc/init.d/openvpn start
EOFile
chmod 755 /etc/ppp/ip-down.d/04-openvpn

NON SERVE


Abilitare il logging ip-up-down:

touch /var/log/ppp-ipupdown.log

E' possibile osservare l'esecuzione degli script con

tail -f /var/log/ppp-ipupdown.log

Disabilitazione della gestione DNS

Se la macchina usa un nameserver locale configurato in /etc/resolv.conf, commentare in /etc/isdn/ipppd.ippp0:

#ms-get-dns

Collegamento

Provare ora a fare

sudo /etc/init.d/isdnutils start
sudo isdnctrl dial ippp0

e vedere se si connette e avvia correttamente gli script.

Il collegamento dovrebbe permettere la stessa operatività.

Preparazione interfaccia di attivazione

Creare la shell per l'utente backup-isdn (attenzione, eliminare il comando relativo se non si usa il multilink):

cat >/usr/local/bin/backup-analogico <<'EOFile'
#!/bin/bash
clear
echo "================================================================================"
echo "=                     ATTIVAZIONE LINEA DI BACKUP ISDN                         ="
echo "================================================================================"
echo -e "\n"
echo -e "\n"
echo -e "\n"
echo -e "\n"
read -n1 -p"Attivare la linea di backup isdn (s/n) ? " RISP
echo -e "\n"
if [[ ("$RISP" == "s" || "$RISP" == "S") ]]; then
        sudo /etc/init.d/isdnutils start > /dev/null 2>&1
        sudo isdnctrl dial ippp0 > /dev/null 2>&1
        # solo se si usa il doppio canale
        sudo isdnctrl addlink ippp0 > /dev/null 2>&1
        echo "================================================================================"
        echo "=                       LINEA DI BACKUP ISDN ATTIVATA                          ="
        echo "=                     PREMERE UN TASTO PER DISATTIVARLA                        ="
        echo "================================================================================"
        read -n1
        # solo se si usa il doppio canale
        sudo isdnctrl removelink ippp0 > /dev/null 2>&1
        sudo isdnctrl hangup ippp0 > /dev/null 2>&1
        sudo /etc/init.d/isdnutils stop > /dev/null 2>&1
        echo Linea di backup isdn DISATTIVATA.
        exit
else
        echo Linea di backup isdn NON ATTIVATA.
fi
EOFile
sudo chown root\: /usr/local/bin/backup-isdn
sudo chmod 755 /usr/local/bin/backup-isdn

Dichiaralo come shell valida

echo "/usr/local/bin/backup-isdn" >> /etc/shells

Creare l'utente backup-isdn ed assegnargli questa shell

sudo adduser --shell /usr/local/bin/backup-isdn backup-isdn

Definire l'alias con visudo:

Cmnd_Alias LINEE_BACKUP = /etc/init.d/isdnutils, /usr/sbin/isdnctrl

Assegnarlo all'utente:

backup-isdn        ALL=NOPASSWD:LINEE_BACKUP

Ora ci si può loggare da console come backu-isdn ed attivare/disattivare la linea.