criptolibretto/book.md
2018-04-22 08:08:14 +02:00

7.4 KiB

title author date lang
Cripto libretto Unit hacklab - unit@paranoici.org Aprile 2018 italian

Per una corretta igiene digitale

Usiamo software libero e a sorgente aperta

https://www.gnu.org/philosophy/free-sw.it.html

Una buona password

Non usare la stessa password per diversi servizi

Usa una passphrase, ossia una frase di accesso compresa di spazi, facile da ricordare, ma difficile da indovinare persino per un computer, ad esempio questa contiene sia maiuscole che numeri, è molto lunga, ma facile da ricordare

Nel mezzo del cammin di nostra vita2

Il password manager

Le password da ricordare sono troppe, KeePassX è un software multipiattaforma per la gestione di password, un luogo sicuro dove scriverle, ma non dimenticare la password principale

https://www.keepassx.org

Accecare la telecamera del portatile

Attacca un pezzo di scotch nero da elettricista sulla telecamera del portatile, il fatto che non si accenda la lucina non significa che sia spenta.

Navigazione consapevole

Usiamo Firefox

La gestione dei containers e dei profili ci permette di creare ambienti isolati

Containers1: per compartimentare history e cookies

Profili: sono delle diverse sessioni del browser, per compartimentare anche gli add-on, si possono aprire scrivendo nella finestra di navigazione:

about:profiles

Add-ons:

  • https-everywhere: preferisce https a http
  • ghostly: blocca i tracker della nostra navigazione
  • no script: blocca gli script
  • ublock origin: blocca la pubblicità

Navigazione anonima con Tor

Tor, The Onion Router è un protocollo per l'anonimizzazione del traffico web. Scarica, installa e usa il programma Tor browser bundle per navigare in rete anonimamente.

Attenzione! Non presumere che il tutto funzioni per magia. Studia, prova, verifica.

https://www.torproject.org/download/download.html.en

Tails

TAILS è un sistema operativo smemorato, si avvia da penna Usb e quando lo spegni non ricorda nulla di quello che è successo. In altre parole usa Tor per navigare in internet anonimamente e permette di usare un computer in prestito senza doverci installare nulla. Utile in viaggio.

https://tails.boum.org

Verificare l'integrità del software scaricato

Alcuni software offrono di verificare la loro checksum (somma di controllo), ossia la stringa alfanumerica univoca che risulta applicando un algoritmo chiamato SHA256. Scarica il pacchetto e usa un programma per fare il calcolo, se la stringa (hash) che salta fuori coincide con quella pubblicata sulla pagina web, il pacchetto dovrebbe essere integro.

openssl sha256 VeraCrypt_1.22_Bundle.7z
e51bd8ba4ff40aee084019ddf3a9f8d0e5fa8f743612c581efb2fbf10e36c595

Alcuni software sono anche accompagnati da una firma digitale, si può verificare con GnuPg che la firma, apposta a lato come file.sig, appartenga all'autore.

gpg --verify VeraCrypt_1.22_Bundle.7z.sig VeraCrypt_1.22_Bundle.7z

Usare un sistema operativo libero

Usiamo GNU/Linux, disponibile in diverse distribuzioni, elencate in ordine di facilità d'uso.

Comunicazione sicura dal telefonino

Premessa: consideriamo che gli smartphone sono insicuri per definizione

  • Signal.org è una app che permette di comunicare privatamente
  • Conversations.im è una app che permette di comunicare privatamente con protocollo federato
  • lineageos.org è un sistema operativo per telefonini basato su Android

VeraCrypt

VeraCrypt è un software che permette di proteggere con una passphrase una penna Usb, utile per trasportare dei documenti in viaggio senza preoccuparsi di perderla. Attenzione che durante la configurazione la penna verrà formattata e sarà poi sempre necessario usare VeraCrypt per montarla.

https://www.veracrypt.fr/en/Home.html

PGP, la crittografia pesante a doppia chiave

  • PGP Pretty Good Privacy, software di crittografia asimmetrica
  • GnuPG è il suo equivalente libero

Si usa per cifrare, ma anche per firmare.

Chi usa GnuPG crea due chiavi, quella privata serve per decifrare, quella pubblica viene usata dai suoi corrispondenti per cifrare.

Creare la coppia di chiavi

gpg --gen-key

Creare un certificato di revoca

gpg -o revoca-Key-ID.asc --gen-revoke Key-ID

Esportare la chiave pubblica

gpg -a -o mia-chiave-pubblica.txt --export Key-ID

Importare una chiave di qualcuno

gpg --import chiave.asc

Verificare una fingerprint

gpg --fingerprint Key-ID

Cifrare un documento per Snowden

gpg -a -o messaggio.asc --encrypt --recipient snowden-Key-ID messaggio.txt

Decifrare un documento

gpg -o messaggio-in-chiaro.txt messaggio.asc

Scaricare la chiave pubblica di qualcuno

gpg --keyserver pgp.mit.edu --search-keys Key-ID

Verificare una firma accanto a un file

gpg --verify file.sig file

Self hosting

Abbiamo la volontà di avere una copia di riserva dei nostri dati, di sincronizzare una rubrica e un calendario con un dispositivo mobile e di condividere documenti. Tutto questo possiamo farlo facilmente con dei servizi commerciali, ma non gratuitamente, a costo invece della nostra libertà. Quando i nostri dati vengono sparpagliati e utilizzati come risorse per creare profitto, subiamo un danno all'integrità del nostro sé digitale.

Self hosting significa gestire autonomamente uno spazio digitale. Si può fare anche in gruppo e collettivizzare le risorse e i costi. È meno facile che usare i servizi commerciali, ma forse il paragone non è giusto. La guida per coltivare un orto non ha senso che si difenda dicendo: "è meno facile che andare al supermercato.."

Di seguito una guida su come offrire servizi utili da una macchina di casa affacciata alla rete. In particolare per la costruzione di un server dove far girare Nextcloud per la condivisione documenti, rubrica e calendario, un wiki e un blog per la scrittura e fare un backup.

Requisiti

  • Avere un IP pubblico. È obbligatorio darlo da parte del gestore, ma a volte è necessario chiederlo esplicitamente
  • Utilizzare un Pc con almeno 40 Gb di disco e 1 Gb di RAM

Scaletta

  • Fare un buco nel firewall del hag/router per far passare la porta 22 e 443
  • Scaricare, verificare e installare Debian, senza interfaccia grafica
  • Creare un utente e disattivare l'accesso ssh al root
  • Creare una chiave ssh per collegarsi a debian in maniera sicura
  • Assegnare a debian, attraverso il router, un IP statico nella sottorete
  • Installare ntp per sincronizzare l'ora
  • Installare e configurare ufw firewall, aprendo le porte 22 e 443
  • Installare postfix, local only
  • Installare e configurare apache
  • Installare e configurare php
  • Creare una chiave SSL con LetsEncrypt
  • Installare e configurare MariaDB
  • Installare e configurare Nextcloud
  • Installare e configurare Dokuwiki
  • Installare e configurare Blogxom
  • Installare e configurare Duplicity
  • Hardening: permessi, chroot, suid-suig, fail2ban, rkhunter

Risorse

Liberati dai programmi globali di sorveglianza https://prism-break.org/it

Autistici/Inventati offre ad attivisti, gruppi e collettivi piattaforme per una comunicazione più libera e strumenti digitali per l'autodifesa della privacy, come per esempio email, blog, mailing list, instant messaging e altro. https://www.autistici.org

Consigli

Il computer non ha un cervello, usa il tuo.

Non fidarti troppo di chi ti dà consigli.