OpenBSD

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca
OpenBSD
sistema operativo
Logo
Logo
"OpenBSD 6.0 su PowerPC,
X11 con window manager awesome
"
SviluppatoreThe OpenBSD Project
FamigliaUnix-like (BSD)
Release iniziale2.0 (1º ottobre 1996)
Release corrente7.5 (5 aprile 2024)
Tipo di kernelMonolitico
Piattaforme supportatealpha, amd64, IA-32, ARMv7, landisk, luna88k, octeon, PowerPC, sgi, sparc64
Gestore dei pacchettiOpenBSD package management[1]
Interfacce graficheKorn shell, cwm X11
Spazio utenteBSD
LicenzaBSD, ISC, ATU[2] e altri tipi[3]
Stadio di sviluppoin produzione
Sito webwww.openbsd.org/

OpenBSD è un sistema operativo libero, open source, multipiattaforma, di tipo unix-like, derivato dalla Berkeley Software Distribution (4.4BSD)[4]. Nasce nel 1995 circa grazie a Theo de Raadt, che gestisce il progetto da Calgary in Canada. Il logo nonché la mascotte del progetto è Puffy, un Tetraodontidae, comunemente noto come pesce palla. Il team di sviluppo concentra i propri sforzi sulla portabilità, sulla standardizzazione e la correttezza del codice sorgente, sulla sicurezza proattiva[5] e su un sistema di crittografia integrato: a tal proposito basti pensare che OpenSSH è stato creato ad-hoc proprio per OpenBSD e dal medesimo team di sviluppo. I punti di forza pertanto possono essere individuati nell'estrema cura sia della correttezza sia della sicurezza del codice sorgente, nonché nella qualità della documentazione a supporto del progetto stesso; la gestione iniziale del sistema, così come l'installazione, sono affidate alla shell di default ksh (Korn shell).

OpenBSD developers at c2k1 hackathon at MIT

Storia[modifica | modifica wikitesto]

L'idea della realizzazione di un nuovo sistema operativo prende corpo nel 1995 grazie all'informatico Canadese di origine sudafricana, Theo de Raadt, residente a Calgary nello stato di Alberta, a quel tempo già cofondatore nonché senior developer di NetBSD, il quale si allontanò dal gruppo di lavoro nel 1994, dopo non precisati dissidi interni alla squadra[6].

La fase iniziale del progetto attirò numerosi sviluppatori da tutto il mondo, interessati alla realizzazione di un sistema operativo, BSD derivato, che ponesse al centro del sistema stesso la sicurezza. I primi accorgimenti furono di lavorare in un repository CVS (Concurrent Versions System) pubblico in sola lettura in modo tale che il codice fosse sempre a disposizione di chiunque volesse visionarlo. Il primo commit, ovvero lo stato iniziale di un progetto allorquando i file che contraddistinguono il software sono inseriti nel ramo principale, è stato di fatto l'immissione in OpenBSD dell'albero dei sorgenti di NetBSD, ed è datato sabato 14 ottobre 1995 alle 16:36 UTC-7. Il 18 ottobre 2015, con la pubblicazione della versione 5.8, OpenBSD ha festeggiato venti anni di vita.[7][8]

15 ottobre 2015 versione 5.8 di OpenBSD - Gli sviluppatori del sistema operativo festeggiano i 20 anni di attività del progetto

Descrizione[modifica | modifica wikitesto]

Il sistema operativo OpenBSD è largamente utilizzato sia dagli ISP (Internet Service Provider) sia nei sistemi embedded, è stato il primo Sistema Operativo a implementare il protocollo IPsec (IP security), largamente utilizzato nelle VPN (Virtual Private Network). Resta una delle scelte principali nella realizzazione di sistemi ad elevata sicurezza, come firewall, grazie al suo PF (Packet Filter), nonché nei sistemi di controllo delle intrusioni IDS (Intrusion Detection System), così come nelle soluzioni server o come router.

OpenBSD è usato, così come tutti i sistemi operativi unix-like, anche come workstation[9][10] per l'uso quotidiano, mediante l'installazione del server grafico X.org infatti si può avere un ambiente grafico basato su finestre, sul quale l'utente può scegliere se caricare o un window manager (fluxbox, Awesome, blackbox, Openbox, Enlightenment, etc.) oppure un desktop environment (KDE, GNOME, Xfce). Di default col server grafico X.org il sistema prevede cwm[11], un window manager leggero ma molto efficiente, scritto dal team di sviluppo di OpenBSD e comparso la prima volta nella versione 4.2.

Da FreeBSD, un altro sistema operativo storico della famiglia BSD, ha ereditato il concetto di port[12], che nel corso degli anni è stato adattato[13][14] al progetto e del quale è divenuto un cardine imprescindibile. OpenBSD mette a disposizione degli utenti migliaia di applicazioni binarie precompilate, ovvero ciascun software viene in primis portato sulle diverse architetture, dopodiché si procede alla realizzazione del pacchetto binario per ciascuna di esse. La pacchettizzazione del software è utile agli sviluppatori per tener traccia delle applicazioni che necessitano di aggiornamento, modifica o rimozione. Per ciò che concerne il compilatore predefinito, OpenBSD ha utilizzato sin dall'inizio gcc (GNU Compiler Collection), ossia il compilatore creato da Richard Stallman in seno al Progetto GNU, tuttavia il 3 settembre 2016 sia LLVM (Low Level Virtual Machine) sia clang sono stati caricati[15] nel cvs di OpenBSD, precisamente in current.

Architetture supportate[modifica | modifica wikitesto]

