la_vecchia_wiki_moinmoin/server_whatToDo.html

81 lines
30 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title>server-whatToDo</title>
<link rel="stylesheet" type="text/css" media="all" charset="utf-8" href="acaro/css/common.css">
<link rel="stylesheet" type="text/css" media="screen" charset="utf-8" href="acaro/css/screen.css">
<link rel="stylesheet" type="text/css" media="print" charset="utf-8" href="acaro/css/print.css">
<style type="text/css">
ul.pagetitle{
display: inline;
margin: 0;
padding: 0;
font-size: 1.5em;
}
li.pagetitle{
display: inline;
margin: 0;
}
td.noborder {
border: 0;
}
</style>
</head>
<body>
<table>
<tr>
<td class="noborder">
<img src="logo.png" width="85" height="85">
</td>
<td class="noborder">
<ul class="pagetitle">
<li class="pagetitle"><a class="backlink">server-whatToDo</a>
</ul>
<br><br>
[<a href="FrontPage.html">FrontPage</a>]
</td>
</tr>
</table>
<hr>
<div id="page">
<div dir="ltr" id="content" lang="it"><span class="anchor" id="top"></span>
<span class="anchor" id="line-1"></span><span class="anchor" id="line-2"></span><span class="anchor" id="line-3"></span><span class="anchor" id="line-4"></span><p class="line867">
<h1 id="Organizzazione_e_gestione_del_nuovo_server">Organizzazione e gestione del nuovo server</h1>
<span class="anchor" id="line-5"></span><span class="anchor" id="line-6"></span><p class="line874">Questa pagina e' stata creata per la strutturazione della nuova macchina, in <span class="anchor" id="line-7"></span>essa troverete una descrizione generale che ne delinea il funzionamento e il <span class="anchor" id="line-8"></span>dettaglio di come funzionano i singoli aspetti. <span class="anchor" id="line-9"></span><span class="anchor" id="line-10"></span><p class="line874">Nella parte finale sono raccolte tutte le idee su applicativi, servizi e quant'altro <span class="anchor" id="line-11"></span>che ci piacerebbe avere in funzione sulla nuova macchina. <span class="anchor" id="line-12"></span><span class="anchor" id="line-13"></span><span class="anchor" id="line-14"></span><span class="anchor" id="line-15"></span><p class="line867">
<h2 id="HOST_Mafalda">HOST Mafalda</h2>
<span class="anchor" id="line-16"></span><span class="anchor" id="line-17"></span><p class="line874">E' la macchina principale su cui gira una distro debian buster, ha due hard disk <span class="anchor" id="line-18"></span>di 3T connessi in raid0 (md0 /boot - md1 all) nella parte md1 e stato creato un volume <span class="anchor" id="line-19"></span>criptato a sua volta gestito con lvm ovvero un unico Volume groups (VGs - vg0) e <span class="anchor" id="line-20"></span>al momento un unico Logical volume (LVs root) contenente la root / con dimensione di 300G. <span class="anchor" id="line-21"></span><span class="anchor" id="line-22"></span><p class="line874">La macchina principale e utilizzata per operare con macchine virtuali tramite <span class="anchor" id="line-23"></span>libvirt con la classica gestione qemu/kvm. <span class="anchor" id="line-24"></span><span class="anchor" id="line-25"></span><p class="line867"><a class="https" href="https://git.abbiamoundominio.org/blallo/mafalda_how_to">Qui alcuni appunti sull'installazione</a> <span class="anchor" id="line-26"></span><span class="anchor" id="line-27"></span><p class="line874">Il nome Mafalda è un omaggio a Quino, il disegnatore argentino morto in quei giorni. <span class="anchor" id="line-28"></span><span class="anchor" id="line-29"></span><p class="line867">
<h3 id="Note">Note</h3>
<span class="anchor" id="line-30"></span><p class="line874">Salvo eccezioni la macchina HOST servira come ponte verso le VM <span class="anchor" id="line-31"></span><span class="anchor" id="line-32"></span><p class="line874">Cosa far girare sulla macchina host? <span class="anchor" id="line-33"></span><span class="anchor" id="line-34"></span><p class="line874">... <span class="anchor" id="line-35"></span><span class="anchor" id="line-36"></span><p class="line874">Tutte le modifiche "importanti" apportate alla macchina devo essere registrate e <span class="anchor" id="line-37"></span>documentate, attualmente abbiamo una directory ~/documetation/ suddivisa in <span class="anchor" id="line-38"></span>sottodirectory delle categorie sembra un buon metodo. <span class="anchor" id="line-39"></span><span class="anchor" id="line-40"></span><p class="line874">Esiste un modo migliore per documentare e tener traccia dei <span class="anchor" id="line-41"></span>lavori/modificheu sul server?. <span class="anchor" id="line-42"></span><span class="anchor" id="line-43"></span><p class="line874">... <span class="anchor" id="line-44"></span><span class="anchor" id="line-45"></span><p class="line867">
<h3 id="Problemi">Problemi</h3>
<span class="anchor" id="line-46"></span><p class="line867"><strong>Assenza gestione utenti.</strong> <span class="anchor" id="line-47"></span><span class="anchor" id="line-48"></span><p class="line874">Non esiste una gestione degli utenti, credo sia un problema per la <span class="anchor" id="line-49"></span>personalizzazione del proprio accesso shell,script,variabili... e per la <span class="anchor" id="line-50"></span>sicurezza visto che ti costringe ad avviare qualsiasi eseguibile con i massimi <span class="anchor" id="line-51"></span>privilegi. <span class="anchor" id="line-52"></span><span class="anchor" id="line-53"></span><p class="line874">... <span class="anchor" id="line-54"></span><span class="anchor" id="line-55"></span><span class="anchor" id="line-56"></span><p class="line867"><strong>Organizzazione firewall.</strong> <span class="anchor" id="line-57"></span><span class="anchor" id="line-58"></span><p class="line874">Andrebbe ripensato il firewall. <span class="anchor" id="line-59"></span><span class="anchor" id="line-60"></span><p class="line874">Partendo da un buon layout andrebbe riscritto al momento vi sono registrate <span class="anchor" id="line-61"></span>configurazioni base ma lo trovo scarno. <span class="anchor" id="line-62"></span><span class="anchor" id="line-63"></span><p class="line874">IPV6 e' gestito bloccando tutto. Rivedere. (mi sa che è stata risolta. Br.) <span class="anchor" id="line-64"></span><span class="anchor" id="line-65"></span><p class="line874">Introdurrei blocco di IP critici . (Blacklist tramite ipset) <span class="anchor" id="line-66"></span><span class="anchor" id="line-67"></span><p class="line874">Assenza di regole tra VM (vedi ebtables non settato) in generale bloccherei <span class="anchor" id="line-68"></span>tutte le connessioni tra VM lasciando aperto solo quello che serve. <span class="anchor" id="line-69"></span><span class="anchor" id="line-70"></span><p class="line874">... <span class="anchor" id="line-71"></span><span class="anchor" id="line-72"></span><p class="line874">come gestire il firewall, a mano ? con ansible ? con uno script creato ad hoc ? <span class="anchor" id="line-73"></span>con ufw ? <span class="anchor" id="line-74"></span><span class="anchor" id="line-75"></span><span class="anchor" id="line-76"></span><p class="line867"><strong>Assenza swap.</strong> <span class="anchor" id="line-77"></span><span class="anchor" id="line-78"></span><p class="line874">Manca una partizione o file per lo swap. <span class="anchor" id="line-79"></span><span class="anchor" id="line-80"></span><p class="line874">In generale avendo molta ram a disposizione il sistema non usa lo spazio di swap <span class="anchor" id="line-81"></span>ma in merito avevo letto una documentazione tecnica (ho perso il link) che <span class="anchor" id="line-82"></span>indicava come problematico assenza di swap. <span class="anchor" id="line-83"></span><span class="anchor" id="line-84"></span><p class="line874">In generale sembra che i sistemi unix like siano pensati per avere uno swap nella <span class="anchor" id="line-85"></span>gestione della memoria virtuale e anche se non viene usata causa il molto spazio <span class="anchor" id="line-86"></span>disponibile in ram potrebbero nascere dei problemi. <span class="anchor" id="line-87"></span><span class="anchor" id="line-88"></span><p class="line874">Di seguito alcuni link non esaustivi sull'argomento. <span class="anchor" id="line-89"></span><span class="anchor" id="line-90"></span><p class="line867"><a class="https" href="https://utcc.utoronto.ca/~cks/space/blog/unix/NoSwapConsequence" target="_blank">Sito 1</a> <span class="anchor" id="line-91"></span><a class="http" href="http://www.alexonlinux.com/swap-vs-no-swap" target="_blank">Sito 2</a> <span class="anchor" id="line-92"></span><a class="https" href="https://news.ycombinator.com/item?id=13715249" target="_blank">Sito 3</a> <span class="anchor" id="line-93"></span><a class="https" href="https://www.redhat.com/en/blog/do-we-really-need-swap-modern-systems" target="_blank">Sito 4</a> <span class="anchor" id="line-94"></span>... <span class="anchor" id="line-95"></span><span class="anchor" id="line-96"></span><span class="anchor" id="line-97"></span><p class="line867"><strong>Spazio VM.</strong> <span class="anchor" id="line-98"></span><span class="anchor" id="line-99"></span><p class="line874">Attualmente le macchine virtuali risiedono su file formato qcow2 all'interno di <span class="anchor" id="line-100"></span>una directory della root. <span class="anchor" id="line-101"></span><span class="anchor" id="line-102"></span><p class="line874">Sarebbero da valutare altre soluzione che sfruttino meglio il gestore dei volumi LVM, dato <span class="anchor" id="line-103"></span>che libvirt permette la gestione dello spazio tramite LVM. <span class="anchor" id="line-104"></span><span class="anchor" id="line-105"></span><p class="line874">... <span class="anchor" id="line-106"></span><span class="anchor" id="line-107"></span><span class="anchor" id="line-108"></span><p class="line867">
<h2 id="VM_Zaphoda_.28vecchia_macchina.29">VM Zaphoda (vecchia macchina)</h2>
<span class="anchor" id="line-109"></span><span class="anchor" id="line-110"></span><p class="line874">E' la copia virtuale della precedente macchina reale, sostanzialmente non e' da <span class="anchor" id="line-111"></span>modificare ed e' stata creata per preservare la continuita dei servizi. <span class="anchor" id="line-112"></span><span class="anchor" id="line-113"></span><p class="line874">Sara' da prendere come punto di partenza per la costruzione di una nuova <span class="anchor" id="line-114"></span>macchina che gestira tutti i servizi in modo piu organico e sicuro. <span class="anchor" id="line-115"></span><span class="anchor" id="line-116"></span><span class="anchor" id="line-117"></span><p class="line867">
<h2 id="VM_Amelia_.28macchina_per_test.29">VM Amelia (macchina per test)</h2>
<span class="anchor" id="line-118"></span><span class="anchor" id="line-119"></span><p class="line874">E' la macchina virtuale creata per effettuare dei test di costruzione, <span class="anchor" id="line-120"></span>ampliamento e sviluppo di quanto presente su Zaphoda volta a dargli una <span class="anchor" id="line-121"></span>struttura migliore. <span class="anchor" id="line-122"></span><span class="anchor" id="line-123"></span><p class="line867">
<h3 id="LAVORI_IN_CORSO">LAVORI IN CORSO</h3>
<span class="anchor" id="line-124"></span><span class="anchor" id="line-125"></span><p class="line874">1. Stiamo testanto il funzionamento di traefik facendolo girare dentro un docker <span class="anchor" id="line-126"></span><span class="anchor" id="line-127"></span><p class="line867"><a class="https" href="https://traefik.io/" target="_blank">Traefik</a> <span class="anchor" id="line-128"></span><a class="https" href="https://github.com/traefik/traefik" target="_blank">Traefik_github</a> <span class="anchor" id="line-129"></span><span class="anchor" id="line-130"></span><p class="line874">2. Stiamo programmando un client mumble che passi lo stream audio di un canale <span class="anchor" id="line-131"></span>direttamente ad icecast senza troppo passaggi e layout come attualmente usiamo <span class="anchor" id="line-132"></span>per fare radio. <span class="anchor" id="line-133"></span><span class="anchor" id="line-134"></span><span class="anchor" id="line-135"></span><p class="line867">
<h2 id="VM_New_Zaphoda_.28nuova_macchina.29">VM New Zaphoda (nuova macchina)</h2>
<span class="anchor" id="line-136"></span><span class="anchor" id="line-137"></span><p class="line874">Attualmente non presente. <span class="anchor" id="line-138"></span><span class="anchor" id="line-139"></span><p class="line874">Sara' la nuova macchina virtuale che ospitera tutti i servizi presenti attualmente <span class="anchor" id="line-140"></span>Zaphoda ma riorganizzati secondo criteri di sicurezza e innovazione. <span class="anchor" id="line-141"></span><span class="anchor" id="line-142"></span><p class="line874">Tutti divisi in conteiner e costruiti tramite ansible. <span class="anchor" id="line-143"></span><span class="anchor" id="line-144"></span><p class="line874">e' stato creato questo repository per metterci le configurazioni ansible: <span class="anchor" id="line-145"></span><span class="anchor" id="line-146"></span><p class="line862">* <a class="https" href="https://git.abbiamoundominio.org/unit/mafalda_playbooks">https://git.abbiamoundominio.org/unit/mafalda_playbooks</a> <span class="anchor" id="line-147"></span><span class="anchor" id="line-148"></span><span class="anchor" id="line-149"></span><p class="line874">Lavori da fare sui servizi attuali per il porting alla nuova macchina: <span class="anchor" id="line-150"></span><span class="anchor" id="line-151"></span><p class="line874">* sostituire nginx con traefik che dovra' fare da reverse proxy per tutti i servizi (dockerizzati e non) <span class="anchor" id="line-152"></span><ul><li style="list-style-type:none">che ascoltano sulla 80/443 <span class="anchor" id="line-153"></span><span class="anchor" id="line-154"></span></li></ul><p class="line874">* sito pelican <span class="anchor" id="line-155"></span><span class="anchor" id="line-156"></span><p class="line874">andra' creato un container nginx, partendo da immagine nginx ufficiale (?) <span class="anchor" id="line-157"></span>oppure anche un webserver piu' piccino. <span class="anchor" id="line-158"></span><span class="anchor" id="line-159"></span><p class="line874">(il vantaggio di usare nginx e' che magari poi lo si puo' riutilizzare anche come reverse proxy per eventuali servizi non dockerizzati...?) <span class="anchor" id="line-160"></span><span class="anchor" id="line-161"></span><p class="line874">il sito sta tutto in git, c'e' solo da capire come fare il deploy. <span class="anchor" id="line-162"></span>monterei /var/www dall'host dentro il container, <span class="anchor" id="line-163"></span>stessa cosa per le configurazioni, se non tutto /etc/nginx quantomeno nginx.conf <span class="anchor" id="line-164"></span>e i sites-enabled/available li monterei read-only dentro il container, <span class="anchor" id="line-165"></span>in modo che sia piu' semplice modificare le configurazioni dal di fuori del container. <span class="anchor" id="line-166"></span>(esiste gia' un ruolo in ansible pelican-website in zaphoda-playbook, e' da riadattare). <span class="anchor" id="line-167"></span><span class="anchor" id="line-168"></span><p class="line874">* uwsgi - per il wiki moin <span class="anchor" id="line-169"></span><span class="anchor" id="line-170"></span><p class="line874">da dockerizzare ed esporre sulla porta 80, non serve ssl <span class="anchor" id="line-171"></span><span class="anchor" id="line-172"></span><p class="line874">aggiungere il nostro tema <span class="anchor" id="line-173"></span><span class="anchor" id="line-174"></span><p class="line874">i contenuti del wiki andranno messi in un volume <span class="anchor" id="line-175"></span><span class="anchor" id="line-176"></span><p class="line874">* murmur - server mumble <span class="anchor" id="line-177"></span><span class="anchor" id="line-178"></span><p class="line874">da dockerizzare <span class="anchor" id="line-179"></span><span class="anchor" id="line-180"></span><p class="line874">non ho idea se gli serva un volume per gestire dei dati <span class="anchor" id="line-181"></span><span class="anchor" id="line-182"></span><p class="line874">deve parlare con icecast per mandargli uno stream (?) <span class="anchor" id="line-183"></span><span class="anchor" id="line-184"></span><p class="line874">deve parlare con mumble-web <span class="anchor" id="line-185"></span><span class="anchor" id="line-186"></span><p class="line874">* mumble-web <span class="anchor" id="line-187"></span><span class="anchor" id="line-188"></span><p class="line874">gia' dockerizzato, bisogna solo raccogliere il dockerfile e il docker-compose.yml <span class="anchor" id="line-189"></span><span class="anchor" id="line-190"></span><p class="line874">deve parlare con murmur <span class="anchor" id="line-191"></span><span class="anchor" id="line-192"></span><span class="anchor" id="line-193"></span><p class="line874">* gitea <span class="anchor" id="line-194"></span><span class="anchor" id="line-195"></span><p class="line874">da dockerizzare <span class="anchor" id="line-196"></span><span class="anchor" id="line-197"></span><p class="line874">deve parlare con ldap <span class="anchor" id="line-198"></span><span class="anchor" id="line-199"></span><p class="line874">deve parlare con postfix <span class="anchor" id="line-200"></span><span class="anchor" id="line-201"></span><p class="line874">(o il container deve contenere un microservizio per mandare messaggi) <span class="anchor" id="line-202"></span><span class="anchor" id="line-203"></span><span class="anchor" id="line-204"></span><p class="line874">* postgresql <span class="anchor" id="line-205"></span><span class="anchor" id="line-206"></span><p class="line874">da dockerizzare, al momento usato solo da gitea <span class="anchor" id="line-207"></span><span class="anchor" id="line-208"></span><p class="line874">nel caso in futuro altri servizi useranno postgresql capire se vogliamo <span class="anchor" id="line-209"></span>una sola istanza oppure istanze dedicate <span class="anchor" id="line-210"></span><span class="anchor" id="line-211"></span><p class="line874">deve parlare con gitea <span class="anchor" id="line-212"></span><span class="anchor" id="line-213"></span><p class="line874">* ldap - contiene utenze dei vari servizi tipo wiki e git <span class="anchor" id="line-214"></span><span class="anchor" id="line-215"></span><p class="line874">in futuro potrebbe ospitare anche utenze di altri servizi <span class="anchor" id="line-216"></span><span class="anchor" id="line-217"></span><p class="line874">non credo vada dockerizzato, da capire dove metterlo <span class="anchor" id="line-218"></span><span class="anchor" id="line-219"></span><p class="line874">forse il posto migliore e' l'host, ma allora serve un po' di hardening ? <span class="anchor" id="line-220"></span><span class="anchor" id="line-221"></span><p class="line874">oppure dedicargli una piccola macchina virtuale ? <span class="anchor" id="line-222"></span><span class="anchor" id="line-223"></span><p class="line874">al momento deve essere interrogabile da gitea e da moinmoin <span class="anchor" id="line-224"></span><span class="anchor" id="line-225"></span><span class="anchor" id="line-226"></span><p class="line874">* quassel - bouncer per IRC <span class="anchor" id="line-227"></span><span class="anchor" id="line-228"></span><p class="line874">da dockerizzare ? <span class="anchor" id="line-229"></span><span class="anchor" id="line-230"></span><p class="line874">non so cosa gli serve esattamente <span class="anchor" id="line-231"></span><span class="anchor" id="line-232"></span><p class="line874">* postfix <span class="anchor" id="line-233"></span><span class="anchor" id="line-234"></span><p class="line874">al momento ci serve solo per mandare messaggi mi pare, <span class="anchor" id="line-235"></span>potrebbe stare sull'host, chiuso all'esterno. <span class="anchor" id="line-236"></span><span class="anchor" id="line-237"></span><p class="line874">* icecast <span class="anchor" id="line-238"></span><span class="anchor" id="line-239"></span><p class="line874">da dockerizzare ? <span class="anchor" id="line-240"></span><span class="anchor" id="line-241"></span><p class="line874">non so cosa gli serve esattamente <span class="anchor" id="line-242"></span><span class="anchor" id="line-243"></span><p class="line874">* openpod <span class="anchor" id="line-244"></span><span class="anchor" id="line-245"></span><p class="line874">gia' dockerizzato <span class="anchor" id="line-246"></span><span class="anchor" id="line-247"></span><p class="line874">dobbiamo solo salvare in posto idoneo quello script che fa il deploy quando viene aggiornata l'immagine <span class="anchor" id="line-248"></span><span class="anchor" id="line-249"></span><p class="line874">e magari creare un ruolo ansible per eseguirlo <span class="anchor" id="line-250"></span><span class="anchor" id="line-251"></span><span class="anchor" id="line-252"></span><p class="line867">
<h2 id="VM_Experiment_.28nuova_macchina_per_esperimenti.29">VM Experiment (nuova macchina per esperimenti)</h2>
<span class="anchor" id="line-253"></span><span class="anchor" id="line-254"></span><p class="line874">Attualmente non presente. Si chamerà: 'Frank'. <span class="anchor" id="line-255"></span><span class="anchor" id="line-256"></span><p class="line874">Sara' la macchina virtuale dove testare software e fare esperimenti, ogni utente <span class="anchor" id="line-257"></span>avra il suo accesso personalizzato. <span class="anchor" id="line-258"></span><span class="anchor" id="line-259"></span><p class="line874">Sara la macchina dove tenere processi aperti tipo connessioni a IRC o altro. <span class="anchor" id="line-260"></span><span class="anchor" id="line-261"></span><p class="line874">Sarebbe da testare altra distro linux, tipo Arch. <span class="anchor" id="line-262"></span><span class="anchor" id="line-263"></span><p class="line874">Tendenzialmente si puo' "rompere" dato che non ospita processi critici. <span class="anchor" id="line-264"></span><span class="anchor" id="line-265"></span><span class="anchor" id="line-266"></span><span class="anchor" id="line-267"></span><span class="anchor" id="line-268"></span><p class="line867">
<h1 id="IDEE_.2F_PROPOSTE">IDEE / PROPOSTE</h1>
<span class="anchor" id="line-269"></span><span class="anchor" id="line-270"></span><p class="line867">
<h2 id="Archivio_storico_documentazione">Archivio storico documentazione</h2>
<span class="anchor" id="line-271"></span><p class="line867">
<h3 id="Descrizione">Descrizione</h3>
<span class="anchor" id="line-272"></span><span class="anchor" id="line-273"></span><p class="line874">Creare sul server un archivio (dedicandoli un quantita X di spazio) di <span class="anchor" id="line-274"></span>materiale video, pdf, audio e quant'altro che rispecchi il nostro sapere <span class="anchor" id="line-275"></span>scambiato e condiviso nel tempo perche' ci pareva interessante, formativo o <span class="anchor" id="line-276"></span>importante. <span class="anchor" id="line-277"></span><span class="anchor" id="line-278"></span><p class="line874">Interessante per tenere traccia di un percorso politico-tecnico che si <span class="anchor" id="line-279"></span>e' formato nel tempo, da presentare ai nuovi arrivati e non solo, per <span class="anchor" id="line-280"></span>chiarire e informare sulle nostre posizioni e scelte. <span class="anchor" id="line-281"></span><span class="anchor" id="line-282"></span><p class="line874">Archivio non sara un file sharing pubblico ma un sistema interno al gruppo. <span class="anchor" id="line-283"></span><span class="anchor" id="line-284"></span><p class="line874">Ad esempio sono stati condivisi dei documentari, libri ed altro averli a <span class="anchor" id="line-285"></span>disposizione e associati ad una scheda testuale che contenga una breve <span class="anchor" id="line-286"></span>descrizione, i motivi del perche' ci e' sembrato reilevante e vogliamo <span class="anchor" id="line-287"></span>conservarlo. <span class="anchor" id="line-288"></span><span class="anchor" id="line-289"></span><p class="line874">Come criterio userei di metter in archivio le cose che abbiamo visto <span class="anchor" id="line-290"></span>assieme, dunque il passaggio per l'archivio passa dalla pubblicazione. <span class="anchor" id="line-291"></span><span class="anchor" id="line-292"></span><p class="line867">
<h3 id="Struttura">Struttura</h3>
<span class="anchor" id="line-293"></span><span class="anchor" id="line-294"></span><p class="line874">Da pensare. <span class="anchor" id="line-295"></span><span class="anchor" id="line-296"></span><p class="line874">Potrebbe essere un semplice ftp su docker o un infrastruttra web presistente <span class="anchor" id="line-297"></span>sitele internet archive piu' adeguata allo scopo. <span class="anchor" id="line-298"></span><span class="anchor" id="line-299"></span><p class="line862">Oppure potrebbe essere il collaudato <a class="https" href="https://www.seafile.com/en/home/">Seafile</a> <span class="anchor" id="line-300"></span><span class="anchor" id="line-301"></span><span class="anchor" id="line-302"></span><p class="line867">
<h2 id="TITOLO_ALTRA_PROPOSTA">TITOLO ALTRA PROPOSTA</h2>
<span class="anchor" id="line-303"></span><p class="line867">
<h3 id="Descrizione-1">Descrizione</h3>
<span class="anchor" id="line-304"></span><p class="line874">... <span class="anchor" id="line-305"></span>
<h3 id="Struttura-1">Struttura</h3>
<span class="anchor" id="line-306"></span><p class="line874">... <span class="anchor" id="line-307"></span><span class="anchor" id="bottom"></span></div>
</div>
<hr>
2024-11-06 23:21
</body>
</html>