Revision: 1831
Updated Code
at November 9, 2006 23:57 by whitetiger
Updated Code
#!/bin/sh
case $1 in
"start")
if [ "$UID" = 0 ]; then
### Tools usati
IFCONFIG=`which ifconfig`
GREP=`which grep`
AWK=`which awk`
echo "Selezionare l'interfaccia con cui effettuare il NAT: "
select I in `$IFCONFIG | $GREP -i -e "Link" | $AWK '{ print $1 }'`
do
INTERFACE=$I
break
done
### Tools usati
MODPROBE=`which modprobe`
IPTABLES=`which iptables`
# Inserisce il modulo per il Masquerade
$MODPROBE ipt_MASQUERADE
$IPTABLES -F # Effettua il flush di tutti i chain
$IPTABLES -t nat -F # Effettua il flush della tabella di NAT
$IPTABLES -t mangle -F # Effettua il flush della mangle
$IPTABLES -t nat -A POSTROUTING -o $INTERFACE -j MASQUERADE # Effettua il routing nella rete interna
# Abilità il Forward
echo 1 > /proc/sys/net/ipv4/ip_forward
echo
echo "NAT avviato sull'interfaccia: $INTERFACE"
else
echo
echo "Non e' possibile effettuare il NAT se non sei Root..."
fi
;;
"stop")
if [ "$UID" = 0 ]; then
### Tools usati
IPTABLES=`which iptables`
$IPTABLES -F # Effettua il flush di tutti i chain
$IPTABLES -t nat -F # Effettua il flush della tabella di NAT
$IPTABLES -t mangle -F # Effettua il flush della mangle
echo 0 > /proc/sys/net/ipv4/ip_forward
echo
echo "NAT stoppato sull'interfaccia di rete..."
else
echo
echo "Non e' possibile rimuovere il NAT, non sei Root..."
fi
;;
*)
echo
echo "Sintassi: $0 { start | stop }"
;;
esac
Revision: 1830
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at November 9, 2006 23:55 by whitetiger
Initial Code
#!/bin/sh
case $1 in
"start")
if [ "$UID" = 0 ]; then
### Tools usati
IFCONFIG=`which ifconfig`
GREP=`which grep`
AWK=`which awk`
echo "Selezionare l'interfaccia con cui effettuare il NAT: "
select I in `$IFCONFIG | $GREP -i -e "Link" | $AWK '{ print $1 }'`
do
INTERFACE=$I
break
done
### Tools usati
MODPROBE=`which modprobe`
IPTABLES=`which iptables`
# Inserisce il modulo per il Masquerade
$MODPROBE ipt_MASQUERADE
$IPTABLES -F # Effettua il flush di tutti i chain
$IPTABLES -t nat -F # Effettua il flush della tabella di NAT
$IPTABLES -t mangle -F # Effettua il flush della mangle
$IPTABLES -t nat -A POSTROUTING -o $INTERFACE -j MASQUERADE # Effettua il routing nella rete interna
# Abilità il Forward
echo 1 > /proc/sys/net/ipv4/ip_forward
echo
echo "NAT avviato sull'interfaccia: $INTERFACE"
else
echo
echo "Non e' possibile effettuare il NAT se non sei Root..."
fi
;;
"stop")
if [ "$UID" = 0 ]; then
### Tools usati
IPTABLES=`which iptables`
$IPTABLES -F # Effettua il flush di tutti i chain
$IPTABLES -t nat -F # Effettua il flush della tabella di NAT
$IPTABLES -t mangle -F # Effettua il flush della mangle
echo 0 > /proc/sys/net/ipv4/ip_forward
echo
echo "NAT stoppato sull'interfaccia di rete..."
else
echo
echo "Non e' possibile rimuovere il NAT, non sei Root..."
fi
;;
*)
echo
echo "Sintassi: $0 { start | stop }"
;;
esac
Initial URL
Initial Description
Initial Title
Bash - Abilitare il NAT
Initial Tags
Bash, unix, osx, linux, ssh, perl
Initial Language
Bash