L'installazione del sistema di base risulta essere estremamente solida e al contempo snella, sicché è possibile installarlo anche su piattaforme hardware non particolarmente performanti[16]. Dalla versione 6.0, eccezionalmente[17] pubblicata il 1º settembre 2016, le architetture supportate con continuità risultano essere le seguenti:

  • alpha - Sistemi basati su alpha;
  • amd64 - Sistemi basati su AMD a 64 bit;
  • armv7 - Device basati su ARMv7;[18]
  • arm64 - Vari sistemi a 64-bit basati su ARM;[19]
  • hppa - Sistemi basati su PA-RISC (Hewlett-Packard Precision Architecture);
  • i386 - Sistemi basati su Intel i386 e compatibili;
  • landisk - Sistemi basati su SH4 IO-DATA Landisk;
  • loongson - Sistemi basati su Loongson 2E, 2F;
  • luna88k - Sistemi basati su Omron LUNA-88K, LUNA-88K2;
  • macppc - Sistemi basati su Apple New World PowerPC;
  • octeon - Sistemi basati su Cavium Octeon, MIPS64;
  • sgi - Sistemi basati su SGI MIPS;
  • sparc64 - Sistemi basati su Sun UltraSPARC a 64 bit;

Invece le architetture supportate in passato e che per diverse ragioni non seguono pubblicazioni stabili sono:

  • amiga - Sistemi basati su Amiga e DraCo con supporto MMU;
  • arc - Sistemi ARC compatibili con MIPS R4k e R5k5;
  • armish - Alcuni sistemi basati su ARM;
  • aviion - Sistemi basati su Motorola 881x0 AViiON. prodotti da Data General;
  • cats - Sistemi basati su StrongARM 110;
  • hp300 - SIstemi Hewlett-Packard serie HP 9000, e workstation 300 e 400;
  • hppa64 - Sistemi Hewlett-Packard Precision Architecture (PA-RISC) a 64 bit;
  • mac68k - Sistemi basati su Motorola 680x0 e Apple Macintosh con supporto MMU;
  • mvme68k - Sistemi basati su Motorola 680x0 con supporto VME;
  • mvme88k - Sistemi basati su Motorola 881x0 e supporto VME;
  • palm - PDA basati su Palm/PXA;
  • pegasos - Macchine Pegasos di Genesi Sarl. PowerPC-based, chip VIA sulla scheda madre;
  • pmax - Sistemi Digital basati su MIPS;
  • socppc - Sistemi Freescale PowerPC SoC;
  • solbourne - Sistemi Solbourne IDT Sparc-like S3000, S4000 e S4000DX;
  • sparc - Sistemi classe Sun sun4, sun4c, sun4e e sun4m basati su SPARC;
  • sun3 - Sistemi di classe Sun sun3;
  • vax - Sistemi Digital VAX-based;
  • zaurus - PDA Sharp Zaurus C3x00;

Versioni[modifica | modifica wikitesto]

Il sistema operativo OpenBSD comprende tre versioni[20][21]

  • -release, è la versione del sistema operativo in uscita ogni sei mesi. Corrisponde al set di CD ufficiali, se fossero ancora commercializzati;
  • -stable, è la versione release più le patch di sicurezza o di correzione bug catalogate nella pagina web denominata errata[22][23] del sito web di OpenBSD. Le patch non sono mai particolarmente invasive e solitamente riguardano tutte le architetture;
  • -current, è la versione in continuo sviluppo, utilizzata per lo più dagli OpenBSD developers. Ogni sei mesi la current sarà taggata come la prossima versione. Le modifiche possono essere sostanziali.

Il termine stable è riferito alla stabilità delle API (Application Programming Interface), ovvero le funzioni che consentono la comunicazione tra le applicazioni e il sistema operativo non subiscono modifiche, sicché il sistema per ciò che concerne le chiamate di sistema risulterà e resterà stabile in tal senso fino alla versione successiva. Discorso diverso invece per current, in tal caso infatti le API possono essere aggiornate, rimosse o realizzate di nuove, essa è infatti l'ultima versione disponibile, laddove ciascun sviluppatore contribuisce al miglioramento del sistema operativo. La release infine rappresenta l'immagine della current in un preciso momento. Tra una versione e l'altra gli sviluppatori di OpenBSD pubblicano, per ogni architettura supportata, anche le cosiddette snapshots, che sono una sorta di versione ad interim, caratterizzate dall'essere un'immagine del branch current in un preciso istante. Esse si rivelano particolarmente utili per testare nuove funzionalità o per la correzione di eventuali bug.[24] Possono essere scaricate dagli stessi mirror predisposti al download delle versioni, alla voce snapshots.

Il processo di sviluppo[modifica | modifica wikitesto]

Il processo di sviluppo di OpenBSD vanta una certa libertà e una pressoché totale indipendenza nel design progettuale e delle relative tempistiche, per cui la crescita del sistema risulta essere del tutto autonoma rispetto agli abituali processi di sviluppo software. Tuttavia, nonostante autonomia e libertà, nello sviluppo del sistema operativo spicca la puntualità della pubblicazione di ogni nuova versione (semestrale), grazie a una metodologia produttiva collaudata da oltre vent'anni.[25][26]

