Slide 1

Slide 1 text

www.apsl.net Tinc i Raspberry Pi VPN amb tinc sobre Raspberry Pi Creantbits - 26 de juliol de 2013

Slide 2

Slide 2 text

www.apsl.net Origen i objectius Origen • 2006 - Eben Upton i els seus companys (Cambridge University) observaren una disminució en les matrícules d'informàtica. També disminuïen les habilitats dels nous estudiants. • Els estudiants no havien tengut l'oportunitat d'experimentar amb la tecnologia de base com si ho havien fet els estudiants de les dècades de 1980 i 1990. Objectius • Pal·liar el problema observat, aprofitant l'aparició de maquinari assequible per dispositius mòbils. Aconseguiren dissenyar un ordinador complet, de característiques bàsiques i preu assequible. • Per la gestió del desenvolupament, fabricació i distribució es va crear l'ONG, The Raspberry Pi Foundation. www.raspberrypi.org

Slide 3

Slide 3 text

www.apsl.net Situació actual Eben Upton a TEDGLOBAL 2013 “De 1.300.000 unitats venudes, s'estima que, entre el 30% i el 40%, està en mans de nins” ¡La gent està usant la Raspberry Pi Per EXPERIMENTAR! “Ja no es tracta només d'informàtica. Es tracta de que la gent s'emocioni amb quelcom més ample, que anomenam STEM – ciència, tecnologia, enginyeria i matemàtiques” Fotografia: James Duncan Davidson / TED Conferences, LLC

Slide 4

Slide 4 text

www.apsl.net Models Model A Model B rev.1 Model B rev.2 256 MB 256 MB 512 MB 1 x USB 2 x USB Fast Ethernet 100Mbps RJ45

Slide 5

Slide 5 text

www.apsl.net Raspberry Pi – Model B 2xUSB LEDs Àudio Jack 3,5mm Vídeo RCA Memòria SD LEDs Alimentació Micro USB Xarxa RJ45 100Mbps GPIO CPU+GPU+Memòria Broadcom BCM2835 Vídeo+àudio HDMI CSI DSI

Slide 6

Slide 6 text

www.apsl.net Principals característiques SoC Broadcom BCM2835 CPU ARM1176JZFS (700MHz) GPU Videocore 4 (OpenGL ES, OpenVG, H.264, MPEG-2, VC-1, 1080p) SDRAM 512MB 2 x USB2 Entrada vídeo CSI Sortida vídeo HDMI, RCA compost, DSI Sortida àudio HDMI, Jack 3,5mm Emmagatzematge SD/MMC/SDIO Alimentació Micro-USB 700mA (3,5W) Xarxa Fast Ethernet 100Mbps (USB) Mida aproximada de targeta de crèdit Entrada/Sortida: GPIO (UART, I2C, SPI, I2S) Pes: 45g

Slide 7

Slide 7 text

www.apsl.net GPIO General Purpouse Input/Output Línies programables de entrada/sortida per la comunicació amb el SoC i la seva connexió a dispositius, sensors i actuadors externs. UART I2C SPI I2S Captura: Projecte WebIOPi – Fotografia: Adafruit

Slide 8

Slide 8 text

www.apsl.net Inconvenients Plataforma hardware no lliure • Firmware i controladors de sistema privatius. • Activació de la decodificació hardware per llicència (MPEG-2, VC-1). Potència de càlcul limitada i hardware senzill • Límits evidents de velocitat i capacitat. • Tans sols un core (sense processament paral·lel). • No és possible ampliar-ne la memòria. • Sense BIOS ni RTC. Velocitat d'accés a la targeta de memòria · Velocitat d'accés lenta a pesar d'usar targetes d'alta velocitat. Limitació de potència elèctrica • Tant sols és capaç d'alimentar dispositius USB de consum baix. Alguns inconvenients...

Slide 9

Slide 9 text

www.apsl.net Sistemes operatius / Aplicacions GNU/Linux Altres sistemes Xarxes / seguretat Telefonia Raspbian FreeBSD Pi Point Elastix VOIP System Debian NetBSD IPFire Incredible Pi Arch Linux Risc OS PwnPi Thin Client Fedora Remix Plan 9 ha-pi Raspberry Pi Thin Client Pidora Aros Broadway Jocs Occidentalis Haiku Chameleon Moebius Media center Gentoo OpenELEC PiBang Linux DarkELEC OpenWRT Xbian Slackware Raspbmc Alguns exemples...

Slide 10

Slide 10 text

www.apsl.net NOOBS – New Out Of Box Software

Slide 11

Slide 11 text

www.apsl.net Raspbian Raspbian • Distribució completa GNU/Linux • Optimitzada per Raspberry Pi • Basada en Debian Linux. • Escriptori lleuger LXDE. • Elecció d'aplicacions lleugeres. • Orientada a la programació. www.raspbian.org

Slide 12

Slide 12 text

www.apsl.net Possibles muntatges i aplicacions Fotografíes: Diversos autors

Slide 13

Slide 13 text

www.apsl.net Kiosk Kiosk d'informació per a una cadena hotelera

Slide 14

Slide 14 text

www.apsl.net Informació The Raspberry Pi Foundation www.raspberrypi.org Adafruit Learning System learn.adafruit.com/category/raspberry-pi

Slide 15

Slide 15 text

