Open vswitch lab. Radosław Kujawa 14 czerwca 2017 OSEC

Podobne dokumenty
OpenStack Neutron Software Defined Networking w prywatnych chmuarch

Elastyczna sieć dla rozwiązań Cloud Open vswitch

systemd-nspawn kontenery bliższe sercu administratora

Wprowadzenie 5 Rozdział 1. Lokalna sieć komputerowa 7

OpenContrail jako wtyczka do OpenStacka. Bartosz Górski, Paweł Banaszewski CodiLime

Tworzenie maszyny wirtualnej

Zadanie OUTSIDE /24. dmz. outside security- level /24. inside security- level /16 VLAN

Switching czyli przełączanie. Sieci komputerowe Switching. Wstęp. Wstęp. Bridge HUB. Co to jest? Po co nam switching? Czym go zrealizować?

Strona1. Suse LINUX. Konfiguracja sieci

Ćwiczenie Rozwiązywanie problemów związanych z trasami statycznymi IPv4 oraz IPv6 Topologia

# ip addr add dev eth1 $ sudo ip addr add dev eth1 Uwaga: Ustawienia te zostaną utracone po restarcie systemu

Sieci Komputerowe Laboratorium 11. VLAN i VTP

Laboratorium - Konfiguracja zabezpieczeń sieci bezprzewodowej

PODSTAWOWA KONFIGURACJA LINKSYS WRT300N

FAQ: /PL Data: 19/11/2007 Programowanie przez Internet: Przekierowanie portu na SCALANCE S 612 w celu umo

ZADANIE.02 Podstawy konfiguracji (interfejsy) Zarządzanie konfiguracjami 1,5h


Software Defined Networking

Sieci VLAN. Podstawy konfiguracji. Paweł Malak malak.eu Spotkanie koła naukowego AEGIS, Poznao, wrzesieo 2013r.

Instalacja i konfiguracja rouera ASMAX AR 904u. Neostrada, Netia

VLAN 2 zadania. Uwagi. Przygotowanie. Zadanie 1 Klasyczny VLAN, komputery obsługują znaczniki 802.1Q. Zadanie 2 Ingress filtering (cz.

Ćwiczenie 6 Przełącznik zarządzalny T2500G-10TS (TL-SG3210).

Warsztaty z Sieci komputerowych Lista 4

Podstawowa konfiguracja routerów. Interfejsy sieciowe routerów. Sprawdzanie komunikacji w sieci. Podstawy routingu statycznego

Zarządzanie systemem komendy

PROFESJONALNE USŁUGI BEZPIECZEŃSTWA

Wprowadzenie do obsługi systemu IOS na przykładzie Routera

Laboratorium 2 Sieci Komputerowe II Nazwisko Imię Data zajęd

ZADANIE.02 Cisco.&.Juniper Podstawy konfiguracji (interfejsy) Zarządzanie konfiguracjami

Co w sieci siedzi. Warstwa 2 - konfiguracja sieci VLAN. Routing między sieciami VLAN.

Wykład 2: Budowanie sieci lokalnych. A. Kisiel, Budowanie sieci lokalnych

NAT. Zakres adresów IP adresów. liczba bitów maski 24-bit block

* konfiguracja routera Asmax V.1501 lub V.1502T do połączenia z Polpakiem-T lub inną siecią typu Frame Relay

Tomasz Greszata - Koszalin

T: Konfiguracja interfejsu sieciowego. Odwzorowanie nazwy na adres.

Brinet sp. z o.o. wyłączny przedstawiciel DrayTek w Polsce

VLAN. VLAN (ang. Virtual Local Area Network) - sieć komputerowa wydzielona logicznie w ramach innej, większej sieci fizycznej

Sieci Komputerowe Laboratorium 08 OSPF

Routing - wstęp... 2 Routing statyczny... 3 Konfiguracja routingu statycznego IPv Konfiguracja routingu statycznego IPv6...

Zakresy prywatnych adresów IPv4: / / /24

1) Skonfiguruj nazwę hosta na ruterze zgodną z przyjętą topologią i Tabelą adresacji.

