Selezionate l'hardware sul quale vuoi installare YunoHost:
This setup is mainly meant for local testing by advanced users. Due to limitations on WSL's side (changing IP address, notably), selfhosting from it can be tricky and will not be described here.
WSL è un'interessante caratteristica di Windows 10 che rende disponibili alcune pseudo-distribuzioni Linux dalla linea di comando. Diciamo pseudo perché, pur non essendo vere macchine virtuali, si basano su capacità di virtualizzazione che rendono molto semplice l'integrazione con Windows. Ad esempio Docker può usare WSL invece di Hyper-V.
Tenete presente che questa configurazione non è un assolutamente un container: se qualcosa smette di funzionare non ci sono possibilità di usare dei rollback. Potrebbe essere necessario eliminare la distribuzione Debian e reinstallare tutto da capo.
Installiamo YunoHost all'interno di una distribuzione dedicata senza alterare quella di default. In un terminale PowerShell:
# Let's go in your home directory and prepare the working directories
cd ~
mkdir -p WSL\YunoHost
# Download the Debian appx package and unzip it
curl.exe -L -o debian.zip https://aka.ms/wsl-debian-gnulinux
Expand-Archive .\debian.zip -DestinationPath .\debian
# Import the Debian base into a new distro
wsl --import YunoHost ~\WSL\YunoHost ~\debian\install.tar.gz --version 2
# Cleanup
rmdir .\debian -R
Adesso potete accedervi con il comando wsl.exe -d YunoHost
La versione è Debian 9 Stretch che può essere aggiornata:
# In WSL
sudo sed -i 's/stretch/bookworm/g' /etc/apt/sources.list`
sudo apt update
sudo apt upgrade
sudo apt dist-upgrade
Editate /etc/wsl.conf
con le seguenti configurazioni:
[network]
generateHosts = false
generateResolvConf = false
Per varie ragioni YunoHost non usa nf_tables
, il nuovo software che sostituisce iptables
.
È comunque possibile usare il buon vecchio iptables
:
# In WSL
sudo update-alternatives --set iptables /usr/sbin/iptables-legacy
sudo update-alternatives --set ip6tables /usr/sbin/ip6tables-legacy
Debian di WSL non usa systemd
, un programma di configurazione di servizi.
Questo è un elemento chiave per YunHost nonché per qualsiasi distribuzione Debian ragionevole (veramente MS, che combini). Installiamolo:
# In WSL
wget https://packages.microsoft.com/config/debian/12/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
sudo apt update
sudo apt install -y apt-transport-https
sudo apt update
sudo apt install -y dotnet-sdk-3.1
# In WSL
# Add their repository
echo "deb [trusted=yes] https://wsl-translinux.arkane-systems.net/apt/ /" > /etc/apt/sources.list.d/wsl-translinux.list
# Install Genie
sudo apt update
sudo apt install -y systemd-genie
# In WSL
# Let's switch to the root user, if you were not already
sudo su
# Initialize the Genie bottle to have systemd running
genie -s
# Your hostname should have been appended with "-wsl"
# Install YunoHost
curl https://install.yunohost.org | bash -s -- -a
Avviate sempre il comando genie -s
mentre avviate la vostra distribuzione.
wsl -d YunoHost -e genie -s
Come detto sopra, non c'è la possibilità di usare dei rollback. Onde per cui è necessario esportare la vostra distribuzione appena installata. Comandi PowerShell:
cd ~
wsl --export YunoHost .\WSL\YunoHost.tar.gz
cd ~
wsl --unregister YunoHost
wsl --import YunoHost .\WSL\YunoHost .\WSL\YunoHost.tar.gz --version 2
Se state recuperando un server da un backup YunoHost non dovete seguire questo passaggio e invece recuperare un backup invece del passo del postinstall.
È possibile eseguire la configurazione iniziale dall'interfaccia web digitando nella barra degli indirizzi del vostro browser l'indirizzo IP locale del vostro server. Normalmente il provider della vostra VPS vi dovrebbe aver comunicato l'indirizzo IP del server.
Al momento della prima visita molto probabilmente troverete un allarme di sicurezza relativo al certificato usato dal server. Per adesso il vostro server sta usando un certificato auto-firmato. Per adesso potete aggiungere un'eccezione di sicurezza per accettare il certificato corrente. (Però, PER FAVORE, non prendete l'abitudine di accettare ciecamente questo tipo di allarme di sicurezza!)
Dovreste arrivare su questa pagina :
Potete eseguire la post-installazione con il comando yunohost tools postinstall
direttamente sul vostro server, o via SSH.
Questo sarà il dominio usato dagli utenti del server per accedere al portale di autenticazione. Potrete aggiungere poi altri domini e scegliere quale è il principale se necessario.
Dovrete scegliere un dominio falso poiché non sarà accessibile dall'esterno come ad esempio ynh.wsl
.
Il trucco sta nel notificare questo dominio al vostro host.
Modificate il file C:\Windows\System32\drivers\etc\hosts
. Dovreste avere una linea che inizia con ::1
, aggiornatela o aggiungetela se necessario per avere:
::1 ynh.wsl localhost
Se volete creare dei sottodomini non dimenticate di aggiungerli anche nel file hosts
:
::1 ynh.wsl subdomain.ynh.wsl localhost
Il primo utente viene creato a questo passo. Dovreste scegliere un nome utente e una password ragionevolmente complessa. (Non ci stancheremo mai di raccomandare che la password deve essere robusta!). Questo utente verrà aggiunto al gruppo Admins e quindi potrà accedere al portale utente, alla pagina web di amministrazione e connettersi via SSH o SFTP. Gli utenti del gruppo Admins riceveranno inoltre le email inviate a root@yourdomain.tld
e admin@yourdomain.tld
: questi messaggi potrebbero essere usate per mandare informazioni tecniche o allarmi. È possibile aggiungere successivamente ulteriori utenti che possono essere aggiunti al gruppo Admins.
Questo utente rimpiazza il precedente utente admin
al quale potrebbero far riferimento alcune vecchie pagina della documentazione. Nel caso è sufficiente sostituire admin
con il vostro nome utente.
Una volta che il passo del postinstall è concluso dovreste essere in grado di fare login alla pagina web di amministrazione usando le credenziali del primo utente che avete appena creato.
Avvertenza: YunoHost su WSL potrebbe non essere raggiungibile dall'esterno e quindi non potranno essere assegnati nomi a dominio reali e certificati.
Il sistema di diagnosi è pensato per offrire un modo semplice per verificare che tutti gli aspetti critici del vostro server sono correttamente impostati - e guidarvi nel risolvere in problemi. Il sistema di diagnosi si avvierà due volte al giorni e invierà un allarme se verranno individuati dei problemi.
N.B.: non scappate! La prima volta che avvierete il sistema di diagnosi vedrete quasi sicuramente molti allarmi gialli e rossi perché normalmente dovete configurare i record DNS (a meno che non usiate dei domini .nohost.me
/noho.st
/ynh.fr
), aggiungere un file di swap se non avete sufficiente ram .
Se un allarme non è per voi preoccupante (perché per esempio non intendete usare un particolare feature) è assolutamente corretto marcare il problema come ignora
nella pagina di amministrazione web > Diagnosi cliccando sul bottone ignora del problema in questione.
Per avviare una diagnosi collegatevi alla pagina web di amministrazione nella sezione Diagnosi. Cliccate su Avvia diagnosi iniziale e dovreste ottenre una schermata simile a questa:
yunohost diagnosis run
yunohost diagnosis show --issues --human-readable
Una volta configurati i record DNS ed eventualmente il port forwarding dovreste essere in grado di installare un certificato Let's Encrypt. In questo modo dovrebbero scomparire gli allarmi di sicurezza visti sopra per i nuovi visitatori.
Per maggiori informazioni o per conoscere meglio i certificati SSL/TLS vedi questa pagina.
Andate su Domini > cliccate sul vostro dominio > Certificate
yunohost domain cert install
Adesso avete un server ben configurato. Se siete alle prime esperienze di YunoHost è consigliabile guardare il tour guidato. Dovreste essere in grado di installare le vostre applicazioni preferite. Non dimenticate di programmare i backup!
Hai trovato degli errori? Pensi di poter migliorare questa documentazione? Simply click the Edit link at the top of the page, and then the icon on Github to suggest changes.
Powered by Grav + with by Trilby Media. • Terms of Service