Dieses Dokuwiki verwendet ein von Anymorphic Webdesign erstelltes Thema.

Tipps zum Netzwerk


Netzwerk in Datei interfaces einstellen

Das suche ich immer wieder:

Feste IP in Datei /etc/network/interfaces einstellen:

allow-hotplug eth0
iface eth0 inet static
        address 192.168.178.19
        netmask 255.255.255.0
        gateway 192.168.178.1
        dns-nameservers 192.168.178.1
        network 192.168.178.0
        broadcast 192.168.178.255

Hinweis: Für das Setzen des dns-nameservers ist das Paket resolvconf notwendig.

Will man nach dem Start des Interfaces noch was tun, dann das noch dazu bauen:

        up /sbin/ip route add 192.168.2.0/24 dev eth1

DHCP IP in Datei /etc/network/interfaces einstellen:

allow-hotplug eth1
iface eth1 inet dhcp

Bei IPv6 geht das so:

allow-hotplug eth1
iface eth1 inet6 static
address 2001:xxxx:xxxx:x::1
netmask 64
up /sbin/ip route add 2001:xxxx:xxxx:x::/64 dev eth1

Beispiel einer interfaces Datei mit VLAN und Bridge für einen Router

auto lo
iface lo inet loopback
allow-hotplug eth1
iface eth1 inet dhcp
auto eth1.178
iface eth1.178 inet static
  vlan-raw-device eth1
auto eth0
auto br0
iface br0 inet static
  address 192.168.178.19
  netmask 255.255.255.0
  bridge_ports eth0 eth1.178

# für weiter IP auf der Brücke

auto br0:1
iface br0:1 inet static
  address 192.168.178.1
  netmask 255.255.255.0

# für IPV6 iface br0 inet6 static address 2001:4dd0:fd74:1::1 netmask 64 up /sbin/ip route add 2001:4dd0:fd74:1::/64 dev br0


WLAN aktivieren via /etc/network/interfaces

Um die WLAN Schnittstelle automatisch nach dem Booten zur starten, muss folgendes in die Interfaces Datei (bei Ubuntu/Debian/und ähnliche Linuxe) geschrieben werden:

auto wlan0
iface wlan0 inet dhcp
    wpa-conf /etc/network/wlan.conf

Laut einem Forumseintrag soll das auch gehen:

auto wlan0 
iface wlan0 inet dhcp
    wpa-driver wext
    wpa-ssid MeineSSID
    wpa-ap-scan 1
    wpa-proto RSN
    wpa-pairwise CCMP
    wpa-group CCMP
    wpa-key-mgmt WPA-PSK
    wpa-psk "swordfish"

oder bei fester IP

auto wlan0
iface wlan0 inet static
    address 192.168.177.200
    network 192.168.177.0
    netmask 255.255.255.0
    wpa-conf /etc/network/wlan.conf

In der angegebene wlan.conf Datei ist dann das WLAN definiert

network={
      ssid="wlan"
      proto=RSN
      key_mgmt=WPA-PSK
      pairwise=CCMP TKIP
      group=CCMP TKIP
      psk="geheim"
}

—-

ETH-zu-WLAN-Router

Mal angenommen man sitzt so beim LUG-Treffen und alle surfen über WLAN. Alle bis auf einen, bei dem kein WLAN vorhanden ist. Damit dieser aber nicht im Dunkeln bleibt, verbindet man ihn per Crossover-Netzwerkkabel mit einem WLAN-Rechner und funktioniert diesen zum Router um. Im Bild könnte das so aussehen:

+---------------+ W     +-----------+         +-------------+
|  DSL Router   |  \    | Rechner 1 |  Cross  |  Rechner 2  | 
|IP: 192.168.1.1|___L___|192.168.1.2|__Over___|             |
+---------------+    A  |192.168.9.1|  Kabel  | 192.168.9.2 |
                      N +-----------+         +-------------+

Nun muss beim WLAN-Rechner das Netzwerk und die IP-Tables Firewall konfiguriert werden und beim Rechner 2 das Netzwerk entsprechend. (Wir gehen hier von einer bereits funktionierenden WLAN Verbindung auf dem 1. Rechner aus.)