Router programowy z firewallem oparty o iptables

Warsztaty z Sieci komputerowych Lista 3

ZADANIE.05 Tworzenie sieci VLAN (VLAN, trunk, inter-vlan routing) 2,5h

4. Podstawowa konfiguracja

Laboratorium z przedmiotu Sieci Komputerowe - Wirtualne sieci lokalne. Łukasz Wiszniewski

IPv6. Wprowadzenie. IPv6 w systemie Linux. Zadania Pytania. budowa i zapis adresu, typy adresów tunelowanie IPv6 w IPv4

CCNA : zostań administratorem sieci komputerowych Cisco / Adam Józefiok. Gliwice, cop Spis treści

Sieć TCP/IP konfiguracja karty sieciowej

Ćwiczenie Konfiguracja routingu między sieciami VLAN

Posiadacze routera ADSL+2 Pirelli DRG A125G mogą bez żadnych kosztów przekształcić go w pełnosprawny router WAN Ethernet.

GPON Huawei HG8245/HG8245T/HG8245H/HG8546M/ HG8245Q/HS8546V/HS8145V

1.1 Ustawienie adresów IP oraz masek portów routera za pomocą konsoli

KROK 1. KONFIGURACJA URZĄDZEŃ KOŃCOWYCH (SERWERÓW)

Administracja sieciami LAN/WAN Komunikacja między sieciami VLAN

Zakład Teleinformatyki i Telekomutacji LABORATORIUM SIECI

FAQ: /PL Data: 16/11/2007 Programowanie przez Internet: Konfiguracja modułów SCALANCE S 612 V2 do komunikacji z komputerem przez VPN

podstawowa obsługa panelu administracyjnego

BRINET Sp. z o. o.

Czym jest router?... 3 Vyatta darmowy router... 3 Vyatta podstawowe polecenia i obsługa... 3 Zarządzanie użytkownikami... 3 Uzupełnianie komend...

Aneks do instrukcji obsługi routera Asmax Br-804v II

ZADANIE.02 Korporacyjne Sieci Bez Granic v.2013 ZADANIE.02. VPN L2L Virtual Private Network site-to-site (ASA) - 1 -

Przepełnienie bufora. SQL Injection Załączenie zewnętrznego kodu XSS. Nabycie uprawnień innego użytkownika/klienta/administratora

Laboratorium 3 Sieci Komputerowe II Nazwisko Imię Data zajęd

Packet Tracer - Podłączanie routera do sieci LAN

ZADANIE.02 Cisco.&.Juniper Podstawy konfiguracji (interfejsy) Zarządzanie konfiguracjami 1,5h

LABORATORIUM SIECI. Zakład Cyberbezpieczeństwa IT PW. Instrukcja do ćwiczenia: Switching, VLAN & Trunking Przedmiot: Sieci Lokalne (LAN)

Warsztaty z Sieci komputerowych Lista 4

Firewall bez adresu IP

Sieci komputerowe. Tadeusz Kobus, Maciej Kokociński Instytut Informatyki, Politechnika Poznańska

GPON Huawei HG8245/HG8245T/HG8245H

Przełączanie i Trasowanie w Sieciach Komputerowych

podstawowa obsługa panelu administracyjnego

Warsztaty z Sieci komputerowych Lista 3

Zapoznanie ze środowiskiem Mininet. Instalacja zewnętrznego kontrolera SDN.

Linksys/Cisco SPA2102, SPA3102 Instrukcja Konfiguracji

Lab 2 ĆWICZENIE 2 - VLAN. Rodzaje sieci VLAN

Zadanie1: Odszukaj w serwisie internetowym Wikipedii informacje na temat usługi DHCP.

Ćwiczenie Konfiguracja routingu inter-vlan 802.1Q opartego na łączach trunk

