Un firewall simple con enmascaramiento

/etc/ppp/masquerade (root:root:500)

Enmascarando la red interna


# Enmascarado de la red interna

echo -n "Masquerading.."

# Si el paquete viene de la red interna y su destino es la red interna,
# no necesita ser enmascarado.

$IPCHAINS -A forward -s $INTERNALNET -d $INTERNALNET -j ACCEPT
echo -n "."

# Si el paquete esta saliendo directamente hacia el exterior,
# no necesita ser enmascarado.

$IPCHAINS -A forward -s $LOCALNET -d $REMOTENET -j ACCEPT 
echo -n "."

# Cualquier paquete proveniente de la red interna hacia el exterior
# necesita ser enmascarado.

$IPCHAINS -A forward -s $INTERNALNET -d $REMOTENET -j MASQ

# Para un control detallado, puede comentarse la linea anterior y
# agregar tantas lineas como sea necesario para permitir el acceso
# solamente a un subconjunto de nodos internos, bien utilizando una o
# mas definiciones de subredes, bien utilizando direcciones especificas
# de nodos.
# $IPCHAINS -A forward -s 192.168.0.3 -d $REMOTENET -j MASQ

echo -n "."

# Cualquier otro paquete es negado.
$IPCHAINS -P forward DENY
echo -n "."

# Permitimos las conexiones desde el interior hacia el exterior.

$IPCHAINS -A input -s $INTERNALNET -d $REMOTENET -j ACCEPT   
$IPCHAINS -A output -s $INTERNALNET -d $REMOTENET -j ACCEPT
echo -n ".."

echo "Done!"