¿Cómo montar automáticamente un recurso compartido de red una vez que OpenVPN se ha conectado? (Usando Tunnelblick)

¿Alguien sabe cómo montar automáticamente un recurso compartido de red una vez que se ha conectado una conexión VPN usando Tunnelblick?

En este momento tengo que conectarme y luego hacer un cmd+K en el buscador para conectarme al recurso compartido AFP. Sería bueno que se conectara automáticamente.

El recurso compartido no tiene una contraseña (TimeCapsule sin ninguna contraseña, y no, no lo usamos para la copia de seguridad, lo usamos para un servidor de archivos).

Respuestas (2)

1.

Edite el archivo /Applications/Tunnelblick.app/Contents/Resources/client.up.osx.shy agregue estos comandos al final del archivo, justo antes de exit 0:

su USERNAME -c '
mkdir /Volumes/TimeCapsule
mount_afp afp://afp_username@server/volumename /Volumes/TimeCapsule
'
open /Volumes/TimeCapsule

Reemplace USERNAME con su nombre de usuario en el sistema.

2.

Luego agregue lo siguiente al final de /Applications/Tunnelblick.app/Contents/Resources/client.down.osx.sh:

umount /Volumes/TimeCapsule

3.

No olvide marcar la set nameserveropción correspondiente a su configuración:

nombre del servidor

Advertencia: los archivos de configuraciónclient.(up|down).osx.shse ejecutan para todas las conexiones realizadas mediante OpenVPN.

Esto también podría hacerse usando launchdpara ver si la conexión vpn está activa, pero no sé cómo usar launchd.

¿Olvidaste una línea? No funciona, y cuando coloco el código directamente en la Terminal, me pide mi contraseña. ¿Posiblemente es por eso que no se está ejecutando en el script up también? En realidad, eliminar la línea su (y su contraparte ' a continuación) tampoco funciona. Esperaría que al menos hiciera el directorio y posiblemente se conectara, pero no me permitiera acceder a la carpeta. (y sí, el servidor de nombres está marcado)
El sucomando se usa para hacerse pasar por alguien (tú en este caso). Ambos scripts se ejecutan como rooty no necesita una contraseña cuando se usa su, pero otro usuario la necesitará. Si el comando interno suno funciona solo, el problema viene de aquí. ¿Qué escribiste exactamente?
De acuerdo, no estaba seguro de que tunnelblick lo ejecutaría como root. Si tomo el comando dentro de su y lo coloco directamente en la terminal, funciona bien. Si elimino la parte su y solo tengo el comando en el script up, no pasa nada. # Generar un plist actualizado con la ruta adecuada DIR="$(dirname "${0}")" LEASE_WATCHER="${DIR}/LeaseWatch.plist" sed -e "s|\${DIR}|${DIR }|g" "${LEASE_WATCHER}.template" > "${LEASE_WATCHER}" launchctl load "${LEASE_WATCHER}" # autoconnect server2 mkdir /Volumes/Data mount_afp afp://192.168.2.2/Data /Volumes/Data open /Volúmenes/Datos salir 0

Acabo de montar NFS automáticamente después de conectar VPN y desmontar automáticamente antes de desconectarme con Tunnelblick (3.7.3 en macOS High Sierra).

Al principio, tuve el mismo problema con Cameron Conner. Aún así, la respuesta de Studer fue muy útil para mí.

En lugar del cliente de Studer .(arriba|abajo).osx.sh , coloqué dos líneas en el .ovpn:

up (path to your connected.sh)
down (path to your pre-disconnect.sh)

Luego cree y edite estos connected.sh y pre-disconnect.sh .

conectado.sh:

#!/bin/sh
sudo mkdir /Volumes/NFS
sudo mount -P 192.168.0.1:/share /Volumes/NFS

predesconexión.sh:

#!/bin/sh
sudo umount /Volumes/NFS

No sé sobre la manipulación de TimeCapsule. Entonces, el proceso anterior se trata de NFS. Creo que puedes arreglarlo para TimeCapsule.

Creo que el punto en el que Cameron y yo nos quedamos atascados fue su o sudo. Y, evitar la contraseña es otro problema. Mi solución a eso fue sudoers .

Edite /etc/sudores con visudo . Modifique la entrada %admin desde:

%admin ALL=(ALL) ALL

a:

%admin ALL=(ALL) NOPASSWD:ALL

A menos que su cuenta no sea un administrador, debería funcionar.