Na podstawie: Kirch O., Dawson T. 2000: LINUX podręcznik administratora sieci. Wydawnictwo RM, Warszawa. FILTROWANIE IP

Ćwiczenie Konfiguracja statycznych oraz domyślnych tras routingu IPv4

PBS. Wykład Zabezpieczenie przełączników i dostępu do sieci LAN

pasja-informatyki.pl

kontener aplikacyjny nie tylko dla programistów Łukasz Piątkowski Poznańska Impreza Wolnego Oprogramowania 2014

PROFESJONALNE USŁUGI BEZPIECZEŃSTWA

TP-LINK 8960 Quick Install

pasja-informatyki.pl

ZiMSK. VLAN, trunk, intervlan-routing 1

Bezpieczeństwo Systemów Telekomunikacyjnych 2014 / 2015 Bezpieczeństwo aplikacji sieciowych, Ataki (D)DoS Prowadzący: Jarosław Białas

Laboratorium - Konfiguracja karty sieciowej do używania protokołu DHCP w systemie Windows XP

Instrukcja do laboratorium. Wprowadzenie do problematyki wirtualizacji. Wirtualizacja sieci.

WIRTUALNE ŚRODOWISKO BADAWCZE REALIZUJĄCE ZADANIA SIECI KOMPUTEROWEJ

Internet. Bramka 1 Bramka 2. Tunel VPN IPSec

ZADANIE.05 Cisco.&.Juniper Tworzenie sieci VLAN (VLAN, trunk, inter-vlan routing)

Laboratorium - Używanie wiersza poleceń systemu IOS do obsługi tablic adresów MAC w przełączniku

Moduł Ethernetowy. instrukcja obsługi. Spis treści

Zadanie1: Odszukaj w serwisie internetowym Wikipedii informacje na temat zapory sieciowej (firewall) oraz oprogramowania iptables.

Sieci komputerowe. Tadeusz Kobus, Maciej Kokociński Instytut Informatyki, Politechnika Poznańska

Zadanie1: Odszukaj w serwisie internetowym Wikipedii informacje na temat hasła SOHO (ang. Small Office/Home Office).

Sieci komputerowe. Tadeusz Kobus, Maciej Kokociński Instytut Informatyki, Politechnika Poznańska

Transkrypt:

Open vswitch lab Radosław Kujawa radoslaw.kujawa@osec.pl OSEC 14 czerwca 2017

Open vswitch Elastyczny, zarządzalny wirtualny switch do zastosowań Software Defined Network. Do zarządzania wykorzystywany jest protokół OpenFlow. Używany domyślnie do wirtualizacji warstwy 2 sieci w Red Hat OpenStack. Do separacji warstwy drugiej można wykorzystać szereg mechanizmów (VLAN/VXLAN/GRE...).

Przygotowania do instalacji Open vswitch dostępny w większości dystrybucji Linuxa. W Fedorze paczka openvswitch. Wymagania dotyczące konfiguracji. NetworkManager konfliktuje z Open vswitch. systemctl stop NetworkManager systemctl disable NetworkManager W naszym obrazie VM jest już wyłączony.

Nasze środowisko demonstracyjne System operacyjny hypervisora NAT eth0 eth0 ovshost1 eth1 intnet0 eth1 ovshost2

Środowisko demonstracyjne import maszyn Obraz maszyn wirtualnych w formacie OVF 2.0. Reinitialize the MAC address of all network cards. Fedora 26 Alpha + Open vswitch 2.7.0. Logowanie: root/fedora Nadanie nazwy hosta: hostnamectl set-hostname ovshostx.osecforum.pl Materiały do labu: cd && git clone https://github.com/osec-pl/osecforum-openvswitch.git lab

Środowisko demonstracyjne firewall W rzeczywistych warunkach konieczna jest także konfiguracja firewalla (ale tu nie będziemy tego robić). systemctl stop firewalld systemctl disable firewalld systemctl mask firewalld

