Sonntag, 25. Januar 2015

Ethernet over IP (EoIP) Tunneling

 Allgemein:
Ethernet-over-IP-Tunnel (EoIP) sind ein MikroTik eigenes Verfahren, um mit RouterOS-Systemen einen transparenten Ethernet-Tunnel zwischen zwei Routern über eine bestehende IP-Verbindung zu realisieren. Hierbei können die EoIP-Tunnel auch durch beliebig andere Tunnel, z. B. IPIP-, PPTP- oder auch IPSec-Tunnel oder über eine beliebige Verbindung laufen, die in der Lage ist, IP-Pakete zu transportieren. Wenn die Bridge-Funktion auf den Routern aktiviert ist, wird der gesamte Ethernet-Verkehr (alle Ethernet-Protokolle) gebridged, ganz genau so, als wären diese beiden direkt mit einem Kabel an einem physikalisen Ethernet-Interface verbunden. Mit diesem Protokoll werden die verschiedensten Layer2-Netzwerkszenarien möglich.
Mögliche Netzwerkszenarien mit EoIP-Interfaces:

  • entfernte LANs über eine Internet-Verbindung zu bridgen
  • entfernte LANs über andere, verschlüsselte Tunnelverbindungen zu bridgen
  • entfernte LANs über ein 802.11b 'ad-hoc' oder ein wireless PtP Netz zu bridgen
Das EoIP-Protokoll enkapsuliert Ethernet-Frames in GRE-Pakete (IP-Protokoll-Nummer 47), wie auch PPTP, und sendet diese zu der gegenüberliegenden Seite des EoIP-Tunnels.

Overhead:

Der Overhead umfasst 42 Byte (8 Byte GRE + 14 Byte Ethernet + 20 Byte IP).

Wichtige Informationen zur Arbeit mit EoIP-Tunneln

  • EoIP-Tunnel sind nicht bidirektional. Es muss immer auf beiden beteiligten Systemen der EoIP-Tunnel zum jeweiligen Peer eingerichtet werden. Beide müssen die gleiche Tunnel-ID verwenden, die ansonsten einzigartig sein muss.
  • Das Interface auf dem Remote-System, zu dem der EoIP-Tunnel konfiguriert wird, darf nicht mit dem EoIP-Tunnel zusammen in einer Bridge verwendet werden.

