# Server domestico

Un server casalingo (in inglese home server) è un server ubicato in una residenza privata che fornisce servizi ad altri dispositivi all'interno o all'esterno della casa attraverso una rete domestica o Internet. Questi servizi possono includere risorse condivise (come dischi di rete o stampanti), un home theater, controllo della domotica, ospitare un sito web (nella LAN o su Internet), web caching, condivisione e sincronizzazione di files, videosorveglianza e videoregistrazione digitale, un calendario con condivisione e sincronizzazione dei contatti, autenticazione di account e servizi di backup. in tempi recenti è diventato molto comune far girare decine di applicazioni come containers, isolati dal sistema operativo host (utilizzando software come docker).
A causa del numero relativamente basso di computer sulla rete domestica media, solitamente, un server domestico non necessita di una grande potenza di calcolo. Un server domestico può essere implementato con uno stile fai da te ridando vita ad un vecchio computer, o con un plug computer; in commercio esistono anche server domestici preconfigurati. Spesso vengono usati gruppi di continuità perché in caso di blackout i dati potrebbero corrompersi.

## Servizi forniti dai server domestici
### Amministrazione e configurazione

Gli home server sono spesso headless, e possono essere amministrati da remoto attraverso una shell di comando o graficamente attraverso un sistema di desktop remoto come RDP, VNC, Webmin, Apple Remote Desktop e molti altri.
Alcuni sistemi operativi per server domestici (come Windows Home Server) includono a un'interfaccia utente (GUI) per il setup e la configurazione disponibile sui PC nella rete locale (e remotamente attraverso Internet tramite accesso remoto). Altri sistemi permettono semplicemente che gli utenti possano usare i sistemi nativi del sistema operativo per la configurazione.

### Archiviazione centralizzata

Gli home server vengono spesso usati come network-attached storage (NAS) con il vantaggio rispetto ai servizi cloud che tutti i files dell’utente possono essere immagazzinati in maniera sicura e centralizzata, con permessi flessibili su di essi. Questi files sono facilmente accessibili da qualsiasi altro dispositivo sulla rete provvisto di credenziali corrette. Questo si applica anche alle stampanti condivise.
Questi files possono anche essere condivisi su Internet per essere accessibili da ovunque nel mondo usando l’accesso remoto.

### Server media

I server domestici sono spesso usati per ospitare contenuti multimediali, come foto, musica, e video ad altri dispositivi nella rete (o anche su internet; vedi Space shifting, Tonido e Orb). Usando protocolli standard come DLNA o sistemi proprietari come iTunes, gli utenti possono accedere ai loro media immagazzinati nel server da ovunque nella casa. Windows XP Media Center Edition, Windows Vista, e Windows 7 possono essere usati come home server, supportando un tipo particolare di serving che trasmette l’esperienza interattiva dell’utente ai Media Center Extenders che includono la Xbox 360.
Windows Home Server supporta lo streaming di media alla Xbox 360 e ad altri ricevitori media basati su DLNA attraverso la tecnologia Windows Media Connect integrata. Alcuni produttori di dispositivi Windows Home Server, come HP, hanno esteso questa funzionalità con una implementazione DLNA completa come i server PacketVideo TwonkyMedia.
Ci sono molti programmi open-source e completamente funzionanti per server media su Linux. LinuxMCE è un esempio, che permette ad altri dispositivi di caricare un’immagine hard disk sul server, permettendogli di diventare applicativi come set-top boxes. Asterisk, Xine, MythTV (un’altra soluzione media server), VideoLAN, SlimServer, DLNA, e molti altri progetti open source sono completamente integrati per un’esperienza completa di home theater/automazione.
Sui server Apple Macintosh, le opzioni includono iTunes, PS3 Media Server, ed Elgato. In più, per i Mac collegati direttamente alle TV, Boxee può funzionare come un’interfaccia media server completa.
I server sono anche tipicamente usati collegati ad un’antenna TV o radio per registrare ad orari pianificati.
Alcuni home servers permetto l’accesso remoto ai contenuti media.

### Accesso remoto

Un server domestico può essere usato per fornire accesso remoto ai dispositivi in casa attraverso Internet, usando software di Desktop remoto e altri software di amministrazione remota. Per esempio, Windows Home Server fornisce l’accesso remoto ai files immagazzinati sull’home server attraverso un’interfaccia web e l’accesso remoto alle sessioni Remote Desktop sui PC nella casa. Analogamente, Tonido fornisce accesso diretto attraverso browser web tramite Internet senza richiedere port forwarding o altre impostazioni. Alcuni appassionati spesso usano anche tecnologie VPN.
Sui server Linux vengono principalmente usati due strumenti (fra i tanti): VNC e Webmin. VNC permette ai clients di visualizzare virtualmente una GUI desktop come se si trovasse fisicamente di fronte al server. Una GUI non deve necessariamente girare su server perché questo avvenga; possono esserci multipli desktop 'virtuali' aperti allo stesso tempo. Webmin permette agli utenti di controllare vari aspetti della configurazione e dalla manutenzione del server da una semplice interfaccia web. Si può accedere e configurare questi servizi da ovunque su Internet.
È anche possibile accedere remotamente ai server usando i protocolli da linea di comando Telnet e SSH.

### Web serving

