Benutzer-Werkzeuge

Webseiten-Werkzeuge


jessie_wlan

Netzwerkverbindungen auf NetworkManager umstellen

Die Netzwerkverbindungen sollten vom alten /etc/network/interfaces Script auf den modernen NetworkManager umgestellt werden. Der bietet auch auf der Kommandozeile mit dem Tool nmcli viel größere Flexibilität beim Umgang mit den Netzwerkverbindungen.

Zuerst werden die Programmpakete für den NetworkManager installiert. Dies geschieht mit

 sudo apt-get install network-manager.

Anschließend kommentiert man in der bisherigen Netzwerkkonfigurationsdatei /etc/network/interfaces bis auf das loopback Interface (lo) alle Einträge aus. Würde man das nicht tun, würde Debian beim Start weiterhin die Informationen dieser Konfig-Datei verwenden.

So sollte die Datei /etc/network/interfaces dann aussehen:

 auto lo
 iface lo inet loopback
 
 #auto eth0
 #iface eth0 inet dhcp
 
 #auto wlan0
 #allow-hotplug wlan0
 #iface wlan0 inet dhcp
 #wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
 
 #iface default inet dhcp

Mit nmcli eine neue LAN-Verbindung erstellen

Das Tool nmcli bedient sich am besten per sog. „tab completion“. D.h man beginnt einen Befehl und durch Tab wird er vervollständigt, oder er zeigt weitere Optionen an. So kann man sich den kompletten Befehl einfach „zusammenbauen“. Dafür installiert man das Paket bash-completion nach.

Als nächstes prüft man, ob der NetworkManager Daemon beim Booten automatisch gestartet wird (auf die Groß-/Kleinschreibung bei NetworkManager achten):

 $ sudo systemctl status NetworkManager
 
 ● NetworkManager.service - Network Manager
 Loaded: loaded (/lib/systemd/system/NetworkManager.service; enabled)
 Active: active (running) since Mo 2015-05-04 18:47:14 CEST; 1 day 1h ago
 Main PID: 368 (NetworkManager)
 CGroup: /system.slice/NetworkManager.service
 ├─ 368 /usr/sbin/NetworkManager --no-daemon
 └─14286 /sbin/dhclient -d -q -sf /usr/lib/NetworkManager/nm-dhcp-helper -pf /var/run/dhclient-wlan0.pid -lf /var/lib/Netw...

Mit systemctl enable/start/stop/restart NetworkManager lässt sich der Daemon steuern.

Das Kommandozeilen Tool nmcli hat schließlich folgende Hauptbereiche:

  • general – Zeigt Informationen zum generellen Status des NetworkManagers und Berechtigungen
  • networking – Zeigt oder setzt globale Netzwerkoptionen, oder aktiviert/deaktiviert das Netzwerk.
  • radio – Zeigt oder setzt globale Wireless Optionen bzw. de-/aktiviert WLAN
  • connection – Hier werden die Netzwerkverbindungen hinzugefügt, konfiguriert und gemanaged
  • device – Dient zum anzeigen und managen der physischen Netzwerk Interfaces

Der Status wird immer durch Ergänzen des Parameters „status“ oder „show“ abgefragt.

Zum Abfragen des aktuellen Netzwerk Status gibt man z.B. folgenden Befehl ein:

 nmcli general status

(oder die Kurzform: nmcli g s) Solange der Befehl eindeutig ist, können die Parameter auch abgekürzt werden, oder mit Tab komplettiert werden.

Die Eingabe von nmcli c s schließlich dürfte noch keinerlei Einträge zu Tage fördern.

Beim nächsten Reboot wird jedoch automatisch die kabelgebundene Netzwerkverbindung (eth0) vom NetworkManager definiert und aktiviert.

Will man zusätzlich noch manuell eine weitere Kabelverbindung hinzufügen, hangelt man sich mit der Tab Completion durch den folgenden Befehl:

 sudo nmcli connection add autoconnect yes con-name <frei wählbar> ifname <per Tab auswählbar> type ethernet save yes

Damit wird eine DHCP Connection eingerichtet. Soll dagegen eine statische IP-Adresse verwendet werden ergänzt man den Befehl noch um

 ip4 <xx.xx.xx.xx/24> gw4 <xx.xx.xx.xx>

Fertig ist die Netzwerkverbindung.

Nmcli c s eth0 zeigt im Detail alle manuell gesetzten und alle Standard Parameter.

Mit nmcli con modify eth0 können noch viele weitere Optionen verändert werden. Z.B. kann hier noch explizit für eine Netzwerkverbindung der DNS-Server (ipv4.dns) und die DNS-Search Domain (ipv4.dsn-search) festgelegt werden, oder spezielle Routing-Einträge vorgenommen werden (ipv4.routes).

Den globalen DNS-Server trägt der NetworkManager übrigens automatisch in die Datei /etc/resolv.conf ein (erkennbar an dem Zusatz: #Generated by NetworkManager)

Hinzufügen einer Wi-Fi Verbindung

Zum Anzeigen der verfügbaren Wi-Fi access points, gibt man folgenden Befehl ein:

 nmcli dev wifi list
 SSID MODE CHAN RATE SIGNAL BARS SECURITY
 MyWLAN Infra 11 54 MB/s 39 ▂▄__ WPA2

Das Erstellen eines WLAN Profils mit statischer IP Konfiguration, aber automatischer Ergänzung der DNS Adresse, erledigt folgender Befehl:

 sudo nmcli con add con-name MyWLAN ifname wlan0 type wifi ssid MyWLAN \ip4 192.168.100.101/24 gw4 192.168.100.1

Will man stattdessen wieder eine DHCP Adresse für das WLAN Profil, lässt man einfach die Parameter ip4 und gw4 weg. Zum setzen eines WPA2 Passwortes, zum Beispiel „test123“, führt man folgende Befehle aus:

 sudo nmcli con modify MyWLAN wifi-sec.key-mgmt wpa-psk
 sudo nmcli con modify MyWLAN wifi-sec.psk test123

Im „Red Hat Enterprise Linux 7 Security Guide“ kann man übrigens mehr zur Passwort Sicherheit nachlesen.

Zum Schluss muss man die WLAN Verbindung noch aktivieren mit:

 sudo nmcli -p con up 'MyWLAN' ifname wlan0

Folgender Befehl schaltet das WLAN komplett aus und wieder ein:

 sudo nmcli radio wifi [on | off ]

Um einen bestimmten Parameter z.B. mtu zu prüfen, verwendet man folgenden Befehl:

 nmcli connection show id 'MyWLAN' | grep mtu802-11-wireless.mtu: auto

Und zum Ändern des Parameters führt man dann folgenden Befehl aus:

 sudo nmcli connection modify id 'MyWLAN' 802-11-wireless.mtu 1350

Anschließend kann man die Konfigurationsänderung wie folgt überprüfen:

 nmcli connection show id 'MyWLAN' | grep mtu802-11-wireless.mtu: 1350

Somit hat man die Basis geschaffen für ein modernes Debian System mit dem RaspberryPi.

Viel Spaß damit.

jessie_wlan.txt · Zuletzt geändert: 2017/10/16 23:43 von 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki