Aprendre i Compartir

En aquest blog aniré compartint el que aprenc i el que em sembla

Instal·lar YunoHost

May 02, 2020 — Xaloc

Comencem pel començament, cosa que no se'm dona massa bé. YunoHost és una distribució de GNU/Linux (ja ho he dit bé una vegada, les altres si veieu només Linux no cal queixar-se) basada en Debian que incorpora una gran quantitat d'eines que fan de gestionar un servidor una feina molt més fàcil i a l'abast de moltes.

Amb YunoHost no ens hem de preocupar de configurar cada nou servei ni de establir les mesures de seguretat bàsiques, el sistema operatiu ho fa per nosaltres. A més a més afegir nous serveis, serà tan fàcil com afegir una nova aplicació de la "botiga" d'aplicacions de YunoHost. Entre aquestes aplicacions trobarem multitud de serveis de tota mena. Hi podrem trobar xarxes socials, núvols personals, eines per a còpies de seguretat o fins i tot jocs.

Si voleu una guia de com instal·lar YunoHost a la seva pàgina en tenen una de molt maca, així que ja podeu deixar el post aquest i anar cap allà. O si per alguna estranya raó us voleu quedar aquí per vosaltres mateixes.


Ara que ja sabem, o no però ens és igual, què és YunoHost procedim a la instal·lació. Per poder instal·lar YunoHost necessitarem una màquina on fer-ho (gran sorpresa), no cal una gran màquina amb una RaspberryPI o un ordinador vell ja fem. Tampoc cal que la tinguem a casa la màquina, pot ser un servidor virtual privat (VPS, que diuen els anglesos), però en aquest cas la instal·lació serà una mica diferent i també perdem la màgia de poder veure i tocar el nostre núvol. També necessitarem connectar l'ordinador o la RPI en la que instal·larem YunoHost a internet per cable. En principi el wifi també serveix però perdem molta velocitat així que no fem el ruc i posem el cable!

Com us comentava YunoHost és una distribució de Linux així que d'entrada el procés per instal·lar és exactament el mateix que per qualsevol altra distro (utilitzem el llenguatge dels guais que és més curt).

Això vol dir descarregar i posar la "iso" en el nostre sistema. El procés varia lleugerament en funció de si ho hem de fer en un pc o en una RaspberryPi. Intentaré cobrir el dos casos el millor que pugui (és a dir malament, però és el que hi ha).

De totes maneres la majoria dels passos són idèntics en els dos casos. Primerament haurem de descarregar la iso del gust (amb anglès li foten "flavour" així que perquè no) que li toca al nostre maquinari, aquesta cosa rara dels 32 bits, 64 bits, ARM i tal. Si no sabeu de què parlo és perquè jo tampoc ho se massa així que demaneu a un motor de recerca.

Pas 0 - Descarregar la ISO

Direm que tenim un ordinador més aviat nou així que descarreguem la "iso" per 64 bits, com que cada interfície gràfica és un món però totes les línies de comandes són iguals posarem les instruccions per la línia de comandes (que li diré terminal perquè sinó això quedarà més llarg que la Bíblia, i més avorrit). Això si, com intenteu fer-ho en un Ruindows no funcionarà. No és que vulgui ser purista però ja no se com funcionen.

També descarregarem alguns fitxers extra per tal de verificar que no s'hagi corromput el fitxer i estar segurs que és el fitxer que han penjat la gent de YunoHost i no un malvat hacker d'aquests ;P. Serà important recordar la carpeta en al que ho posem, en el meu cas direm que és ~/yunohost/


	wget https://build.yunohost.org/yunohost-stretch-3.6.4.6-amd64-stable.iso
	wget https://build.yunohost.org/yunohost-stretch-3.6.4.6-amd64-stable.iso.sig
	wget https://build.yunohost.org/yunohost-stretch-3.6.4.6-amd64-stable.iso.sha256sum

La primera línia baixa la famosa distro, la segona la firma i la tercera el checksum de la iso. Hi ha altres maneres de descarregar però aquesta funciona així que serem feliços amb això. Anem a comprovar aquests fitxers, necessitem gpg i alguna coseta així però acostumen a venir preinstal·lats en les distros. En el cas de la RaspberryPi (RPI) fem el mateix però amb el gust per la RPI.

Pas 1 - Comprovem el que hem baixat


	gpg --verify yunohost-stretch-3.6.4.6-amd64-stable.iso.sig yunohost-stretch-3.6.4.6-amd64-stable.iso

Pot ser que ens surti un error dient que no tenim la clau pública ens sortirà la clau i podem obtenir-la fent els següent:


	gpg --recv-key  1904C5B42E4856DCD4E9CF96360AAF3259A3E6FF

Tornem a provar i hauríem de tenir un missatge com el següent:


	gpg: Signature made dilluns, 12 d’agost de 2019, 01:42:36 CEST
	gpg:                utilitzant RSA clau 1904C5B42E4856DCD4E9CF96360AAF3259A3E6FF
	gpg: Good signature from "YunoHost " [desconeguda]

L'important és que surti el good o bo. Anem a veure ara que el fitxer sigui efectivament el que toca, comprovem el checksum.


	sha256sum -c yunohost-stretch-3.6.4.6-amd64-stable.iso.sha256sum

Ens hauria de sortir el missatge següent si tot va bé:


	yunohost-stretch-3.6.4.6-amd64-stable.iso: CORRECTE

Un cop comprovat que hem baixat el que volíem ja ho podem posar a un USB i començar a instal·lar el sistema. Aquí també hi ha mil i una maneres de fer-ho, veurem una que funciona. Anem amb compte, podem fer una gran destrossa al executar això, així que a vigilar i jo no em faig responsable de cap ordinador que deixi de funcionar així que res de venir a plorar.

Pas 2 - Gravem la ISO al USB

Un cop el USB connectat executem això lsblk per veure quina partició és. El resultat és alguna cosa així:


	NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
	loop0    7:0    0 217,7M  1 loop /snap/atom/247
	loop1    7:1    0  93,9M  1 loop /snap/core/9066
	loop2    7:2    0 217,8M  1 loop /snap/atom/248
	loop3    7:3    0  93,8M  1 loop /snap/core/8935
	sda      8:0    0 447,1G  0 disk 
	├─sda1   8:1    0   512M  0 part /boot/efi
	└─sda2   8:2    0 446,6G  0 part /
	sdb      8:16   1   7,5G  0 disk 
	sr0     11:0    1  1024M  0 rom  

En el meu cas veig que el USB de 8GB que he connectat (com veieu vigilar la mida ajuda!) és a la partició sdb. En el teu cas pot ser un altra així que atenció a canviar-ho en la següent comanda! Aquesta gravarà la iso al USB. Si ens equivoquem de partició pot ser que esborrem tot el sistema així que al lloro. Recordeu aquella carpeta que calia recordar, ara és el moment de fer-ho. En la comanda haurem de posar la carpeta amb el nom de la iso al if i la partició de fa un moment (amb /dev/ al davant) al of


	dd bs=4M if=~/yunohost/yunohost-stretch-3.6.4.6-amd64-stable.iso of=/dev/sdb

És possible que la comanda s'hagi d'executar com a super usuària així que si ens surt un error provem amb un bonic sudo al davant. De nou, aneu amb compte!!

Per la RPI fem exactament el mateix però en una targeta SD en lloc del USB.

Molt bé ja tenim l'USB (o targeta SD) preparat per a la instal·lació, ara tocar instal·lar. En aquest punt és en el que si ho estem fent en la RPI som felices, ja està instal·lat així que podem saltar-nos aquest pas, només haurem de posar la targeta SD que acabem de preparar a la RPI. Per les altres tampoc és tan.

Pas 3 - Instal·lem el sistema

Connectem l'USB a l'ordinador, vigilem de dir-li que s'arrenqui des de l'USB i no des del disc dur. Veureu que s'obra un menú d'instal·lació. Podem triar entre "Install" i "Graphical Install", francament la diferència no és molta així que podem fer-ho directament amb la primera opció. La resta del procés ens ve guiat i és exactament el mateix que el d'instal·lar una Debian i segur que trobarem guies per això. Només dir-vos que millor instal·lar-ho en tot el disc, ja que no hauríem d'utilitzar l'aparell per a res més que per fer de servidor per tal de no sobrecarregar-lo.

Després d'un ratet hauríem de tenir els sistema instal·lat, anem a fer la post instal·lació.

Pas 4 - Connectar a la màquina

Fa una moment les de la RPI eren les felices, ara és a la inversa. Però no patiu, tampoc és tan difícil. Val a dir que amb l'ordinador podem seguir els mateixos passos que amb la RPI. Però és complicar la cosa inútilment així que per vosaltres fareu.
Si tenim l'ordinador veurem que ja tenim un terminal obert, si ens demana autenticar-nos el nom d'usuària és: root i la contrasenya: yunohost. I ja estem connectades.

Per la gent amb RPI, el problema és que no tenim la pantalla ni el teclat per fer el mateix que amb l'ordinador. Així que una opció és connectar una pantalla i un teclat i fer el mateix que les altres. L'altra és connectar-se a la RPI per SSH, per això ens farà falta saber quina és la IP local de la nostra RPI. Per fer-ho executarem dues comandes, la primera per saber el rang de la nostra xarxa local i la segona per trobar la nostra RPI:


	ifconfig -a

Que dona una cosa així:


	enp14s0: flags=4099  mtu 1500
	        ether 3c:07:71:5e:af:7b  txqueuelen 1000  (Ethernet)
	        RX packets 0  bytes 0 (0.0 B)
	        RX errors 0  dropped 0  overruns 0  frame 0
	        TX packets 0  bytes 0 (0.0 B)
	        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
	
	lo: flags=73  mtu 65536
	        inet 127.0.0.1  netmask 255.0.0.0
	
	wlp7s0: flags=4163  mtu 1500
	        inet 192.168.1.132  netmask 255.255.255.0  broadcast 192.168.1.255

Amb això veig que el meu rang és el 192.168.1.X així que aquí executarem la segona comanda:


	nmap -p 22 192.168.1.0/24

Sí no tenim nmap instal·lat ho podem fer amb sudo apt install nmap si estem en una distro filla de Debian.
La comanda nmap dona una cosa així:


	Starting Nmap 7.60 ( https://nmap.org ) at 2020-05-02 03:01 CEST
	Nmap scan report for _gateway (192.168.1.1)
	Host is up (0.057s latency).
	
	PORT   STATE    SERVICE
	22/tcp filtered ssh
	
	Nmap scan report for 192.168.1.111
	Host is up (0.0092s latency).
	
	PORT   STATE    SERVICE
	22/tcp filtered ssh
	
	Nmap scan report for xaloc (192.168.1.132)
	Host is up (0.00017s latency).
	
	PORT   STATE  SERVICE
	22/tcp closed ssh

Aquí hem de buscar una IP que no tingui el port 22 tancat i que no sigui la 192.168.1.1 que serà la nostra RPI, en el meu cas 192.168.1.111. I per connectar-nos utilitzem el següent:


	ssh root@192.168.1.111

Ens demanarà una contrasenya que serà yunohost i ja ens haurem connectat.

Pas 5 - Post instal·lació

La post instal·lació s'executa amb:


	yunohost tools postinstall

Durant el procés de post instal·lació ens demanaran el nostre domini. Si en tenim un és el moment de posar-lo. Si no és el cas cap problema, YunoHost està aquí per salvar-te. Pots escollir el domini que vulguis acabat en .noho.st, .nohost.me o .ynh.fr . És a dir, una cosa de l'estil domini.noho.st, domini.nohost.me o domini.ynh.fr. Ell tot solet s'ocuparà de configurar-ho tot.

També ens demanarà la contrasenya d'administració, que servirà per als usuaris admin i root penseu en escollir-ne una de bona, tot i que no us deixarà posar-ne una amb menys de 8 caràcters. També serà important recordar-la o perdrem accés al servidor!!

Un cop això fet farà algunes configuracions, activarà els serveis de base i ja tindrem el nostre YunoHost instal·lat!


Això vol dir que ja tindreu el vostre núvol i tots els serveis funcionant? Doncs no, només hem instal·lat la base. Ara toca una mica de configuració a nivell de router de casa i començar a instal·lar serveis (que aquí seran aplicacions) i afegir usuàries. Però ja ho farem en un altre post que està quedant llarguet aquest ja.


Això és tot per avui! Fins la propera.

Etiquetes: yunohost, instal·lar, self-hosting, allotjament-propi