Vi è un periodo preparatorio prima che l'immagine di una current possa diventare la nuova pubblicazione ufficiale, tale periodo è definito soft-lock e si protrae nell'arco di circa tre settimane, durante il quale gli sviluppatori non potranno più modificare le API del sistema operativo, purtuttavia lo sviluppo continua, dopodiché si passa alla fase dei build dei packages per ogni tipo di architettura e di seguito viene annunciato il vero e proprio lock. Durante il periodo di lock, che può durare una o due settimane al massimo, si eseguono soltanto operazioni relative al testing e al bugfix del codice, pertanto non è consentito alcun commit. Allorquando anche questa fase sarà portata a termine, sarà creato un nuovo branch nel cvs che identificherà la nuova pubblicazionr stable del sistema operativo, di conseguenza l'albero dei sorgenti tornerà ad essere unlock, ovvero pronto per nuovi aggiornamenti e modifiche. È proprio in questo periodo peraltro che avvengono le modifiche più consistenti al sistema, che corrisponde alla fase immediatamente successiva all'unlock e in corrispondenza degli hackathon.

Lo sviluppo del sistema operativo non è pianificato mediante una timeline rigorosa, avviene piuttosto a seconda delle esigenze degli sviluppatori che, essendo tutti volontari, offrono il proprio contributo liberamente e senza vincoli, dedicando ciascuno di essi il proprio tempo libero agli aspetti tecnici che maggiormente gli aggradano o rispetto ai quali hanno maggior esperienza. Ogni developer non ha alcuna limitazione rispetto al numero di commit da inoltrare al cvs dell'albero dei sorgenti, tuttavia ciascuna modifica, prima del commit, deve essere sottoposta agli altri sviluppatori per essere valutata e quindi approvata. Tale modo di procedere garantisce che anche il cambiamento più banale sia stato controllato e testato da diversi sviluppatori.

Sicurezza[modifica | modifica wikitesto]

Uno standard di sicurezza così elevato è stato raggiunto mediante un processo capillare di Code Audit[27], il team OpenBSD infatti è fortemente focalizzato verso un modello di sicurezza robusto, unito al tipico modello di sviluppo aperto. Nel mondo dei sistemi operativi, quelli Unix in particolare, OpenBSD è stato il primo a far proprio il concetto di full disclosure, cioè l’esposizione totale, mediante forum, mailing-list, siti e quant'altro, dei problemi relativi a difetti o bug del software. In seno ai core developers, infatti, vi è un team di audit composto da alcuni sviluppatori che si occupano, quotidianamente, di analizzare riga per riga il codice sorgente del sistema operativo, cercando bug e vulnerabilità. Grazie a questo processo è stato possibile scoprire nuove categorie di problemi legati alla sicurezza, facendo in tal modo da apripista verso un nuovo modo di concepire lo sviluppo dei sistemi operativi stessi. I risultati sono talmente evidenti che OpenBSD si è guadagnato sul campo l’appellativo di "secure by default".

Dalla versione 6.0 è stata eliminata, per ragioni di sicurezza, l'emulazione binaria con Linux[28][29]. Dalla versione 6.1 dell'11 aprile 2017 è stato aggiunto, nei mirror che lo prevedono, il supporto di default ad https (HyperText Transfer Protocol over Secure Socket Layer)[30][31], al fine di garantire maggior sicurezza allorquando si scaricano i file necessari per l'installazione o l'aggiornamento il sistema operativo.

Il caso delle presunte backdoor dell'FBI[modifica | modifica wikitesto]

L' 11 dicembre 2010 Gregory Perry inviò una email a Theo de Raadt, dichiarando che l'FBI nei 10 anni appena trascorsi avrebbe pagato alcuni sviluppatori OpenBSD per inserire diverse backdoor nell'altrimenti inespugnabile codice del Framework Crittografico IPsec. Theo de Raadt seppur scettico rispetto al contenuto della email, la rese pubblica il 14 dicembre 2010[32], inoltrandola alla mailing list openbsd-tech così come a molti sviluppatori, al fine di effettuare un dettagliato controllo indipendente del codice del modulo IPsec. Nelle settimane seguenti non fu trovata alcuna backdoor[33], ma comunque il controllo accurato del framework permise di effettuare alcuni bugfix del codice migliorandolo ulteriormente.[34][35][36]

Slogan[modifica | modifica wikitesto]

Lo slogan di OpenBSD è stato, fino al 2002, "nessun buco di sicurezza in quasi 6 anni". Poi a causa di un exploit scoperto in OpenSSH, ovvero nel sistema di crittografia integrata su cui si basa OpenBSD, lo slogan è stato cambiato in: "un singolo buco di sicurezza remoto con l'installazione di default in oltre 8 anni", fino ad arrivare all'attuale "Solamente due buchi di sicurezza remoti con l'installazione di default da un casino di tempo!" (Only two remote holes in the default install, in a heck of a long time!), performance comunque di primissimo piano ed inavvicinabili per la gran parte degli altri sistemi operativi.

Innovazioni software[modifica | modifica wikitesto]

Il sistema di base di OpenBSD comprende diverso software creato e mantenuto, dal 1995 ad oggi, dal team di sviluppo, spesso peraltro tali innovazioni, nel corso degli anni, sono diventate di uso comune anche su altri sistemi operativi, specie nell'ambito della sicurezza. Taluni software infatti sono stati totalmente integrati sia in diverse varianti di BSD, sia in altri sistemi unix-like.

