60 €

ClouDIY: la Cloud fatta da te

Informazioni sull'evento

Condividi questo evento

Data e ora

Località

Località

Fablab

16 Via Egeo

10134 Torino

Italy

Visualizza Mappa

Descrizione evento

Descrizione

Struttura del corso

  • 3 lezioni da 2.5 ore, giovedì 1 - 8 - 15 febbraio dalle 20.00 alle 22.30
    + 1 lezione di bonus, giovedì 1 marzo dalle 20.00 alle 22.30 (per approfondire i temi che più interessano ai partecipanti, concordati col docente)

  • Docente: Enrico Ubaldi è un ricercatore della Fondazione ISI che lavora su diversi progetti a cavallo tra sistemi complessi, machine learning e computational social science. Durante i suoi studi universitari ha sviluppato una grande passione per la tecnologia e la programmazione e ha speso gran parte del suo tempo libero cercando di mantenere un server personale. Con questo corso vorrebbe condividere la sua esperienza di modo da instradare (aka "mettere in guardia") chiunque voglia cimentarsi in questa ardua impresa.


Programma del corso

Con il workshop ClouDIY: la Cloud fatta da te presenteremo l’installazione del LAMP stack (Linux-Apache-MySQL e PHP) con un approccio a bassissimo livello (cioè sporcandosi le mani!), per meglio comprendere tutti i meccanismi e le componenti che entrano in gioco nel deployment di un server cloud.

Nel corso verranno affrontati temi diversi e di crescente complessità: inizializzazione e gestione da remoto di un server Linux, installazione delle componenti base per un server WEB, creazione di un website con Wordpress, configurazione di database e permessi e installazione di suite per il file e resources sharing.

Anche se l’effettiva installazione della propria nuvola personale (suite nextCloud) avverrà nelle ultime fasi del workshop, tutto il lavoro precedente servirà a familiarizzare e a prendere confidenza con la gestione e la manutenzione di un server con servizi cloud.

Alla fine del corso, oltre ad aver creato la propria nuvola personale, avremo esplorato diversi meccanismi di gestione del server, approfondito metodi di diagnostica e risoluzione dei problemi di configurazione e appreso un metodo generale e versatile per poter estendere in autonomia il numero dei servizi offerti dal nostro server.

Il corso è pensato con un approccio modulare e sarà adattato alle necessità e degli interessi dei partecipanti, aggiungendo o estendo le parti che risulteranno più utili o richieste.
A parte l’installazione di un server web e del servizio di cloud personale i temi affrontati potranno essere scelti tra: gestione in remoto dei download via torrent, streaming di risorse multimediali in remoto, backup automatici e ottimizzati, scrittura di un bot Telegram, monitor pannelli solari, installazione di un jupyter server e molto, molto altro...


Requisiti e materiali

Gli unici requisiti richiesti sono:

  • comprensione basilare del funzionamento di un PC
  • disponibilità di un PC portatile

Sul pc personale sarà richiesto l’accesso e l’utilizzo di una shell Unix-like.
Per utenti Mac e Linux non serve fare nulla.
Per utenti Windows si richiede la preventiva installazione di Cygwin con i pacchetti ssh e rsync installati.

Durante il corso metteremo a disposizione un server basic su cui installare il proprio servizio cloud che verrà lasciato a disposizione dell’utente per un mese dalla fine del corso, dopodichè il server verrà eliminato.
Se l’utente vuole creare un’installazione permanente consigliamo di creare preventivamente un account su uno dei seguenti provider:

Se l’utente vuole utilizzare come base un server domestico (cioè un pc casalingo lasciato sempre acceso) saranno date istruzioni nel corso della prima lezione. In questo caso sarebbe opportuno portare alla prima lezione le seguenti informazioni:

  • Modello del modem adsl/fibra in dotazione;

  • Tipo di connessione del server (wifi/ethernet);

  • Tipo di distribuzione installata (preferibilmente quella di riferimento del corso, vedi sotto).

La distribuzione di riferimento utilizzata nel workshop e’ la Ubuntu 16.04 LTS.



Lezioni

Lezione 1 – Self-hosted: come e perche’

  • Introduzione e panoramica sulle tecnologie utilizzate

  • Introduzione alla riga di comando e setup del server: introduzione a ssh, metodi di autenticazione a chiave pubblica/privata, gestione remota e gestore pacchetti

  • Utenti, demoni e permessi: scegliere l’architettura del nostro server

Lezione 2 – “Hello World!” nel LAMP stack

  • LAMP stack: abbiamo la L, passiamo alla M: mySql e databases, setup e creazione utente/db

  • Apache2 (o nginx?): webserver, permessi e vhosts

  • PHP e moduli Apache: configurazione e test sistema

  • Front-page: installare Wordpress su una cartella fuori dalla webroot e creare la landing page

Lezione 3 – Nextcloud: una nuvola tutta per noi

  • Installazione di Nextcloud e modifica di permessi, database e Apache hosts

  • Test e primo accesso, installazione delle app e panoramica dei servizi

  • Connessione client desktop e mobile, collegamento calendari e sincronizzazione contatti

  • Accedere alla nostra cloud, ovunque e in modo sicuro: DNS e letsencrypt certbot


Lezione 4 (bonus) Oltre la nuvola

Torrents, mediaserver e backup:

  • Transmission web-gui ed esposizione all’esterno per download torrents

  • ssh-tunnelling: una comoda shortcut per non aprire le porte (o aprirne solo una)

  • Plex: una soluzione semplice (ma chiusa) per media streaming

  • Jupyter notebook: coding, test e development in un environment super user-friendly

  • Soluzioni per backup in locale o sulla rete di casa: rsnapshot, crontab e gli hard links

  • Bottino Telegram per lanciare torrents e monitorare stato server

  • Monitor pannelli solari (solo demo)

  • NAS o Samba su rete locale e condivisione file

  • Git server con interfaccia web basic di webgit

  • ...altro?

Condividi con gli amici

Data e ora

Località

Fablab

16 Via Egeo

10134 Torino

Italy

Visualizza Mappa

Salva questo evento

Evento salvato