(Modificado para mayor claridad, 11/11/13) Dos preguntas distintas, justo antes de la tabla de rutas.
Sé que esto ha sido cubierto. He leído docenas de publicaciones pero todavía tengo preguntas.
Tengo un servidor de trabajo cuyo tráfico nunca debería salir de mi casa sin cifrado. La VPN es PPTP. Actualmente tengo un trabajo cron que verifica el estado del adaptador ppp0 cada minuto. Si la conexión se cae, lo que ocurre con bastante frecuencia, se apagan los componentes clave.
Es bastante fácil reiniciar PPTP con "nmcli con up id 'myVPNServer'", pero no hay seguridad de que se vuelva a conectar y necesito una mejor manera de detener el tráfico (aparte de eliminar aplicaciones) cuando ppp0 está inactivo.
Las dos opciones que he visto discutidas son el firewall (UFW, Firestarter, IPTables) o las tablas de rutas. Podría dejarme convencer fácilmente para considerar la opción de firewall, pero me concentré en las tablas de rutas ya que no es necesario iniciar ninguna función nueva.
Mis preguntas tienen que ver con la forma en que cambian las tablas de rutas y luego con detalles sobre las reglas.
Cuando inicio la VPN PPTP, las tablas de rutas cambian. Eso sugiere que si la VPN cae, la tabla volverá a cambiar, frustrando mi intención declarada de evitar el tráfico externo. ¿Cómo puedo realizar cambios "fijos" en la tabla de rutas que persistirán incluso si se interrumpe la conexión VPN? ¿Quizás las casillas de verificación "Ignorar rutas obtenidas automáticamente" o "Usar esta conexión sólo para recursos en su red" (que forman parte de las opciones de configuración de VPN)?
Parecería que, si puedo forzar que la tabla de rutas VPN activa permanezca vigente, incluso cuando la VPN cae, esto efectivamente eliminará cualquier tráfico externo en caso de que la VPN caiga. Esto me dará la libertad de ejecutar una rutina para reiniciar la VPN desde la línea de comando (suponiendo que las reglas de la tabla de rutas no me impidan restablecer la conexión).
Mi tabla de rutas, con la VPN activa es (lista de rutas ip):
¿Qué proceso es modificar la tabla de rutas (cuando inicio la VPN)?
¿Algún comentario sobre qué es 10.10.1.1?
$ ip route list
default dev ppp0 proto static
10.10.1.1 dev ppp0 proto kernel scope link src 10.10.1.11
VPN_Server_IP_Address via 192.168.1.1 dev eth0 proto static
VPN_Server_IP_Address via 192.168.1.1 dev eth0 src 192.168.1.60
169.254.0.0/16 dev eth0 scope link metric 1000
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.60 metric 1
Respuesta1
Espero que la configuración de ejemplo pueda darle una idea para otro enfoque. Por ejemplo: ejecute scripts para hacer lo que quiera en los eventos ppp0 "arriba\abajo...". Puede utilizar el script previo a la caída para detener todos sus servicios, bloquear todo el tráfico en el firewall y vaciar la tabla de enrutamiento.
zcat /usr/share/doc/ifupdown/examples/network-interfaces.gz | less
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)
##...
# The "pre-up", "up", "down" and "post-down" options are valid for all
# interfaces, and may be specified multiple times. All other options
# may only be specified once.
Supongo que es el NetworkManager
que está modificando su tabla de enrutamiento. Los archivos de configuración para el NetworkManager
se pueden encontrar en/etc/NetworkManager/*
Agregue lo siguiente en [ipv4] para su conexión (pptp):
ignore-auto-routes=true
ignore-auto-dns=true
Supongo que necesitas reiniciar la conexión pptp para que se active. ¿Trabajó?