Si annoverano tra i software maggiormente utilizzati, sia in ambito server sia in ambito desktop, i seguenti:

  • OpenSSH, chiamato anche OpenBSD Secure Shell, è una suite di programmi (ssh, scp, sftp, sshd) per il protocollo SSH (SSH File Transfer Protocol o SFTP) atti alla protezione della sessione di rete mediante la cifratura del traffico. Consente diversi metodi di autenticazione e di tunneling sicuro. È stato creato nel 1999 e integrato l'anno stesso nella versione 2.6 di OpenBSD. Nasce come alternativa open source a Secure Shell suite, scritto da T.Ylönen della SSH Communications Security, divenuto nel frattempo proprietario.[37]
  • OpenSMTP, è un server per il protocollo SMTP (Simple Mail Transfer Protocol), così come definito nella RFC 5321[38], con una sintassi molto simile a PF. È stato importato nei repository di OpenBSD il 1º novembre 2008 e pubblicato con la versione 4.6 di OpenBSD. È snello, affidabile e sicuro, consente infatti una netta separazione dei privilegi, inoltre è in grado di gestire grandi code nel minor tempo possibile.[39]
  • OpenNTPD, è un'implementazione libera e facile da usare del protocollo NTP (Network Time Protocol). Consente la sincronizzazione dell'orologio del sistema (ora locale) con uno o più time server remoti utilizzando il Network Time Protocol, può agire peraltro esso stesso come un time server, ovvero ridistribuendo l'ora locale. È stato importato in OpenBSD il 31 maggio 2004 e pubblicato per la prima volta con OpenBSD 3.6.[40]
  • OpenIKED, è un'implementazione libera del protocollo IKEv2 (Internet Key Exchange Protocol Versione 2), che consente la mutua autenticazione tra due nodi, stabilisce e gestisce politiche di sicurezza IPsec VPN, negoziando tutti i parametri necessari per stabilire una o più security association (SA) mediante chiavi temporanee. Il protocollo IKEv2 è definito nella RFC 5996[41]. È stato integrato nella versione 4.8 di OpenBSD, pubblicata il 1º novembre 2010.[42]
  • OpenBGPD, è una implementazione libera del protocollo di routing BGP (Border Gateway Protocol) versione 4, così come definito nella RFC 4271[43]. Di fatto consente a un generico computer di essere utilizzato come se fosse un router, ovvero di scambiare dati[44] con altri router parlando la lingua BGP. A corredo di OpenBGPD è stato creato anche OpenOSPFD, ossia un'implementazione con licenza ISC del protocollo OSPF (Open Shortest Path First), RFC 2328[45], una suite di software per il network routing. Utilizzata principalmente come demone di OpenBGPD. È stato importato nei repository CVS il 17 dicembre 2003 e pubblicato con la versione OpenBSD 3.5 del 1º maggio 2004.[46]
  • LibreSSL, è una versione open source del protocollo TLS (Transport Layer Security), così come definito dalla RFC 5246[47]. È un fork dello stack TLS/crypto di OpenSSL, il cui scopo è di ammodernare il codice sorgente di base, migliorare la sicurezza e applicare le moderne pratiche di sviluppo software. Il progetto è iniziato il 13 aprile 2014 e pubblicato con la versione 5.6 di OpenBSD.[48]
  • PF (Packet Filter), è il firewall di default di OpenBSD. Il packet filtering (filtraggio di pacchetti) è un meccanismo di sicurezza che agisce controllando e selezionando i dati che transitano da e verso una rete. La selezione del traffico permesso o proibito viene effettuata in base all’esame dei pacchetti in transito sul sistema che agisce da filtro. È stato importato in OpenBSD il 24 giugno 2001 e pubblicato il 1º dicembre 2001 con la versione 3.0.[49][50][51]
  • AnonCVS, il CVS anonimo è meccanismo avanzato per la distribuzione in rete del codice sorgente[52], è costruito sopra il sistema di controllo revisione CVS. Consente accessi sicuri, in sola lettura e anonimi a repository CVS. OpenBSD lo utilizza per mantenere aggiornata la copia locale dei sorgenti rispetto ai cambiamenti che gli sviluppatori possono effettuare nel codice stesso. È stato creato da Chuck Cranor e Theo de Raadt nel 1995, sicché fa parte del progetto OpenBSD sin dalla prima versione.
  • tmux, è un terminal multiplexer[53] ossia un'applicazione che consente di utilizzare più terminali simultaneamente, permettendo a ciascun utente l'esecuzione di applicazioni in modo persistente, anche in remoto, sfruttando su ciascuno di essi l'output di riferimento. È diventato talmente popolare nel corso degli anni da essere considerato software di base nella maggior parte dei sistemi Unix-like. Il progetto nasce nel 2007 come alternativa moderna a GNU Screen[54], importato in OpenBSD il 1º giugno 2009 e pubblicato nella versione 4.6 del 1º maggio 2009.[55]
  • mandoc, è una suite di programmi per l'impaginazione di documentazione scritta in roff, ossia il linguaggio utilizzato storicamente per la formattazione delle pagine di manuale (manpage) dei sistemi BSD e in genere dei sistemi Unix e unix-like. Lo sviluppo del progetto ha visto la luce nel 2008, dopo la fase di sviluppo è stato importato nei repository CVS il 6 aprile 2009 e pubblicato con la versione 4.8 del sistema operativo.[56]
  • dhcpd, è l'abbreviazione di demone DHCP (Dynamic Host Configuration Protocol). Permette a un host di una rete tcp/ip di richiedere l'assegnazione automatica di un nuovo indirizzo ip, consente peraltro l'inoltro di informazioni circa la rete a cui l'host è connesso. Progetto iniziato nel 1995, importato in OpenBSD il 13 aprile 2004 e pubblicato per la prima volta con la versione 3.6 del 1º novembre 2004.[57]
  • spamd, è un demone anti spam leggero e particolarmente efficiente, infatti lavora direttamente sulle connessioni SMTP (Simple Mail Transfer Protocol) e il compito principale è di bloccare le e-mail false (fake-mail). È stato scritto per lavorare in congiunzione con PF (Packet Filter)[58], per cui risulta essere particolarmente indicato nei sistemi POSIX. Sviluppato inizialmente da Bob Beck, è stato importato in OpenBSD il 21 dicembre 2002 e pubblicato l'anno seguente con la versione 3.3 del sistema operativo.[59]