Auf dem WLAN-Rechner (Rechner 1)

Kabel Netzwerkkarte einstellen und aktivieren: (Für die Konsole)

ifconfig eth0 192.168.9.1 netmask 255.255.255.0 up 

Nutzt man ein aktuelles Linux mit Networkmanager, dann legt man sich ein passendes Profil mit aussagekräftigem Namen an (z.B. lokal-192.168-9) und aktiviert dies dann auf der Konsole mit:

nmcli connection lokal-192-168-9 up

IP-Paket-Weiterleitung aktivieren und in der lokalen Firewall Maskieren einschalten:

echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -I POSTROUTING -j MASQUERADE

Die IP-Pakete von Rechner 2 werden nun maskiert, damit der DSL Router die IP von Rechner 2 nicht sieht.

Eventuell muss man noch die Firewall im WLAN Rechner konfigurieren bzw. IP-Pakete von unserem Rechner 2 erlauben:

iptables -I FORWARD -s 192.168.9.0/24 -j ACCEPT
iptables -I FORWARD -d 192.168.9.0/24 -j ACCEPT

Auf Rechner 2:

Netzwerkkarte einstellen und aktivieren per Konsole oder Networkmanager:

ifconfig eth0 192.168.9.2 netmask 255.255.255.0 up

Defaultroute über WLAN Rechner 1.

route add default gw 192.168.9.1

Namensauflösung macht der DSL-Router, darum DNS Server im Rechner 2 auf DSL Router einstellen:

echo "nameserver 192.168.1.1" > /etc/resolv.conf

Zusatztipp: Anstelle des Crossover Kabels kann man auch einen kleinen Switch einsetzen, über den dann mehrere Rechner über den einen mit WLAN surfen können. Jeder muss dann nur seine eigene IP-Adresse haben.


WLAN Kanäle und Frequenzen

Beim LUG Treffen hatten wir u.a. auch mal kurz das Thema „Doppelbelegung durch benachbarte WLAN Access Points (kurz: AP)“. Hier eine kurze Zusammenfassung von mir:

Für das klassische WLAN gibt es 13 verschiedene Kanäle auf denen die verschiedenen WLAN Geräte senden können. Nebenbei sind davon in den USA nur 11, dafür in Japan sogar noch einer mehr, also 14 Kanäle erlaubt. Die 13 bei uns erlaubten Kanäle teilen sich den Frequenzbereich 2,4 GHz bis 2,4835 GHz und überlappen sich dabei. Das heisst ein AP auf Kanal 1 teilt sich Frequenzanteile mit den Kanälen 2-4 und stößt direkt an Kanal 5 an. Richtig störungsfrei wäre demnach ein Betrieb dreier benachbarter AP auf den Kanalkombinationen 1+6+11, 2+7+12, oder 3+8+13 möglich. In der Englischen Wikipedia findet sich auch eine Grafik 1) dazu, die ihr hier seht:

Leider kann man nie ausschließen, das morgen ein Nachbar sich einen WLAN Router zulegt und munter anfängt auf der gleichen Frequenz zu senden. Das macht auch erst einmal nichts, wenn alle Teilnehmer immer nahe beim eignen AP sind. Will man aber zum Beispiel im Garten surfen und sitzt in der Mitte der beiden AP, kann das schon problematisch werden. Dann hilft nur scannen und ausweichen, weil dem Nachbarn erklärst du das mal nicht so einfach.

Einfaches Scannen unter Linux geht auf der Konsole als root mit: „iwlist [interface] scanning“. Das Interface zeigt z.B. der Befehl „iwconfig“ an.

Quellen:


WLAN auf Konsole auflisten

Folgender Befehl zeigt alle gefundenen Netze im Detail an. wlan0 ist hier der Name des Wlan-Adapters und kann auch anders lauten.

iwlist wlan0 scanning

Folgendes Script kann man sich speichern, um eine kleinere und übersichtliche kurze Liste der gefundenen Netze zu erhalten:

