A NetworkManager rendszerszolgáltatás Ubuntu rendszeren lehetővé teszi az eseményekhez kötött szkriptek futtatását a hálózati állapot változásai kapcsán. Ezek a szkriptek, amikor helyesen vannak telepítve és konfigurálva, automatikusan lefutnak bizonyos hálózati események, mint például a VPN kapcsolódás vagy szétkapcsolódás esetén.

Működési Elv

A /etc/NetworkManager/dispatcher.d/ könyvtárban elhelyezett szkripteket a NetworkManager automatikusan meghívja, amikor a hálózati interfészek állapota változik. Minden szkriptnek két paramétert ad át a NetworkManager:

  1. $1 – Interfész neve: Ez az azonosítója annak a hálózati interfésznek, amely az eseményt kiváltotta, például eth0, wlan0, vagy tun0 a VPN esetében.
  2. $2 – Az interfész állapota: Ez lehet up, down, pre-up, post-down, stb. Ezek az állapotok jelzik, hogy mi történik az interfésszel (például csatlakozik, szétkapcsolódik, stb.).

Lépések

  1. Fstab beállítások: Ellenőrizze, hogy a /etc/fstab fájlban helyesen vannak-e konfigurálva a hálózati meghajtók. Itt meg kell adnia a megfelelő hálózati útvonalakat és opciókat.

  2. VPN kapcsolat kezelése: A VPN kapcsolatok kezelésére a NetworkManager használható, amely támogatja az eseményekhez kötött szkriptek futtatását.

  3. Szkript készítése: Készítsen egy bash szkriptet, amely a VPN csatlakozás után automatikusan csatolja a hálózati meghajtókat. Ezt a szkriptet helyezze el a /etc/NetworkManager/dispatcher.d/ könyvtárban.

Példa szkript

Íme egy egyszerű bash szkript, amely a VPN csatlakozáskor ellenőrzi, hogy a hálózati meghajtó csatlakoztatva van-e, és ha nem, akkor csatlakoztatja azt.


#!/bin/bash

 

INTERFACE=$1 # Az interfész neve, pl. tun0 a VPN-hez

STATUS=$2 # Az interfész állapota, pl. "up"

 

if [[ "$INTERFACE" == "tun0" && "$STATUS" == "up" ]]; then # Ellenőrizzük, hogy a meghajtó már csatlakoztatva van-e

if ! mount | grep -q '/mnt/my_network_drive'; then # Csatlakoztassa a hálózati meghajtó

mount -a

fi

fi


  • Mentse ezt a szkriptet, például mount_vpn.sh néven a /etc/NetworkManager/dispatcher.d/ könyvtárba.
  • Állítsa be a szkript futtatási jogosultságait:
    sudo chmod +x /etc/NetworkManager/dispatcher.d/mount_vpn.sh
  • Tesztelje a szkriptet, hogy helyesen működik-e a VPN csatlakoztatása után.

 

Szkript Futtatásának Logikája

Amikor például a VPN interfész (tun0) állapota up-ra változik (ami azt jelenti, hogy a VPN kapcsolat aktív lett), a NetworkManager meghívja az összes szkriptet a /etc/NetworkManager/dispatcher.d/ könyvtárban az alábbi paraméterekkel: tun0 up.

A vpn_mount_drives.sh szkriptünk így ellenőrizni fogja az átadott interfész nevét és állapotát, és ha azok megfelelnek a feltételeknek (azaz a tun0 interfész up állapotban van), akkor lefut a csatlakoztatási parancsok sorozata.

Fontos Megjegyzések

  • A szkriptek futtatási jogosultságokkal kell rendelkezniük (chmod +x).
  • A szkriptek futtatásához rendszergazda jogosultságok szükségesek, mivel a hálózati interfészek állapotának kezelése és a fájlrendszerek csatlakoztatása adminisztratív műveletek.
  • Az ilyen típusú automatizálásoknál figyelni kell arra, hogy a szkriptek milyen eseményekre reagálnak, és hogy a logika pontosan megfelel-e a kívánt működésnek.

Ez a rendszer nagyon rugalmas, lehetővé téve, hogy a felhasználók testre szabhassák hálózati események kezelését saját igényeiknek megfelelően.

 

 

Kategória: Ubuntu

Látogatók

243213
Ma29
Tegnap71
Ezen a héten314
Ebben a hónapban1122
Összesen243213
Statistik created: 2024-07-19T16:02:44+02:00
Bejelentkezett felhasználók 0
Regisztrált felhasználók 1
Ma regisztráltak 0