Pubblicazione e distribuzione[modifica | modifica wikitesto]

Dalla versione 2.1 del 1997 la nuova versione stabile del sistema operativo segue una pubblicazione semestrale, e dal 2001 le date di tale pubblicazione sono state fissate al 1º maggio e al 1º novembre, tuttavia possono essere soggette a variazioni. È possibile ottenere la nuova versione di OpenBSD scaricando un'immagine ISO da uno dei tanti mirror[60] attivi in ciascuno dei cinque continenti, dopodiché la si masterizza e infine si esegue il boot dal CD-ROM per l'installazione del sistema. Da notare che l'introduzione delle immagini ISO è relativamente recente, è stata introdotta infatti solo dalla versione 4.2 del 1º novembre 2007, prima di questa data si sarebbero dovute scaricare tutte le componenti software necessarie affinché ogni utente potesse costruirsi da solo l'immagine ISO per l'installazione.

A contorno della versione ufficiale il progetto OpenBSD ha messo disposizione degli utenti, sin dalla versione 2.1 del 1º giugno 1997, un set di CD ufficiali con un design personalizzato ad ogni nuova pubblicazione, in tal modo ciascun utente sarebbe stato libero di contribuire fattivamente al sostentamento del progetto acquistando il cofanetto coi CD ufficiali; a tal proposito, dal 2014, è stato aperto un nuovo portale[61] dedicato esclusivamente all'archiviazione e alla commercializzazione dei CD ufficiali nonché al materiale relativo al sistema operativo stesso, che consiste in t-shirt, poster e altro. Tuttavia, dalla versione 6.1, la commercializzazione dei CD è stata sospesa, per cui la 6.0 è stata l'ultima versione a poter contare sui CD ufficiali. La decisione è stata presa in seno al progetto da Theo de Raadt in persona, per diverse ragioni[62], non ultima quella economica.

Fondazione e donazioni[modifica | modifica wikitesto]

Le donazioni un tempo avvenivano come regali al fondatore del progetto Theo de Raadt ossia ad una persona unica, tale fattispecie nel corso degli anni si è rivelata complessa dal punto di vista amministrativo, soprattutto in considerazione delle donazioni derivanti da aziende che avrebbero dovuto motivare legalmente una spesa verso un singolo individuo, pertanto, per ovviare a questo inconveniente, dal 2007 è stata istituita la OpenBSD Foundation[63], registrata in Canada come una "Canadian Federally Incorporated Non-Profit", il cui obiettivo è di finanziare tutti i progetti relativi ad OpenBSD.

Quindi le donazioni di ogni ordine e grado sono gestite interamente dalla OpenBSD foundation, che si occupa principalmente della promozione di campagne fondi annuali[64], nonché dell'organizzazione degli Hackathon[65] e di veicolare i fondi necessari ai vari progetti messi in campo da OpenBSD.

Casi particolari[modifica | modifica wikitesto]

Il 17 dicembre 2013 in una accorata e-mail[66] Theo de Raadt chiese pubblicamente aiuto per pagare 20.000 dollari americani di spese elettriche, ovvero il costo annuale per mantenere attiva l'intera infrastruttura, in caso contrario si sarebbe prospettato il concreto rischio, non solo di spegnere le macchine, ma probabilmente di dire la parola fine al progetto OpenBSD stesso.[67] Il problema fu risolto grazie a una donazione di Mircea Popescu[68], sviluppatore Rumeno creatore di MPEx Bitcoin stock exchange, che donò 20.000 dollari in bitcoin alla OpenBSD foundation.[69]

Hackathon[modifica | modifica wikitesto]

hackathon s2k17

Gli hackathon sono dei raduni riservati agli sviluppatori OpenBSD e interamente finanziati dal progetto, la OpenBSD foundation nel caso specifico. Lo scopo degli incontri è lo sviluppo cooperativo, normalmente durano una settimana circa, ma possono anche essere di due o tre giorni. Si svolgono in località sempre diverse nei cinque continenti affinché chiunque possa partecipare. Il progetto OpenBSD dedica da sempre particolare attenzione e risorse agli hackathon, poiché consentono, oltre alla conoscenza diretta dei membri del team, che permette di stabilire importanti relazioni interpersonali, di velocizzare esponenzialmente il processo di sviluppo, nonché di promuovere nuovi progetti o idee.

Il primo hackathon (c99) si è svolto a Calgary nello stato di Alberta (Canada) dal 4 giugno 1999 al 6 giugno 1999, parteciparono all'evento 10 sviluppatori, tra cui Theo de Raadt. L'ultimo incontro, p2k18: (ports and pledge hackathon), si è svolto dal 23 aprile 2018 al 26 aprile 2018 nella città di Nantes (Francia), con 24 sviluppatori. Gli hackathon sono anche un modo per relazionarsi con alcuni degli sviluppatori più attivi, uno di essi è Bob Beck[70][71][72] storico esponente del progetto OpenBSD.