Vedi anche: Comparazione di software server
Alcuni utenti scelgono di far girare un web server con lo scopo di condividere files facilmente e pubblicamente (o privatamente, sulla rete locale). Altri impostano delle pagine web e le rendono disponibili da casa loro, anche se questo potrebbe violare alcuni termini di servizio dell’ISP. A volte questi server girano su una porta non standard per aggirare il blocco dell’ISP. Due esempi di home server usati sugli home servers sono Apache e IIS.

#### Proxy web

Alcune reti hanno un proxy HTTP che può essere usato per velocizzare l’accesso al web quando più utenti visitano lo stesso sito, e per superare il blocco software quando l’utente usa la rete di istituzioni che potrebbero bloccare alcuni siti. I proxy pubblici sono spesso lenti e poco affidabili e per questo molti investono il loro tempo per crearne uno privato.
Alcuni proxy possono essere configurati per bloccare siti web sulla rete locale impostandoli come transparent proxy.

### E-mail

Su molti home servers girano anche server e-mail che gestiscono le e-mail per il dominio del proprietario. I vantaggi rispetto ai servizi e-mail commerciali sono lo spazio di archiviazione e la grandezza massima dei messaggi maggiori. Accedere al server, visto che si trova sulla rete locale, è più veloce rispetto all’uso di un servizio esterno. Questo aumenta anche la sicurezza delle e-mail in quanto non si trovano su un server off-site.

### BitTorrent

I server domestici sono ideali per l’utilizzo del protocollo BitTorrent in quanto lo scaricamento e il seeding dei files ad alcuni torrent potrebbe impiegare giorni, o anche settimane per completare l’operazione e avere una connessione migliore ed ininterrotta. Esistono molti client da linea di comando come rTorrent e altri con interfaccia web come TorrentFlux e Tonido per questi utilizzi. BitTorrent rende anche più facile distribuire files di grandi dimensioni su Internet per gli utenti con banda limitata.

### Gopher

Articolo principale: Gopher (protocollo)
Un servizio poco conosciuto è il protocollo Gopher, un protocollo per visualizzare documenti ipertestuali che fu creato prima del World Wide Web ed era popolare nei primi anni 90. Molti dei server Gopher rimanenti girano su server domestici usando PyGopherd e il server Gopher Bucktooth.

### Domotica

Per usare servizi di domotica è necessario un dispositivo in casa disponibile 24/7. Molto spesso i controller per l’automazione girano su home server (ad esempio su un container di Home Assistant).

### Videosorveglianza

Esistono soluzioni CCTV DVR a costo relativamente basso in modo che i video registrati dalle telecamere vengano archiviati su un home server a scopo di sicurezza. Il video potrà poi esser visto sui PC o su altri dispositivi della casa.
Una serie di webcam USB economiche possono essere connesse ad un home server per creare un sistema CCTV fai-da-te. A seconda delle necessità queste immagini e questi stream video possono essere resi disponibili su Internet usando i protocolli standard.

### Applicazioni per la famiglia

Gli home servers possono ospitare applicazioni “per la famiglia” come un calendario, una lista delle cose da fare e una lavagna per i messaggi.

### IRC e messaggistica istantanea

Visto che il server è sempre acceso, un client IRC o IM fatto girare sulla macchina sarebbe sempre disponibile su Internet. In questo modo, la chat del client potrà registrare le attività anche mentre l’utente non è al computer, ad esempio mentre dorme o si trova al lavoro o a scuola. Quassel fornisce una versione specifica per questo tipo di utilizzo. Gli home servers possono anche essere usati per ospitare server XMPP e server IRC personali in quanto questi protocolli possono supportare molti utenti con molta poca larghezza di banda.

### Gaming online

Alcuni giochi multiplayer come Continuum, Tremulous, Minecraft, e Doom hanno server software disponibili per gli utenti per creare un game server personale. Alcuni sono protetti da password, per permettere solo ad alcune persone di entrare come ad esempio i membri di un clan o i giocatori in lista bianca. Altri sono aperti al pubblico possono ospitare housing o altre forme di hosting privato se riescono ad ospitare molti utenti.

### Social network federati

Gli home server possono ospitare social network federati distribuiti come Diaspora e GNU Social. Protocolli federati come ActivityPub permettono a tanti piccoli server domestici di interagire in modo da essere indistinguibili dai grandi social network tradizionali. La federazione non è limitata ai soli social networks. Molti servizi web liberi e open source vengono sviluppati in modo da permettere alle persone di hostare i loro video, foto, blog etc. continuando a partecipare alla grande rete federata.

### Piattaforme di terze parti

Gli home servers sono piattaforme che spesso permettono a prodotti di terze parti di essere costruiti e aggiunti nel tempo. Ad esempio, Windows Home Server fornisce un Software Development Kit. In maniera simile, Tonido fornisce un’applicazione che può essere estesa scrivendo nuove applicazioni sul loro SDK.

## Sistemi operativi

Gli home servers usano vari sistemi operativi. Gli appassionati che assemblano i loro home server usano qualsiasi OS sia convenientemente disponibile o familiare a loro, ad esempio Linux, Microsoft Windows, BSD, Solaris o Plan 9 from Bell Labs.

## Hardware

I computer a scheda singola (come ad esempio Raspberry PI) vengono sempre più usati sugli home servers, tra cui molti dispositivi ARM (solitamente potenti circa quanto uno smartphone). Vecchi desktop e laptop possono essere recuperati ed usati come home servers.