Środowisko demonstracyjne konfiguracja Przkierowanie połączenia SSH do maszyn wirtualnych: ovshostx: Network settings Adapter 1 Port Forwarding. Host IP: 127.0.0.1 Host port: 1000X Guest IP: 10.0.2.15 Guest port: 22 Można zalogować się po SSH z systemu operacyjnego hypervisora: ssh -p 1000X root@127.0.0.1 Zezwolenie na przechywywanie ruchu w sieci wewnętrznej: ovshostx: Network settings Adapter 2 Promiscuous Mode. Allow all.

SELinux Fedora 26 Alpha wymaga małych poprawek do polityki bezpieczeństwa SELinuxa. semodule -i $HOME/lab/selinux/ovs-f26-fix.pp

Usługa Open vswitch Paczka: openvswitch. Jednostka systemd: openvswitch.service (podnosi też ovs-vswitchd.service i ovsdb-server.service). Moduł kernela: openvswitch. systemctl start openvswitch systemctl enable openvswitch

Podstawowa konfiguracja bridge a ovs-vsctl add-br ovsbr0 ovs-vsctl add-port ovsbr0 eth1 ovs-vsctl show ip addr add 172.24.254.X/24 dev ovsbr0 ip link set dev ovsbr0 up Bridge "ovsbr0" Port "eth1" Interface "eth1" Port "ovsbr0" Interface "ovsbr0" type: internal ovs_version: "2.7.0"

Użycie VLAN do separacji sieci warstwy 2 Wszystkie porty w Open vswitch domyślnie są trunkami VLAN. Sytuacja z poprzedniego slajdu ruch nieotagowany (bez VLAN). Dodanie interfejsu w konkretnym VLAN: ovs-vsctl add-port ovsbr0 vlan1 -- set interface vlan1 type=internal ovs-vsctl set port vlan1 tag=1 ip addr add 172.24.253.X/24 dev vlan1 ip link set dev vlan1 up

Użycie VLAN do separacji sieci warstwy 2 c.d. Port vlan1 jest widoczny na poziomie hosta jako osobny interfejs. Ruch wysłany/odbierany na tym interfejsie jest automatycznie tagowany jako VLAN z ID 1. Bridge "ovsbr0" Port "vlan1" tag: 1 Interface "vlan1" type: internal Port "eth1" Interface "eth1" Port "ovsbr0" Interface "ovsbr0" type: internal ovs_version: "2.7.0"

Tunelowanie ruchu w sieci fizycznej Użycie VLAN do separacji na poziomie sieci fizycznej nie zawsze jest możliwe. Open vswitch pozwala tunelować ruch między bridge ami na odległych maszynach. Konfigurujemy adresację IP eth1 na poziomie systemu operacyjnego. ovs-vsctl del-port ovsbr0 eth1 ip addr add 192.168.1.X/24 dev eth1 Stworzenie tunelu GRE: ovs-vsctl add-port ovsbr0 ovsgre0 -- set interface ovsgre0 type=gre options:remote ip=192.168.1.y

Tunelowanie ruchu z użyciem VXLAN Protokół GRE, jako odrębny protokół IP nie zawsze jest preferowanym rozwiązaniem. Protokół VXLAN jest bardziej efektywnym rozwiązaniem gdy mamy wiele hostów tunelowanie ramek L2 w UDP. VXLAN wspiera też multicasting... choć sam Open vswitch jeszcze nie. Implementacja w kernelu Linuxa ma już obsługę multicastingu. Konfiguracja tunelu VXLAN w Open vswitch: ovs-vsctl add-port ovsbr0 ovsvx0 -- set interface ovsvx0 type=vxlan options:remote ip=192.168.1.y

Network namespaces Pozwala na uruchomienie więcej niż jednej instancji stosu sieciowego w kernelu Linuxa. Każdy namespace ma własne, odrębne interfejsy, własną konfigurację adresacji i tablicę routingu. Pozwalają na zwirtualizowanie funkcji sieciowych wymagających dostępu do warstwy 2. Dodanie namespace: ip netns add foo ip netns list Wykonanie polecenia wewnątrzn namespace: ip netns exec foo polecenie ip netns exec foo ip link set dev lo up