Note[modifica | modifica wikitesto]

  1. ^ (EN) OpenBSD FAQ, OpenBSD Package management, su openbsd.org. URL consultato il 24 aprile 2017.
    «Packages can be easily managed with the help of several utilities»
  2. ^ (EN) cvsweb.openbsd.org, atu-license, su cvsweb.openbsd.org. URL consultato il 23 marzo 2017.
  3. ^ (EN) cvsweb.openbsd.org, tigon-license, su cvsweb.openbsd.org. URL consultato il 23 marzo 2017.
  4. ^ DistroWatch.com: OpenBSD, su distrowatch.com. URL consultato il 28 dicembre 2018.
  5. ^ (EN) OpenBSD Project, OpenBSD Security goal. URL consultato il 7 giugno 2014.
  6. ^ (EN) Adam Glass, Theo De Raadt, su mailing-list netbsd-users, 23 dicembre 1994. URL consultato il 31 marzo 2017.
    «On December 20, Theo de Raadt was asked to resign from the NetBSD Project by the remaining members of 'core'.»
  7. ^ (EN) Theo de Raadt, It was twenty years ago you see..., su mailing-list openbsd-misc, 18 ottobre 2015. URL consultato il 31 marzo 2017.
    «OpenBSD's source tree just turned 20 years old.»
  8. ^ (EN) Slashdot, Celebrating 20 Years of OpenBSD With Release 5.8, su bsd.slashdot.org, 18 ottobre 2015. URL consultato il 31 marzo 2017.
    «20 years to the day after the OpenBSD source tree was created for the new project...»
  9. ^ (EN) Joel Carnat, Using OpenBSD as a workstation, su tumfatig.net, 24 aprile 2011. URL consultato il 1º aprile 2017.
    «There are load of free software that are not open source. And in the OpenBSD world, that makes a huge of a difference»
  10. ^ (EN) Eric Radman, An OpenBSD Workstation, su eradman.com, 28 marzo 2017. URL consultato il 1º aprile 2017.
    «OpenBSD has very good ACPI support, see apmd(8). zzz and ZZZ are shortcuts for suspend and hibernate if apmd is run at startup»
  11. ^ (EN) The OpenBSD project, cwm — a lightweight and efficient window manager for X11, su man.openbsd.org. URL consultato il 2 aprile 2017.
  12. ^ The FreeBSD Project, Info sui Port di FreeBSD, su freebsd.link, 13 novembre 2013. URL consultato il 18 aprile 2017 (archiviato dall'url originale il 12 gennaio 2017).
    «La Collezione dei Port e dei Package di FreeBSD offre un modo semplice di installare le applicazioni per gli utenti e gli amministratori. Attualmente ci sono diverse migliaia di port disponibili.»
  13. ^ (EN) The OpenBSD project, OpenBSD Porter's Handbook, su openbsd.org. URL consultato il 24 aprile 2017.
    «If they are only developing on Linux and feel like ignoring the rest of the Unix world, try to make them change their view»
  14. ^ (EN) The OpenBSD project, Working with ports, su openbsd.org. URL consultato il 24 aprile 2017.
    «The ports tree is a set of Makefiles, one for each third party application»
  15. ^ (EN) OpenBSD Journal, LLVM/Clang imported into -current, su undeadly.org, 4 settembre 2016. URL consultato il 14 maggio 2017.
  16. ^ (EN) The OpenBSD project, Supported Platforms, su openbsd.org. URL consultato il 3 gennaio 2015.
  17. ^ (EN) Theo de Raadt, CVS: cvs.openbsd.org: www, su mailing-list openbsd-cvs, 23 luglio 2016. URL consultato il 31 marzo 2017.
    «the 6.0 release date will come as a surprise»
  18. ^ come ad esempio le schede BeagleBone, BeagleBoard, PandaBoard ES, Cubox-i, SABRE Lite, Nitrogen6x e Wandboard
  19. ^ in particolare le piattaforme di riferimento sono Pine64, Raspberry Pi 3 e Opteron A1100
  20. ^ In seno al progetto OpenBSD le versioni sono definite "flavors"
  21. ^ (EN) The OpenBSD project, OpenBSD's flavors, su openbsd.org. URL consultato il 21 aprile 2017.
  22. ^ In realtà il nome della pagina è composto dalla parola errata più il numero di versione; ad esempio la release 6.0 diventa errata60, la 6.1 diventa errata61, e così via.
  23. ^ (EN) The OpenBSD project, OpenBSD 6.1 Errata, su openbsd.org. URL consultato il 30 aprile 2017.
  24. ^ (EN) The OpenBSD project, Development snapshots, su openbsd.org. URL consultato il 26 aprile 2017.
    «A recent snapshot is usually all you need to run -current.»
  25. ^ (EN) Theo de Raadt, The OpenBSD release process: A success story., su openbsd.org. URL consultato il 4 maggio 2017.
    «Twelve years ago OpenBSD developers started engineering a release process that has resulted in quality software being delivered on a consistent 6 month schedule – 25 times in a row, exactly on the date promised, and with no critical bugs. This on-time delivery process is very different from how corporations manage their product releases and much more in tune with how volunteer driven communities are supposed to function. Developer and testing lazyness is mostly circumvented and leader frustration is kept to a minimum»
  26. ^ Filmato audio (EN) Theo de Raadt, The OpenBSD release process: A success story., su YouTube, bsdconferences. URL consultato il 4 maggio 2017.
  27. ^ (EN) David Jorm, An Overview of OpenBSD Security, in BSD DevCenter, 8 agosto 2000. URL consultato il 20 marzo 2017 (archiviato dall'url originale il 21 marzo 2017).
    «OpenBSD is often noted for its code auditing and integrated crypto, but the security features go far beyond this. OpenBSD was built from the ground up on the model of being a fabric woven with security in mind, not a patchwork of bug fixes and security updates»
  28. ^ (EN) Serdar Yegulalp, OpenBSD 6.0 tightens security by losing Linux compatibility, su infoworld.com, 25 luglio 2016. URL consultato il 29 marzo 2017.
    «The newest version of OpenBSD closes potential security loopholes, such as its Linux compatibility layer»
  29. ^ (EN) OpenBSD Journal, VAX support, Linux emulation, kern.usermount removed., su undeadly.org. URL consultato il 25 marzo 2017.
  30. ^ OpenBSD 6.1, su openbsd.org. URL consultato il 28 dicembre 2018.
  31. ^ BSD Release: OpenBSD 6.1 (DistroWatch.com News), su distrowatch.com. URL consultato il 28 dicembre 2018.
  32. ^ (EN) Theo de Raadt, Allegations regarding OpenBSD IPSEC, su mailing list openbsd-tech, 14 dicembre 2010. URL consultato il 22 marzo 2017.
    «I have received a mail regarding the early development of the OpenBSD IPSEC stack. It is alleged that some ex-developers (and the company they worked for) accepted US government money to put backdoors into our network stack, in particular the IPSEC stack»
  33. ^ (EN) Ryan Paul, OpenBSD code audit uncovers bugs, but no evidence of backdoor, su arstechnica.com, 23 dicembre 2010. URL consultato il 29 marzo 2017.
    «The audit has proved to be a useful exercise for the OpenBSD community, but it has turned up no evidence to support Perry's claim of a government-planted backdoor»
  34. ^ (EN) Ryan Paul, FBI accused of planting backdoor in OpenBSD IPSEC stack, su arstechnica.com, 15 dicembre 2010. URL consultato il 29 marzo 2017.
    «OpenBSD developers often characterize security as one of the project's highest priorities, citing their thorough code review practices and proactive auditing process as key factors that contribute to the platform's reputedly superior security»
  35. ^ (EN) Declan McCullagh, Report of FBI backdoor roils OpenBSD community, su cnet.com, 15 dicembre 2010. URL consultato il 26 marzo 2017.
    «An allegation that the FBI, which has long pressed for back doors into encryption products, surreptitiously placed one into OpenBSD alarms security experts»
  36. ^ Claudio Telmon, Sulle backdoor nello stack IPSEC di OpenBSD, su Sicurezza, ICT e altro, 20 dicembre 2010. URL consultato il 26 marzo 2017.
    «Se vi interessate di sicurezza, vi avrà sicuramente già raggiunti la notizia "bomba" secondo cui delle backdoor sarebbero state volutamente inserite nello stack IPSEC di OpenBSD intorno al 2001»
  37. ^ (EN) The OpenBSD project, OpenSSH - Keeping your communiques secret, su openssh.com. URL consultato il 15 aprile 2017.
  38. ^ (EN) J. Klensin, RFC 5321 - Simple Mail Transfer Protocol, su ietf.org, ottobre 2008. URL consultato il 30 marzo 2017.
  39. ^ (EN) The OpenBSD project, OpenSMTPD is a FREE implementation of the server-side SMTP protocol, su opensmtpd.org. URL consultato il 15 aprile 2017.
  40. ^ (EN) The OpenBSD project, OpenNTPD - Saving the world again ... on time, su openntpd.org. URL consultato il 15 aprile 2017.
  41. ^ (EN) C. Kaufman, Microsoft, P. Hoffman, VPN Consortium, Y. Nir, Check Point, P. Eronen e Independent, RFC 5996 - Internet Key Exchange Protocol Version 2 (IKEv2), su ietf.org, settembre 2010. URL consultato il 30 marzo 2017.
  42. ^ (EN) The OpenBSD project, OpenIKED - Better IPsec VPN, su openiked.org. URL consultato il 24 aprile 2017 (archiviato dall'url originale il 14 maggio 2017).
  43. ^ (EN) Y. Rekhter, T. Li e S. Hares, RFC 4271 - A Border Gateway Protocol 4 (BGP-4), su ietf.org, gennaio 2006. URL consultato il 1º aprile 2017.
  44. ^ in questo caso i router acquisiscono informazioni sulle reti o dinamicamente attraverso i protocolli di routing oppure manualmente attraverso le static routes
  45. ^ (EN) J. Moy, RFC 2328 - OSPF Version 2, su ietf.org, aprile 1998. URL consultato il 2 aprile 2017.
  46. ^ (EN) The OpenBSD project, OpenBGPD is a FREE implementation of the Border Gateway Protocol, Version 4., su openbgpd.org. URL consultato il 24 aprile 2014.
  47. ^ (EN) T. Dierks, Independent, E. Rescorla e RTFM, Inc., The Transport Layer Security (TLS) Protocol Version 1.2, su ietf.org, agosto 2008. URL consultato il 2 aprile 2017.
  48. ^ (EN) The OpenBSD project, LibreSSL is a version of the TLS/crypto stack forked from OpenSSL, su libressl.org. URL consultato il 15 aprile 2017.
  49. ^ (EN) The OpenBSD project, OpenBSD PF - User's Guide, su openbsd.org. URL consultato il 9 aprile 2017.
  50. ^ (EN) Peter N. M. Hansteen, Firewalling with OpenBSD's PF packet filter, su home.nuug.no/~peter/, 2016. URL consultato il 9 aprile 2017.
    «This lecture will be about firewalls and related functions, starting from a little theory along with a number of examples of filtering and other network traffic directing»
  51. ^ Stefano Sasso, PF OpenBSD packet filter. Appunti su PF e OpenBSD (PDF), su stefano.dscnet.org, 24 febbraio 2008, p. 59. URL consultato il 9 aprile 2017.
    «Una tabella è usata per contenere un gruppo di indirizzi ipv4 o ipv6. Lookup attraverso tabelle di indirizzi sono più veloci e consumano meno memoria rispetto a lookup di liste»
  52. ^ (EN) Charles D. Cranor e Theo de Raadt, Opening The Source Repository With Anonymous CVS (PDF), su openbsd.org, 1999, p. 9. URL consultato il 4 aprile 2017.
    «By introducing Anonymous CVS, we have extended the concept of open source software projects to open source repository projects»
  53. ^ (EN) Rares Aioanei, An introduction to terminal multiplexers, su linuxconfig.org, 20 aprile 2016. URL consultato il 5 aprile 2017.
    «If you're new to server administration and command-line, perhaps you haven't heard of terminal multiplexers or what they do»
  54. ^ (EN) jason, OpenBSD imports tmux, su undeadly.org - OpenBSD Journal, 7 luglio 2009. URL consultato il 5 aprile 2017.
    «tmux is intended to be a simple, modern, BSD-licensed alternative to programs such as GNU creen»
  55. ^ (EN) the OpenBSD project, tmux (1) terminal multiplexer, su man.openbsd.org, 16 giugno 2016. URL consultato il 5 aprile 2017.
  56. ^ (EN) The OpenBSD project, mdocml = mandoc - UNIX manpage compiler, su mdocml.bsd.lv. URL consultato l'8 aprile 2017.
  57. ^ (EN) The OpenBSD project, Dynamic Host Configuration Protocol, su openbsd.org. URL consultato il 13 aprile 2017.
    «The Dynamic Host Configuration Protocol (DHCP) is a way to configure network interfaces automatically. OpenBSD can be a DHCP server that configures other machines, or a DHCP client that is configured by a DHCP server.»
  58. ^ (EN) Daniel, Annoying spammers with pf and spamd, su benzedrine.ch, 9 giugno 2015. URL consultato il 14 aprile 2017.
    «They should not be able to deliver their mails, and waste as much of their resources as possible attempting to do so.»
  59. ^ (EN) Calomel, Spamd tarpit and greylisting daemon, su calomel.org. URL consultato il 14 aprile 2017 (archiviato dall'url originale il 22 maggio 2017).
    «Spamd is a fake sendmail daemon which rejects mail from spammers or compromised systems. It is designed to be very efficient so it does not impact the receiving machine, but instead puts the burden of proof on the sending machine.»
  60. ^ (EN) The OpenBSD project, OpenBSD mirrors, su openbsd.org. URL consultato il 6 aprile 2017.
  61. ^ (EN) The OpenBSD project, The OpenBSD Store, su openbsdstore.com. URL consultato il 6 aprile 2017.
  62. ^ (EN) Theo de Raadt, Re: ordering, su mailing-list openbsd-misc, 16 aprile 2017. URL consultato il 17 aprile 2017.
    «The decision is not only economical. I don't want the "friction" of trying to achieve high-quality production of collector item data CDs twice a year, in 2017.»
  63. ^ (EN) The OpenBSD foundation, su openbsdfoundation.org. URL consultato il 6 aprile 2017.
  64. ^ (EN) Foundation Activities, su openbsdfoundation.org. URL consultato il 6 aprile 2017.
  65. ^ (EN) OpenBSD Hackathons, su openbsd.org. URL consultato il 7 aprile 2017.
  66. ^ (EN) Theo de raadt, Request for Funding our Electricity, su mailing-list openbsd-misc, 17 dicembre 2013. URL consultato il 10 aprile 2017.
    «Hi everyone. The OpenBSD project uses a lot of electricity for running the development and build machines»
  67. ^ (EN) Michael Larabel, OpenBSD Foundation At Risk Of Shutting Down, su phoronix.com, 15 gennaio 2014.. URL consultato il 10 aprile 2017.
    «But the fact is right now, OpenBSD will shut down if we do not have the funding to keep the lights on»
  68. ^ (EN) Klint Finley, Bitcoin Baron Keeps a Secretive Open Source OS Alive, su wired.com, 22 gennaio 2014. URL consultato il 10 aprile 2017.
    «One of the world’s longest-running open source software projects will live on, thanks to a Romanian bitcoin baron.»
  69. ^ (EN) Peter Bright, OpenBSD rescued from unpowered oblivion by $20K bitcoin donation, su arstechnica.com, 20 gennaio 2014. URL consultato il 10 aprile 2017.
    «Electricity bill will be paid after intervention from the MPEx Bitcoin stock exchange.»
  70. ^ (EN) Bob Beck, su twitter.com. URL consultato il 7 aprile 2017.
  71. ^ (EN) OpenBSD Developer Bob Beck Interviewed on BSDTalk, su undeadly.org, 26 maggio 2014. URL consultato il 7 aprile 2017.
    «In episode 241 of bsdtalk, Bob Beck is interviewed about the OpenBSD Foundation, his ongoing OpenBSD hacking, hackathons, and, of course, LibreSSL»
  72. ^ (EN) e2k17 Nano hackathon report from Bob Beck, su undeadly.org, 5 aprile 2017. URL consultato il 7 aprile 2017.
    «While the world largely wasn't looking, there was a nano hackathon last month, Hackathon report - e2k17 Hackathon, Edmonton Alberta. Bob Beck writes..»

Bibliografia[modifica | modifica wikitesto]

Voci correlate[modifica | modifica wikitesto]

Altri progetti[modifica | modifica wikitesto]

Collegamenti esterni[modifica | modifica wikitesto]

Controllo di autoritàVIAF (EN180371448 · LCCN (ENn2003002707 · GND (DE4791366-6 · J9U (ENHE987007381877105171