Eigenschaften

  •  arp (disabled, enabled, proxy-arp, reply-only; Default: enabled):
     Der Modus des Address Resolution Protokolls. 
  •  l2mtu (Integer; Default: : Die Maximum-Transmission-Unit (MTU) im Layer2. Bei EoIP ist dieser Wert nicht konfigurierbar.
  •  mac-address (MAC; Default: : Media-Access-Control-Nummer (MAC-Adresse) des Interfaces. Die Adress-Vergabe-Stelle (IANA) sieht für solche Zwecke MAC-Adressen in dem Bereich von 00:00:5E:80:00:00 bis 00:00:5E:FF:FF:FF vor.
  •  mtu (String; Default: 1500: Die Maximum-Transmission-Unit (MTU) im Layer3.
  •  name (String; Default: ):Der Name des EoIP-Interfaces.
  •  remote-address (IP; Default: :Die IP-Adress der Gegenstelle des EoIP-Tunnels.
  •   tunnel-id (Integer; 0..65536 Default: ):Der eindeutige (Unique) Tunnel-Identifier, der auf beiden Seiten des EoIP-Tunnels identisch sein muss.
Konfiguration:

Eoip-example.png
Zuerst muss am Gateway(Station) ein EoIP-Tunnel erstellt werden:
[admin@Our_GW] interface eoip> add name="eoip-remote" tunnel-id=0 \
\... remote-address=10.0.0.2
[admin@Our_GW] interface eoip> enable eoip-remote
[admin@Our_GW] interface eoip> print
Flags: X - disabled, R - running
  0    name=eoip-remote mtu=1500 arp=enabled remote-address=10.0.0.2 tunnel-id=0
[admin@Our_GW] interface eoip>
... und natürlich auch am Remote-Router(AP):
[admin@Remote] interface eoip> add name="eoip" tunnel-id=0 \
\... remote-address=10.0.0.1
[admin@Remote] interface eoip> enable eoip-main
[admin@Remote] interface eoip> print
Flags: X - disabled, R - running
  0   name=eoip mtu=1500 arp=enabled remote-address=10.0.0.1 tunnel-id=0

[admin@Remote] interface eoip>
Als nächstes muss der EoIP-Tunnel am Gateway gebridged werden:
[admin@Our_GW] interface bridge> add 
[admin@Our_GW] interface bridge> print
Flags: X - disabled, R - running
 0  R name="bridge1" mtu=1500 arp=enabled mac-address=00:00:00:00:00:00 
      protocol-mode=none priority=0x8000 auto-mac=yes 
      admin-mac=00:00:00:00:00:00 max-message-age=20s forward-delay=15s 
      transmit-hold-count=6 ageing-time=5m 
[admin@Our_GW] interface bridge> port add bridge=bridge1 interface=eoip-remote
[admin@Our_GW] interface bridge> port add bridge=bridge1 interface=office-eth
[admin@Our_GW] interface bridge> port print
Flags: X - disabled, I - inactive, D - dynamic
 #    INTERFACE      BRIDGE  PRIORITY PATH-COST
 0    eoip-remote    bridge1 128      10
 1    office-eth     bridge1 128      10
[admin@Our_GW] interface bridge>
... und am Remote-Router:
[admin@Remote] interface bridge> add 
[admin@Remote] interface bridge> print
Flags: X - disabled, R - running
 0  R name="bridge1" mtu=1500 arp=enabled mac-address=00:00:00:00:00:00 
      protocol-mode=none priority=0x8000 auto-mac=yes 
      admin-mac=00:00:00:00:00:00 max-message-age=20s forward-delay=15s 
      transmit-hold-count=6 ageing-time=5m 
[admin@Remote] interface bridge> port add bridge=bridge1 interface=ether
[admin@Remote] interface bridge> port add bridge=bridge1 interface=eoip-main
[admin@Remote] interface bridge> port print
Flags: X - disabled, I - inactive, D - dynamic
 #    INTERFACE      BRIDGE  PRIORITY PATH-COST
 0    ether          bridge1 128      10
 1    eoip-main      bridge1 128      10     
[admin@Remote] interface bridge>

Donnerstag, 22. Januar 2015

SSH

Secure Shell (SSH) ist ein Netzwerkprotokoll, das den Daten zwischen zwei Systemen verschlüsselt überträgt.

Möglichkeiten

  • remote Terminal
  • X11-Festerübertragung (grafisches Interface)
  • Dateiübertragung
    • SCP (Secure Copy)
      • zum kopieren von einzelnen Datein
    • SFTP (Secure File Transfer Protocol)
      • Secure File Transfer Protocol
    • rsync
      • zum Synchronisieren von Ordnern
  • Passwortfreie Authentifizierung mit Keys

Remote Terminal

ssh user@server
z.B. ssh knoppix@169.254.69.13

 

X11-Fensterübertragung

ssh -X user@example.com

Nun kann man graphische Programme am Server starten, die am Client angezeigt werden (z.B. Wireshark)

 

RSync

Programm zur Synchronisation von Daten

Basic Syntax
rsync <Quelle> <Ziel>
z.B
rsync Images/2014 user@server:Images/2014

Verwenden der schnellsten (aber auch unsicheren) Verschlüsselungsmethode RC4
rsync -a -v -e "ssh -c ARCFOUR" <Quelle> <Ziel>

 

Passwortfreie Authentifizierung

Der Vorteil der Key-based-authentication besteht darin, dass anstatt eines Passworts, welches der Benutzer eingibt, der private Schlüssel, welcher am Client gespeichert ist, verwendet wird. Dies ist durch asymetrische Verschlüsselungsverfahren abgesichert (RSA)
Der private Schlüssel kann für besondere Sicherheit mit einem Kennwort abgesichert werden.

 

Setup

Wir generieren ein Schlüsselpaar (public & private) am Client
user@client$ ssh-keygen
Nun wird man nach Speicherort und Passphrase gefragt:
Der Speicherort sollte gleichbelassen bleiben (~/.ssh/id_rsa)
Eine Passphrase kann für zusätzliche Sicherheit eingegeben werden.

Nun sind 2 Datein entstanden
  • ~/.ssh/id_rsa
    • dies ist der private Schlüssel
    • darf das System nicht verlassen
  • ~/.ssh/id_rsa.pub
    • dies ist der öffentliche Schlüssel
    • kann jedem frei zur Verfügung gestellt werden
Den öffentlichen Schlüssel kopieren wir nun auf den Server
user@client$ scp ~/.ssh/id_rsa.pub user@example.com:.ssh/user@client.pub
den Inhalt dieser Datei fügen wir nun der Datei .ssh/authorized_keys am Server hinzu
user@server$ cd ~/.ssh/
user@server$ cat user@client.pub >> authorized_keys

jetzt kann sich der Client zum Server verbinden ohne ein Kennwort einzugeben.

Aufbau eines OSPFv3-Netzes mit Mikrotik-Routern

 Aufgabenstellung

Mit den Mikrotik-Geräten soll ein OSPF-Netzwerk anhand der Vorlage erstellt werden.

Konfiguration

Bei den Interfaces muss der Master-Port entfernt werden, um isolierte Layer2-Segmente herzustellen zwischen denen gerouted werden kann. Dies geschiet mithilfe des Webinterfaces.
Die Konfiguration selbst kann sowohl via WebBrowser, SSH oder WinBox durchgeführt werden. Die KonfigurationsIP des Routers lautet: 192.168.88.1.
Um über das Terminal einen Zugriff auf den Router zu erlangen, wird der Befehl ssh -l admin benötigt. Zugangsdaten werden jedoch bei dem Einloggen auf das Webinterface angefordert (Benuter: admin, Password: - oder admin ).

Konfiguration von IPv6 Addressen

/ipv6 address
add address=2a00:3456:9abc:4::3/64 interface=ether3
 

Konfiguration von OSPF

/routing ospf-v3
set router-id=0.0.0.1
/routing ospf-v3 interface
add interface=all area=backbone


33332852562
Am anfang sind alle 4   Ethernet Ports gebrideg!!

Bridge entfernen -- alle einzell konfigurieren

Konfigurarationsmöglichkeiten
ssh
Webbrowser
winbox

Ports 2 - 5 Port 1 -- Wan-Port

ssh - l admin [ip addresse]
yes
interface print

browser
ip adresse eingfeben
login admin
password admin