====== Installation de Yunohost ====== ===== Exemple sur un serveur VPS pour VireGUL ===== Dans notre situation il s'agit d'un VPS loué chez Hetzner qui propose des serveurs virtualisés à partir de 3 € / mois. Notre choix s'est porté sur une VPS de 2 Coeurs Xéon 2,1 hz avec 4 Go de Ram, 40 Go de disques SSD, 20 TB de traffic mensuel. Une fois l'achat validé pour une distribution Debian 9, vous recevez un mail avec un accès root avec mot de passe et une adresse IP. Il ne vous reste plus qu'à vous connecter à votre serveur : ssh root@IP_du_serveur Vous pouvez procéder à une petite mise à jour avec : apt update && apt upgrade && apt dist-upgrade A partir de cet accès, lancer le script d'installation de Yunohost en root : curl https://install.yunohost.org | bash **Attention** aux 2 questions suivants posées lors de l'installation : ┤ Yunohost Installation ├ │ Caution ! Your configuration files for : │ - postfix │ - dovecot │ - mysql │ - nginx │ - metronome │ will be overwritten ! │ Are you sure you want to proceed with the installation of Yunohost? Répondez **"YES !"** avec Entrée. A la question suivante : Do you agree to let YunoHost apply those changes to your configuration and therefore affect the way you connect through SSH ? Répondez **"Non"** pour conserver la version existante de ''sshd_config''. On changera ensuite les options de sécurité manuellement (voir plus bas) Patienter jusqu'à la fin de l'execution du script. Une fois terminée, vérifier que vous pouvez toujours vous connecter en root depuis un autre terminal. ===== Terminer l'installation de Yunohost avec le compte admin ===== Au préalable, créer une entrée DNS du domaine vers votre serveur comme : serveur.viregul.fr A 195.201.121.67 Se loguer ensuite sur l'IP du serveur : [[https://195.201.121.67/yunohost/admin/|https://195.201.121.67/yunohost/admin/]] et accepter le certificat temporaire. Entrer le nom de domaine choisir : serveur.viregul.fr Et choisir un mot de passe fort (au moins 24 caractères) et l'enregistrer. Patienter jusqu'à la fin de l'installation. Quand tout est ok, on sécurise un peu le tout. ===== Utiliser une clef SSH ===== Pour se connecter au serveur, il est nécessaire de posséder une clef SSH qui va être utilisée pour garantir l'authentification des personnes autorisées. Soit on a une clef SSH (visible dans .ssh/ sous la forme de id_rsa pour la clef privée et id_rsa.pub pour la clef publique), soit on n'en a pas et on en crée une avec : ssh-keygen -t rsa -b 4096 Et on choisit un mot de passe fort qui servira à déverrouiller cette clef. Il faudra copier ces clefs dans les PC qui seront autorisés à se connecter en ssh au serveur. On copie la clef sur le serveur avec : ssh-copy-id admin@195.201.121.67 Et on entre le mot de passe admin. Le résultat est : Number of key(s) added: 1 Now try logging into the machine, with: "ssh 'admin@195.201.121.67 Ce qu'on fait aussitôt. Et si c'est bon, on verrouille l'accès ssh avec le lancement en root de : nano /etc/ssh/sshd_config et on modifie le fichier sshd_config pour conserver : PermitRootLogin no #au lieu de yes PasswordAuthentication no # au lieu de yes On recharge le service ssh en root : systemctl reload sshd.service Et on vérifie toujours dans un autre terminal qu'on peut se connecter en ssh avec la clef. ===== Gestion du certificat du serveur ===== Pour terminer et voir un beau certificat bien officiel, rendez-vous dans "**Domaines**", puis choisissez le domaine "**serveur.viregul.fr**" et cliquer sur "Certificat SSL", puis si les DNS sont correctemnet configurés, cliquer sur le bouton "Installer un certificat Let's encrypt". Il faut parfois patienter 24h après modification des DNS. Un certificat sera créé pour l'url de votre serveur et n'affichera plus d'erreur de certificat auto-signé lors de la connexion à [[https://serveur.viregul.fr|https://serveur.viregul.fr]] Attention, il faudra reproduire cette procédure pour chaque nouveau domaine enregistré (mais pas pour serveur.viregul.fr qui est déjà fait et renouvelé automatiquement).