www.apsl.net Més informació... www.themagpi.com

Slide 16

Slide 16 text

www.apsl.net Origen i objectius “there is no cabal” tinc-vpn.org Origen • 1997 – Ivo Timmermans (zarq) i Guus Sliepen (guus) - Usenet Objectius Desenvolupar una VPN • Segura: Privada, codi depurat, bona gestió de les claus, permisos de fitxers... • Confiable i estable: El dimoni ha de gestionar bé totes les situacions. • Eficient: S'ha d'eliminar tot allò innecessari (ie: overhead). • Escalable: Manejar centenars/milers de dimonis sense pèrdua de rendiment. • Fàcil de configurar i usar I a més... • • Lliure: GPL2.

Slide 17

Slide 17 text

www.apsl.net Característiques Seguretat Xifrada, autenticada, comprimida • Ús de llibreries estàndard (OpenSSL, RSA) • liblzo, zlib. • chroot. • Bon codi: buffer overflows, memory leaks... • Gestió dels permisos i les claus. • Auditable. Confiabilitat i estabilitat Gestió de les situacions adverses • Reconnexió en cas d'error o timeout. • Redundància.

Slide 18

Slide 18 text

www.apsl.net Transport Transport • Ethernet virtualitzada (TUN/TAP) • Tantes com necessitem. • Mode router (capa 3) o switch (capa 2) • Tràfic unicast vs broadcast... • Suport complet per IPv4 i IPv6 • Alternativa per muntar túnels IPv6 dins IPv4 • Meta-connexió sobre TCP • Informació de rutes, sessions, control... • El túnel va encapsulat dins UDP • UDP és més adequat pels encapsulaments. • Fall back a TCP si no és possible usar UDP • Obriu UDP i TCP als tallafocs.

Slide 19

Slide 19 text

www.apsl.net Eficiència Enrutament automàtic en malla (mesh) Connexió de múltiples llocs sense un servidor central • Cada node passa la informació que té dels altres. • Sempre es tria el camí més directe. • Els nodes enruten el tràfic dels altres si no hi ha camí directe. • Local discovery. Basta configurar alguns enllaços. La resta és automàtica. Passam d'un model clàssic centralitzat a un altre descentralitzat.

Slide 20

Slide 20 text

www.apsl.net Model d'enrutament C A B Model centralitzat C A B Model en malla

Slide 21

Slide 21 text

www.apsl.net Model d'enrutament A E D C B Connexions configurades: Connexions apreses: Local discovery: Internet:

Slide 22

Slide 22 text

www.apsl.net Escalabilitat A D C B Model tradicional Afegir 1 node → Afegir n enllaços A D C B Model en malla Afegir 1 node → Afegir 1 enllaç Escalabilitat • Fitxers de configuració simples i sistema d'enrutament eficient. • Afegir un node implica afegir només un enllaç (configurar dos nodes). • Mantenir múltiples enllaços no suposa una gran càrrega de sistema ni ús de memòria.

Slide 23

Slide 23 text

www.apsl.net Multi-plataforma Plataformes • Linux, FreeBSD, OpenBSD, NetBSD,Solaris, Darwin, Windows (Cygwin i natiu)... • Paquet per OpenWRT (obre la porta a la integració dins routers, punts d'accés...). • Android, iOS. Branca estable 1.0 Branca de desenvolupament 1.1 Actualitzacions de seguretat Backend criptogràfic seleccionable Inclusió d'un socket de control + tincctl Gestió de connexions (control) automàtica Configuració automàtica de nous nodes Sobre Linux • Debian, Ubuntu, Arch Linux, Gentoo, openSUSE... Plans de futur

Slide 24

Slide 24 text

www.apsl.net Exemple simple nagios xisco raspi Adreces IP nagios 192.168.77.1 xisco 192.168.77.2 raspi 192.168.77.3

Slide 25

Slide 25 text

www.apsl.net Exemple simple /etc/tinc/ ├── creantbits │ ├── hosts │ │ ├── nagios │ │ └── raspi │ ├── rsa_key.priv │ ├── tinc.conf │ └── tinc­up └── nets.boot Address = nagios.apsl.net 657 Subnet = 192.168.77.1/32 ­­­­­BEGIN RSA PUBLIC KEY­­­­­ MIIBCgKCAQEA6Hvl8vT7DIommBROan [...] h9wZpYjqdg/UpJoA8Yca81mBdZI6rn ­­­­­END RSA PUBLIC KEY­­­­­ Subnet = 192.168.77.3/32 ­­­­­BEGIN RSA PUBLIC KEY­­­­­ MIIBCgKCAQEA0lQtZeQBwr8LzioP/k [...[ GNFerDXAuw2hyT/lZ6dVMafiOBgTwD ­­­­­END RSA PUBLIC KEY­­­­­ Name = raspi Device = /dev/net/tun Port = 657 AddressFamily = ipv4 Mode = router ConnectTo = nagios #!/bin/sh ifconfig $INTERFACE 192.168.77.3 netmask 255.255.255.0 creantbits

Slide 26

Slide 26 text

www.apsl.net Preguntes? Fotografía: Petr Kratochvil Més informació $ man tincd $ man tinc.conf tinc-vpn.org i per suposat... RTFM! ;-)

Slide 27

Slide 27 text

www.apsl.net Gràcies