#!/bin/bash
iwlist wlan0 scanning|grep -i -e frequen -e essid -e signal | tr '\n' ' ' | sed 's/Freq/\nFreq/g; s/   / /g'|sort
echo ""

Das echo am Ende dient nur der Schönheit und kann auch weggelassen werden.

WLan Belastung erzeugen mit Ping:

nice --20 ionice -c2 -n0 ping -q -s 484 -l 3 -p 0f1e2d3c4b5a6978 -f 192.168.179.193

Serielle Schnittstelle tunneln mit socat

Die bracht man wenn ein Linux PC ohne serielle Schnittstelle über Netzwerk via einem weiteren Linux PC oder via einem RS232 Netzwerk-Modul wie z.B. Lantronix oder DigiWEB mit RS232 verwenden will.

 socat PTY,link=/dev/ttyS4,raw,echo=0,wait-slave TCP4:192.168.178.32:10001

via SSH auf die serielle Schnittstelle des Linux PCs, ohne root rechte, da das Device im Homedir des Users liegt.

 socat  PTY,link=$HOME/vmodem0,raw,echo=0,wait-slave   EXEC:'"ssh   modem‐
            server.us.org socat - /dev/ttyS0,nonblock,raw,echo=0"'

via SSH Tunnel von einem Linux PC auf ein DigiWEB

 socat PTY,link=/dev/ttyS4,raw,echo=0,wait-slave EXEC:'"ssh 192.168.178.21 -p 22 socat - TCP4:192.168.178.32:10001"'

zusätzlich kann man das ganze auch in eine Schleife einhüllen, damit bei einem Verbindungsabbau diese wieder automatisch geöffnet wird.

 while true;
 do socat PTY,link=/dev/ttyS4,raw,echo=0,wait-slave
 EXEC:'"ssh 192.168.178.21 -p 22 socat - TCP4:192.168.178.32:10001"';
 sleep 1;
 done;

(Hinweis: Die fünf Zeilen hier oben sind hintereinander in eine Zeile zu kopieren. Die Zeilenumbrüche dienen lediglich der Lesbarkeit.)


IPs im Netzwerk scannen

 for i in `seq 110 199`; \
   do ping -c 1 192.168.6.$i > /dev/null; \
   if [ $? == 0 ]; then echo $i; fi; done;

Mit Fritzbox Internet Traffic mitschneiden

Unter der folgenden URL kann mit der Fritzbox der Internet Traffic mitgeschnitten werden.

 http://fritz.box/html/capture.html

Die mitgeschnittene Datei *.eth kann dann mit dem Programm Wireshark geöffnet werden.


HTTPs auf Apache2 aktivieren

Aktivieren der Apache Module und Seiten:

a2enmod ssl
a2ensite default-ssl

In Datei /etc/apache2/sites-enabled/default-ssl den Servernahme z.B. „ServerName url.de“ eingeben. Diesen dann auch unbedingt für das Zertifikat verwenden. In der selben default-ssl Daten das folgende Beispiel auskommentieren

# SSLCertificateFile    /etc/ssl/certs/ssl-cert-snakeoil.pem
# SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key

und das einbauen:

SSLCertificateKeyFile /etc/apache2/mycert/server.key
SSLCertificateFile /etc/apache2/mycert/server.crt

Zertifikat erstellen z.B. in:

mkdir /etc/apache2/mycert
cd /etc/apache2/mycert
openssl genrsa -out server.key 2048
openssl req -new -key server.key -out server.csr
openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt

Zum Schluss noch: „service apache2 restart“, dann sollte https gehen.

Info: Zur Installation der owncloud muß in der default-ssl „AllowOverride All“ eingestellt werden.


X11 XDMCP

Will man die Login Oberfläche eines Linux Rechners remote via Netzwerk erreichen so wird das via XDMCP gemacht.

Hierzu muss im Display Manager das Hostrechners das XDMCP aktiviert werden. Je nach dem kann das gdm, lightdm oder gdm3, usw. sein. Meist gibt es da einen Eintrag im /etc/xxx/yyy.conf File.

[XDMCP]
Enable=true 

kann aber auch so sein,

[XDMCPServer]
Enable=true 

