Est-il possible de monter automatiquement un FS distant à l'aide de sshfs lors de l'instanciation d'une connexion VPN appropriée?
Permettez-moi d’expliquer le scénario. Je travaille à distance. Pour ce faire, je peux monter mon répertoire personnel à partir d’un serveur situé au bureau. Pour ce faire, je dois utiliser un vpn. Ainsi, dans le gestionnaire de réseau, je sélectionne le VPN approprié et me connecte. Il se connecte mais je dois maintenant passer à la ligne de commande et monter mon répertoire personnel sur plusieurs machines.
Si j'oublie de faire une machine, mon environnement de développement local n'est pas aussi efficace. Je suppose que je pourrais écrire un script bash rapide pour le faire, mais je préférerais qu'il s'exécute automatiquement lorsque je me connecte.
Trouvez l'UUID de votre connexion en utilisant
$ nmcli con
Notez que cela répertorie non seulement les connexions physiques, mais également les connexions sans fil définies (SSID).
Mettez un script simple comme celui-ci dans votre répertoire /etc/NetworkManager/dispatcher.d/
:
#!/bin/bash
# Specify your connection UUID you like to trigger on below.
MYCON_UUID=397bdb70-2a89-415e-b3e9-09ca0b704fc1
if [ "$CONNECTION_UUID" == "$MYCON_UUID" ]
then
# do your scripting you need to do here:
mount -t sshfs ...
fi
N'oubliez pas de définir les bonnes autorisations pour le rendre échangeable (c'est-à-dire chmod +x trigger-sshfs-on-vpn.sh
). Il peut s'agir de n'importe quel type de script, un script Bash suffit probablement à vos besoins.
NetworkManager exécute simplement tous les scripts de ce répertoire en fournissant des variables d'environnement que vous pouvez utiliser pour les scripts. Dans ce cas, vous avez probablement juste besoin de CONNECTION_UUID
.
Utilisez autofs.
Autofs montera automatiquement un dossier configuré en tant que point de montage lorsque quelqu'un ou quelque chose y accède sur votre système.
Le point de montage peut être un hôte distant via sshfs ainsi qu'un autre point de montage arbitraire tel que:
voici un Nice howto