Interfejsy veth Wirtualny Ethernet posiada dwie końcówki. Może posłużyć do połączenia namespace z Open vswitch. Utworzenie interfejsów veth: ip link add veth0 type veth peer name veth1 ip link set veth1 netns foo ip netns exec foo ip link set dev veth1 up ip netns exec foo ip addr add 172.24.252.X/24 dev veth1

Dodanie veth do Open vswitch jako portu ip link set dev veth0 up ovs-vsctl add-port ovsbr0 veth0 Bridge "ovsbr0" Port "ovsvx0" Interface "ovsvx0" type: vxlan options: {remote_ip="192.168.1.2"} Port "veth0" tag: 2 Interface "veth0" ip netns exec foo ping 172.24.252.Y ip netns exec foo ping6 fe80::...%veth1

Stała konfiguracja Konfiguracja bridge y i wewnętrznych portów z założenia jest stała, konfiguracja adresacji IP nie jest. Gdy nie mamy kontrolera SDN, możemy skonfigurować Open vswitcha przy starcie za pomocą skryptów w katalogu /etc/sysconfig/network-scripts/. OpenStack składa w ten sposób tylko bridge br-ex, reszta jest konfigurowana agentem Neutrona. Nie wszystkie możliwe rodzaje konfiguracji są wspierane. Należy pamiętać o odpowiedniej konfiguracji firewalla.

Stała konfiguracja c.d. Przykład: fizyczny interfejs do Open vswitcha. # ifcfg-ovsbr0 DEVICE=ovsbr0 ONBOOT=yes DEVICETYPE=ovs TYPE=OVSBridge BOOTPROTO=static IPADDR=X.X.X.X PREFIX=XX # ifcfg-eth1 DEVICE=eth1 ONBOOT=yes DEVICETYPE=ovs TYPE=OVSPort BOOTPROTO=none OVS_BRIDGE=ovsbr0

Stała konfiguracja c.d. Przykład: enkapsulacja sieci L2 w protokół GRE. # ifcfg-ovsbr0 DEVICE=ovsbr0 ONBOOT=yes DEVICETYPE=ovs TYPE=OVSBridge BOOTPROTO=static IPADDR=X.X.X.X PREFIX=XX # ifcfg-ovsgre0 DEVICE=ovsgre0 ONBOOT=yes DEVICETYPE=ovs TYPE=OVSTunnel OVS_BRIDGE=ovsbr0 OVS_TUNNEL_TYPE=gre OVS_TUNNEL_OPTIONS= "options:remote_ip=y.y.y.y" Ponadto standardowe interfejsy ethernetowe w sieci, po której przesyłany jest tunel.

Stała konfiguracja c.d. Wirtualizacja interfejsy tap maszyn wirtualnych (vnetx w libvirtd). Tak samo jak każdy inny interfejs tam w Open vswitch. Network namespace brak standardu dla statycznej konfiguracji. Co z veth? https://github.com/lanetnetwork/initscripts-veth (dla Linux Bridge, potrzebne poprawki dla Open vswitch). Pole dla własnej inwencji twórczej... W środowisku korporacyjnym lepiej użyć kontrolera SDN niech on konfiguruje Open vswitcha.

Podsumowując... Open vswitch w połączeniu z namespace oraz interfejsami veth daje nam niespotykane wcześniej możliwości wirtualizacji sieci oraz funkcji sieciowych. Pozwala na łatwe wdrożenie aplikacji wymagających bezpośrednio dostępu do warstwy drugiej sieci. Rozwiązanie to chętnie jest wykorzystywane przy tworzeniu chmur prywatnych (np. wirtualne routery, usługi sieciowe w OpenStack).

Koniec... Dziękuje! Czy są pytania?