Ist das aktiviert, und der Display Manager neu gestartet, kann man z.B. mit dem Befehl:

sudo Xorg -terminate -query 192.168.0.251 :1

einen weiteren X-Server auf seinem PC starten und das login des Remote PC anzeigen. Die Server werden dabei durch „strg+alt+F7“ und „strg+alt+F8“ bzw.„strg+alt+F9“ umgeschaltet.

Soll der Remote Login im einem Fenster des eigenen Desktop angezeigt werden, kann man dies auch durch den Befehl:

Xephyr -query 192.168.0.252 :1

machen. Dann öffnet sich der Login Desktop in einem Fenster auf dem Remote PC.

Hinweis: Xephyr wird vermutlich mit dem Paket „xserver-xephyr“ installiert.

Achtung: Wenn eine Firewall im remote PC aktiv ist dann geht das vermutlich nicht, also Firewall für die Host IP off schalten.


ownCloud Update

Nach einem Update der owncloud durch 'apt-get upgrade' wird die owncloud in den Maintenance-mode geschaltet.

Um das upgrade vollständig durchzuführen (z.B. die mySQL Datenbank) muss dann folgendes gemacht werden.

1. Sicherheitshalber backup der mySQL Datenbank

2. Wechseln in folgenden Ordner:

cd /var/www/owncloud

3. Als root folgenden Befehl eingeben:

sudo -u www-data ./occ upgrade

4. Den folgenden Befehl eingeben, hierdurch wird die Cloud wieder gestartet:

sudo -u www-data ./occ maintenance:mode --off

Hinweis:

Da die owncloud beim upgrade immer die 3rd-party Module ausschaltet müssen diese wieder aktiviert werden. Hierzu beim upgrade z.B. auf folgende Ausgeben auchten:

...
Disabled 3rd-party app: calendar
Disabled 3rd-party app: contacts
Disabled 3rd-party app: documents 
...

owncloud client

Der owncloud Client wird am besten über ein Repositorie installiert.

Also die folgende Datei anlegen:

/etc/apt/sources.list.d/owncloud-client.list

mit diesem Inhalt:

deb http://download.opensuse.org/repositories/isv:/ownCloud:/desktop/Debian_8.0/ /

dann noch den gpg Key Runterladen und den Key hinzufügen:

wget http://download.opensuse.org/repositories/isv:/ownCloud:/desktop/Debian_8.0/Release.key -O /tmp/Release.key
apt-key add /tmp/Release.key 

Tipps zu iptables


Service Blocken ohne Passwort

Hat man einen Service auf einem Linux Rechner der nicht mit User und Passwort geschützt werden kann, dann hilft einem iptables.

/sbin/iptables -A INPUT -p tcp --destination-port 2000 -m mac \
                        --mac-source 00:0F:EA:91:04:07 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --destination-port 2000 -j DROP

Hier wird eine Verbindung auf Port 2000 nur angenommen, wenn die MAC Adresse stimme, alle anderen Verbindungen auf den Port 2000 von anderen Rechnern bzw. MAC`s werden blockiert.


Internes Port forwarding

Will man einen Service starten der keine Rootrechte hat, kann man diesen nicht auf den ersten 1024 Ports laufen lassen. Dies kann man mit einem internen Port forwarding via iptables umgehen.

/sbin/iptables -A PREROUTING -t nat -i eth0 -p tcp \
               --dport 80 -j REDIRECT --to-port 8080

TCPDUMP via Netzwerk

ACHTUNG noch nicht ganz richtig

ssh root@test.des tcpdump -U -s0 -w - 'not port 22' | wireshark -k -i -


1)
Die Datei unterliegt der Creative Commons Attribution ShareAlike 3.0 Lizenz. Bitte bei der Weitergabe beachten. Detail siehe Orginalquelle unter en.wikipedia.org
netzwerktipps.txt · Zuletzt geändert: 2018/11/12 11:09 von jausems
Sie befinden sich hier: startnetzwerktipps
Dieses Dokuwiki verwendet ein von Anymorphic Webdesign erstelltes Thema.
CC Attribution-Noncommercial-Share Alike 4.0 International
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0