Configurazione di una linea di backup analogica manuale: Difference between revisions
Rimosso openvpn e tolto -e dallo #! |
|||
| Line 72: | Line 72: | ||
Dal lato opposto verificare che openvpn '''non''' abbia la direttiva "'''remote'''" | Dal lato opposto verificare che openvpn '''non''' abbia la direttiva "'''remote'''" | ||
==Modifiche | ==Modifiche Opsioni di connessione pppd== | ||
Abilitare il logging ip-up-down: | Abilitare il logging ip-up-down: | ||
| Line 78: | Line 78: | ||
touch /var/log/ppp-ipupdown.log | touch /var/log/ppp-ipupdown.log | ||
Sostituire le opzioni di collegamento con queste: | |||
<pre> | |||
cat | sudo tee /etc/ppp/peers/libero > /dev/null <<EOFile | |||
# This optionfile was generated by pppconfig 2.3.10. | |||
# | |||
# | |||
hide-password | |||
noauth | |||
connect "/usr/sbin/chat -v -f /etc/chatscripts/libero" | |||
debug | |||
/dev/ttyS0 | |||
115200 | |||
defaultroute | |||
noipdefault | |||
user "srgalimberti@libero.it" | |||
remotename libero | |||
replacedefaultroute | |||
persist | |||
maxfail 0 | |||
EOFile | |||
</pre> | |||
In pratica: | |||
* Abilitare la sostituzione della default route nella connessione: replacedefaultroute | |||
* In caso di caduta della linea, ricomporre: persist | |||
* Ricomporre un umero infinito di volte: maxfail 0 | |||
'''ATTENZIONE:''' a causa di un bug nella versione 2.4.3-20050321+2sarge1 ([http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=374698 #374698]) se la linea cade, muore anche pppd, e non avviene la ricomposizione. | |||
==Test collegamento e script== | ==Test collegamento e script== | ||
Revision as of 09:34, 5 February 2007
Predisposizione della connessione
Creare una connessione ppp con ppp-config chiamata "libero" SENZA GESTIONE DEI DNS e testarla.
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.ppp0
Creare il file di restart del firewall:
cat > /etc/ppp/ip-up.d/02-firewall <<'EOFile' #!/bin/bash /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/bash /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/bash /etc/init.d/ssh stop /etc/init.d/ssh start EOFile chmod 755 /etc/ppp/ip-down.d/03-ssh
Verifica della Configurazione di OpenVPN
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"
Modifiche Opsioni di connessione pppd
Abilitare il logging ip-up-down:
touch /var/log/ppp-ipupdown.log
Sostituire le opzioni di collegamento con queste:
cat | sudo tee /etc/ppp/peers/libero > /dev/null <<EOFile # This optionfile was generated by pppconfig 2.3.10. # # hide-password noauth connect "/usr/sbin/chat -v -f /etc/chatscripts/libero" debug /dev/ttyS0 115200 defaultroute noipdefault user "srgalimberti@libero.it" remotename libero replacedefaultroute persist maxfail 0 EOFile
In pratica:
- Abilitare la sostituzione della default route nella connessione: replacedefaultroute
- In caso di caduta della linea, ricomporre: persist
- Ricomporre un umero infinito di volte: maxfail 0
ATTENZIONE: a causa di un bug nella versione 2.4.3-20050321+2sarge1 (#374698) se la linea cade, muore anche pppd, e non avviene la ricomposizione.
Test collegamento e script
Provare ora a fare
pon libero
e vedere se si connette e avvia correttamente gli script:
sudo tail -f /var/log/ppp-ipupdown.log
Il collegamento dovrebbe permettere la stessa operatività.
Preparazione interfaccia di attivazione
Creare la shell per l'utente backup-analogico.
ATTENZIONE: vedi i reminder per lo stesso script backup-isdn.
cat >/usr/local/bin/backup-analogico <<'EOFile'
#!/bin/bash
clear
echo "================================================================================"
echo "= ATTIVAZIONE LINEA DI BACKUP ANALOGICA ="
echo "================================================================================"
echo -e "\n"
echo -e "\n"
echo -e "\n"
echo -e "\n"
read -n1 -p"Attivare la linea di backup analogica (s/n) ? " RISP
echo -e "\n"
if [[ ("$RISP" == "s" || "$RISP" == "S") ]]; then
sudo /sbin/ifdown eth1 > /dev/null 2>&1
sudo pon libero
echo "================================================================================"
echo "= LINEA DI BACKUP ANALOGICA ATTIVATA ="
echo "= PREMERE UN TASTO PER DISATTIVARLA ="
echo "================================================================================"
read -n1
sudo poff libero
sudo /sbin/ifup eth1 > /dev/null 2>&1
echo Linea di backup analogica DISATTIVATA.
exit
else
echo Linea di backup analogica NON ATTIVATA.
exit
fi
EOFile
sudo chown root\: /usr/local/bin/backup-analogico
sudo chmod 755 /usr/local/bin/backup-analogico
Dichiaralo come shell valida
echo "/usr/local/bin/backup-analogico" >> /etc/shells
Creare l'utente backup-analogico ed assegnargli questa shell
sudo adduser --shell /usr/local/bin/backup-analogico backup-analogico
Definire l'alias con visudo:
Cmnd_Alias LINEE_BACKUP = /sbin/ifdown, \
/sbin/ifup, \
/usr/bin/pon libero, \
/usr/bin/poff libero
Assegnarlo all'utente:
backup-analogico ALL=NOPASSWD:LINEE_BACKUP
Ora ci si può loggare da console come backup-analogico ed attivare/disattivare la linea.