Afficher/cacher Sommaire
Fournisseur : Contabo
Accès client : https://my.contabo.com/
Nom du plan : VPS S SSD
Location Nuremberg (EU)
RAM garantie : 8192 Mb
Bande passante mensuelle illimitée
Espace disque SSD 200 Go
Système d’exploitation : Debian 11
Technologie de virtualisation KVM
Emplacement du serveur Allemagne
IP address 161.97.139.1
Accès client : https://my.contabo.com/
Autorisation à deux facteurs : https://my.contabo.com/ → Customer details et Activate 2-factor authentication
Activer le reverse DNS IPV4 et IPV6 pour le domaine eolam.fr : Control panel → Reverse DNS management
Désactiver VNC: Your services → Manage → VPS Control → Manage → Disable VNC et valider par un clic sur Disable
Sous-réseau IPv6
Chaque serveur dédié et chaque VPS est livré avec un sous-réseau IPv6 /64 en plus de son adresse IPv4. Vous pouvez utiliser les adresses de ce sous-réseau librement sur le serveur/VPS associé. IPv6 est déjà préconfiguré sur nos serveurs mais doit être activé explicitement dans certains cas. Vous trouverez comment activer IPv6 et d’autres informations sur le sujet dans notre tutoriel.
type d’abonnement | adresse IPv4 | sous-réseau IPv6 |
---|---|---|
VPS S SSD (no setup) | 161.97.139.1 | 2a02:c206:2129:3715::1 / 64 |
Debian bullseye
PARAMETRES D’ACCES:
L’adresse IPv4 du VPS est : 161.97.139.1
L’adresse IPv6 du VPS est : 2a02:c206:2129:3715::1
On se connecte en root sur le VPS
ssh root@161.97.139.1
Linux vmi1083749.contaboserver.net 5.10.0-12-amd64 #1 SMP Debian 5.10.103-1 (2022-03-07) x86_64
_____
/ ___/___ _ _ _____ _ ___ ___
| | / _ \| \| |_ _/ \ | _ )/ _ \
| |__| (_) | .` | | |/ _ \| _ \ (_) |
\____\___/|_|\_| |_/_/ \_|___/\___/
Welcome!
This server is hosted by Contabo. If you have any questions or need help,
please don't hesitate to contact us at support@contabo.com.
root@vmi1293715:~#
Mise à jour + Réseau IPV6
Mise à jour, exécuter apt update && apt upgrade
Quelques outils, exécuter apt install tree tmux
Activation ipv6, exécuter enable_ipv6
puis redémarrer reboot
et se reconnecter ssh
Vérifier l’adressage : ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:50:56:4b:05:d3 brd ff:ff:ff:ff:ff:ff
altname enp0s18
altname ens18
inet 161.97.139.1/19 brd 161.97.159.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 2a02:c206:2129:3715::1/64 scope global
valid_lft forever preferred_lft forever
inet6 fe80::250:56ff:fe4b:5d3/64 scope link
valid_lft forever preferred_lft forever
Date et heure + Synchro
Activer le fuseau Europe/Paris
timedatectl set-timezone Europe/Paris
Horloge système synchronisée
timedatectl
Local time: Tue 2023-05-02 12:35:45 CEST
Universal time: Tue 2023-05-02 10:35:45 UTC
RTC time: Tue 2023-05-02 10:35:46
Time zone: Europe/Paris (CEST, +0200)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
Reconfigurer locales
Activer uniquement en_US.UTF-8 et fr_FR.UTF-8
dpkg-reconfigure locales
Generating locales (this might take a while)...
en_US.UTF-8... done
fr_FR.UTF-8... done
Generation complete.
Yunohost eolam.fr
Installation et configuration
Installer yunohost
Installation d’un nouveau YunoHost sur un Debian 11/Bullseye
curl https://install.yunohost.org | bash
Patienter …
┌───────────────────────────┤ SSH Configuration ├────────────────────────────┐
│ │
│ To improve the security of your server, it is recommended to let YunoHost │
│ manage the SSH configuration. │
│ Your current SSH configuration differs from the recommended configuration. │
│ If you let YunoHost reconfigure it, the way you connect to your server │
│ through SSH will change in the following way: │
│ - you will not be able to connect as root through SSH. Instead you should │
│ use the admin user ; │
│ │
│ Do you agree to let YunoHost apply those changes to your configuration and │
│ therefore affect the way you connect through SSH ? │
│ │
│ <Yes> <No> │
│ │
└────────────────────────────────────────────────────────────────────────────┘
Choix Yes
===============================================================================
You should now proceed with Yunohost post-installation. This is where you will
be asked for :
- the main domain of your server ;
- the administration password.
You can perform this step :
- from the command line, by running 'yunohost tools postinstall' as root
- or from your web browser, by accessing :
- https://161.97.139.1/ (global IP, if you're on a VPS)
If this is your first time with YunoHost, it is strongly recommended to take
time to read the administator documentation and in particular the sections
'Finalizing your setup' and 'Getting to know YunoHost'. It is available at
the following URL : https://yunohost.org/admindoc
===============================================================================
Post-installation
Vous devez faire la post-installation pour configurer l’application Borg.
yunohost tools postinstall
Main domain: eolam.fr
Admin username: marina
Admin full name: marina mathien
New administration password: **************************************
Confirm new administration password: **************************************
[...]
Success! YunoHost is now configured
Warning: The post-install completed! To finalize your setup, please consider:
- adding a first user through the 'Users' section of the webadmin (or 'yunohost user create <username>' in command-line);
- diagnose potential issues through the 'Diagnosis' section of the webadmin (or 'yunohost diagnosis run' in command-line);
- reading the 'Finalizing your setup' and 'Getting to know YunoHost' parts in the admin documentation: https://yunohost.org/admindoc.
Le mot de passe root remplacé par celui de l’admin yunohost
Motd
rm /etc/motd && nano /etc/motd
___ _ _
/ __| ___ _ _ | |_ __ _ | |__ ___
| (__ / _ \| ' \| _|/ _` || '_ \/ _ \
\___|\___/|_||_|\__|\__,_||_.__/\___/
__ __ _ _
\ \ / /_ _ _ _ ___ | |_ ___ ___| |_
\ V /| || || ' \ / _ \| ' \ / _ \(_-<| _|
|_| \_,_||_||_|\___/|_||_|\___//__/ \__|
___ ___ | | __ _ _ __ / _| _ _
/ -_)/ _ \| |/ _` || ' \ _ | _|| '_|
\___|\___/|_|\__,_||_|_|_|(_)|_| |_|
Domaines et DNS OVH
Méthode manuelle
Configuration DNS domaine par défaut eolam.fr
yunohost domain dns-conf eolam.fr
; Basic ipv4/ipv6 records
@ 3600 IN A 161.97.139.1
@ 3600 IN AAAA 2a02:c206:2129:3715::1
calibre 3600 IN A 161.97.139.1
calibre 3600 IN AAAA 2a02:c206:2129:3715::1
cloud 3600 IN A 161.97.139.1
cloud 3600 IN AAAA 2a02:c206:2129:3715::1
zic 3600 IN A 161.97.139.1
zic 3600 IN AAAA 2a02:c206:2129:3715::1
; Mail
@ 3600 IN MX 10 eolam.fr.
@ 3600 IN TXT "v=spf1 a mx -all"
mail._domainkey 3600 IN TXT "v=DKIM1; h=sha256; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDSJOuxnaEQoJjJ5x3BuEMmRa+6kDDH9z7BtmamdMvt1QfsJyxsIOBz8P6seALVaRah8yrm/2Q6sHrzmKmg45tSHKIzB/Mqz/FafXBjxVkRCSTg/MN+pJPeSJSvgsIWoXtHZla60Bw0r+gSmk3JWgGYz9+CJUD92moHkVeAO18X0QIDAQAB"
_dmarc 3600 IN TXT "v=DMARC1; p=none"
cloud 3600 IN MX 10 cloud.eolam.fr.
cloud 3600 IN TXT "v=spf1 a mx -all"
mail._domainkey.cloud 3600 IN TXT "v=DKIM1; h=sha256; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDF6B4AD1WuTTCA/yaUJ4/aCttH+X8ekYsnI4zdxqKILFO5zrNg3r3muC9mpFG5yjmH9SQU5qFeys8LNF5k/IHwye7ek/5WPXOxkbC5wxW55M8ecbQ7G8T9tLMk9AazUNxmGBQMQQb0NXTGsmiTGKrE0a/Tpgh14ywkSlueItVT2wIDAQAB"
_dmarc.cloud 3600 IN TXT "v=DMARC1; p=none"
; XMPP
_xmpp-client._tcp 3600 IN SRV 0 5 5222 eolam.fr.
_xmpp-server._tcp 3600 IN SRV 0 5 5269 eolam.fr.
muc 3600 IN CNAME eolam.fr.
pubsub 3600 IN CNAME eolam.fr.
vjud 3600 IN CNAME eolam.fr.
xmpp-upload 3600 IN CNAME eolam.fr.
; Extra
* 3600 IN A 161.97.139.1
* 3600 IN AAAA 2a02:c206:2129:3715::1
@ 3600 IN CAA 0 issue "letsencrypt.org"
Se connecter à l’espace client du site OVH : Web cloud → Domaines → eolam.fr → Zone DNS
Cliquer sur “Modifier en mode textuel”, garder les 4 premières lignes :
puis effacer tout ce qu’il y a en-dessous, et le remplacer par la configuration donnée par votre serveur ( yunohost domain dns-conf
)
Méthode automatique
- Allez sur https://eu.api.ovh.com/createToken/
- Remplissez le formulaire avec les informations requises comme indiqué ci-dessous :
* ID du compte ou adresse e-mail : Il s’agit de votre identifiant OVH habituel
* Mot de passe : Il s’agit de votre mot de passe OVH habituel
* Nom du script : par exemple YunoHost Auto DNS
* Description du script : par exemple YunoHost Auto DNS
* Validité : Unlimited
* Droits : utilisez le bouton + pour ajouter les lignes suivantes
- GET : /domain/zone/*
- POST : /domain/zone/*
- PUT : /domain/zone/*
- DELETE : /domain/zone/*
Après création, vous disposez d’un jeu de 3 clés : application,secrète de l’application et utilisateur
Saisir les informations dans le domaine principal eolam.fr de yunohost en mode admin
Domaines → eolam.fr
Activer Certificats SSL Let’s Encrypt
On active les certificats SSL pour le domaine eolam.fr
yunohost domain cert-install eolam.fr --no-checks
Résultat
[...]
Success! Configuration updated for 'nginx'
Success! Let's Encrypt certificate now installed for the domain 'eolam.fr'
OpenSSH, clé et script
sur l'ordinateur de bureau
Générer une paire de clé curve25519-sha256 (ECDH avec Curve25519 et SHA2) nommé eolam-fr pour une liaison SSH avec le serveur KVM.
ssh-keygen -t ed25519 -o -a 100 -f ~/.ssh/eolam-fr
Envoyer les clés publiques sur le serveur KVM
ssh-copy-id -i ~/.ssh/eolam-fr.pub marina@161.97.139.1
sur le serveur Yunohost On se connecte
ssh admin@161.97.139.1
Sur votre serveur, la modification du fichier de configuration SSH pour désactiver l’authentification par mot de passe est gérée par un paramètre système
sudo yunohost settings set security.ssh.password_authentication -v no
Modifier le port SSH
Pour empêcher les tentatives de connexion SSH par des robots qui analysent Internet à la recherche de tout serveur sur lequel SSH est activé, vous pouvez modifier le port SSH. Ceci est géré par un paramètre système, qui prend en charge la mise à jour de la configuration SSH et Fail2Ban.
sudo yunohost settings set security.ssh.port -v 49110
Accès depuis le poste distant avec la clé privée
ssh -p 49110 -i ~/.ssh/eolam-fr marina@161.97.139.1
Paramétrage SSH portable ACER i7
Se connecter sur le portable ACER i7 depuis PC1 : ssh -p 52022 marina@82.64.153.201
Générer une paire de clés : ssh-keygen -t ed25519 -o -a 100 -f ~/.ssh/eolam-fr-vps
Copier la clé publique ~/.ssh/eolam-fr-vps.pub
dans le presse papier
Journal
La façon de s’assurer que vous pouvez visualiser tous les messages de journal est d’ajouter l’utilisateur à un groupe existant tel que adm ou systemd-journal.
sudo usermod -a -G systemd-journal $USER
Historique de la ligne de commande
Ajoutez la recherche d’historique de la ligne de commande au terminal
Se connecter en utilisateur debian
Tapez un début de commande précédent, puis utilisez shift + up (flèche haut) pour rechercher l’historique filtré avec le début de la commande.
# Global, tout utilisateur
echo '"\e[1;2A": history-search-backward' | sudo tee -a /etc/inputrc
echo '"\e[1;2B": history-search-forward' | sudo tee -a /etc/inputrc
Outils, scripts motd et ssh_rc_bash
Installer utilitaires
sudo apt install rsync curl tmux jq figlet git tree
Script ssh_rc_bash
ATTENTION!!! Les scripts sur connexion peuvent poser des problèmes pour des appels externes autres que ssh
wget https://static.xoyaz.xyz/files/ssh_rc_bash
chmod +x ssh_rc_bash # rendre le bash exécutable
./ssh_rc_bash # exécution
Création dossiers Agendas,Divers,homes,Keepass
Dans le dossier multimedia/marina
mkdir /home/yunohost.multimedia/marina/{Agendas,Divers,homes,Keepass}
Admin - Droit root
Autoriser l’administrateur de Yunohost à exécuter des commandes root sans saisir le mot de passe
Il faut ajouter l’option sudoOption avec pour valeur !authenticate
à la branche cn=admins
Créer un fichier add-to-sudo-role.ldif
cat > add-to-sudo-role.ldif << 'EOL'
dn: cn=admins,ou=sudo,dc=yunohost,dc=org
changetype: modify
add: sudoOption
sudoOption: !authenticate
EOL
Puis dans un terminal en mode administrateur, exécuter la commande suivante
ldapmodify -Y EXTERNAL -H ldapi:/// -f add-to-sudo-role.ldif
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
modifying entry "cn=admins,ou=sudo,dc=yunohost,dc=org"
La commande sudo -s
ne demande plus le mot de passe
Synology
Préalables
Connecter le synology sur le switch
nmap -T4 -sP 192.168.0.0/24
[...]
Nmap scan report for 192.168.0.25
Host is up (0.00036s latency).
MAC Address: 00:11:32:89:6B:DA (Synology Incorporated)
[...]
Le synology a pris l’adresse IP 192.168.0.25
Accès synology par SSH
ssh -p 57022 Demonica@192.168.0.25
Connexion VPS
Etablir une connexion SSH vers le VPS
Création d’une paire de clés
ssh-keygen -t ed25519 -o -a 100 -f ~/.ssh/syno-eolam
Copie de la clé publique en ajout sur le fichier authorized_keys du serveur VPS
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMfDj9mIL4c+uVEB89I1Ovs9N/PoD5TVE5GoRntbE5Hf root@DiskStation
Connexion SSH
ssh -p 49110 -i ~/.ssh/syno-eolam marina@161.97.139.1
Passer en su
Synchronisation des dossiers synology vers le serveur VPS
# calibre
rsync -avz --progress --stats --human-readable --exclude="@*" --exclude="#recycle" --delete --rsync-path="rsync" -e "ssh -p 49110 -i ~/.ssh/syno-eolam" /volume1/calibre/* marina@161.97.139.1:/home/yunohost.multimedia/marina/eBook/
# Music
rsync -avz --progress --stats --human-readable --exclude="@*" --exclude="#recycle" --delete --rsync-path="rsync" -e "ssh -p 49110 -i ~/.ssh/syno-eolam" /volume1/Music/* marina@161.97.139.1:/home/yunohost.multimedia/marina/Music/
# photo
rsync -avz --progress --stats --human-readable --exclude="@*" --exclude="#recycle" --delete --rsync-path="rsync" -e "ssh -p 49110 -i ~/.ssh/syno-eolam" /volume1/photo/* marina@161.97.139.1:/home/yunohost.multimedia/marina/Picture/
# Keepass
rsync -avz --progress --stats --human-readable --exclude="@*" --exclude="#recycle" --delete --rsync-path="rsync" -e "ssh -p 49110 -i ~/.ssh/syno-eolam" /volume1/Keepass/* marina@161.97.139.1:/home/yunohost.multimedia/marina/Keepass/
# Agendas
rsync -avz --progress --stats --human-readable --exclude="@*" --exclude="#recycle" --delete --rsync-path="rsync" -e "ssh -p 49110 -i ~/.ssh/syno-eolam" /volume1/Agendas/* marina@161.97.139.1:/home/yunohost.multimedia/marina/Agendas/
# homes
rsync -avz --progress --stats --human-readable --exclude="admin/.Trash*" --exclude="Yannick" --exclude="Demonica/Twilight" --exclude="Demonica/Android_Tel/Ptit Math_Tél/Téléchargement" --exclude="Demonica/.Trash*" --exclude="#recycle" --delete --rsync-path="rsync" -e "ssh -p 49110 -i ~/.ssh/syno-eolam" /volume1/homes/* marina@161.97.139.1:/home/yunohost.multimedia/marina/homes/
Applications
Serveur Nextcloud
eolam.fr/nextcloud
Ajout domaine cloud.eolam.fr en utilisant l’administration web
Ou en ligne de commande : sudo yunohost domain add cloud.eolam.fr
Ajout certificats en utilisant l’administration web
Ou en ligne de commande : sudo yunohost domain cert-install cloud.eolam.fr --no-checks
Installer nextcloud hub 3 version 25
sudo yunohost app install https://github.com/YunoHost-Apps/nextcloud_ynh/tree/testing
Choose the domain where this app should be installed [eolam.fr | cloud.eolam.fr]: eolam.fr
Choose the URL path (after the domain) where this app should be installed: /nextcloud
Choose an administrator user for this app [marina]: marina
Should this app be exposed to anonymous visitors? [yes | no]: yes
Access the users home folder from Nextcloud? [yes | no]: no
[...]
Success! Installation completed
Accès par le lien https://eolam.fr/nextcloud
Paramétrage Nextcloud v25+
Nextcloud de base v25+ est installé
On se connecte en administrateur sur nextcloud
Cliquer sur l’icône utilisateur en haut à droite de l’écran
Une vérification est faite sur Vue d’ensemble dans la rubrique Administration
clic sur Apparence et accessibilité dans la rubrique Personnel
Sélectionner Thème sombre
Arrière-plan
Messagerie
Test, voir la messagerie
En ligne de commande, ajouter 'default_phone_region' => 'FR',
dans le fichier /var/www/nextcloud/config/config.php avant le tag de fin de fichier );
Dossiers multimedia
Photo
Paramétrage
Calibre web
- Ajout domaine et certificats calibre.eolam.fr par le web admin
- Modifier la configuration du domaine pour positionner la gestion des messages entrants et sortants à Non
-
Gérer les certificats SSL, en ligne de commande
yunohost domain cert-install calibre.eolam.fr –no-checks
Success! Configuration updated for 'nginx'
Success! Let's Encrypt certificate now installed for the domain 'calibre.eolam.fr'
Installer l’application Calibre-web par l’administration web
Par défaut, le processus de sauvegarde de Yunohost sauvegarde la bibliothèque Calibreweb. Vous pouvez désactiver la sauvegarde de la bibliothèque avec
yunohost app setting calibreweb do_not_backup_data -v 1
Par défaut, la suppression de l’application ne supprimera jamais la bibliothèque.
Ouvrir le lien https://calibre.eolam.fr
Se connecter avec l’utilisateur marina qui est l’administrateur de calibre-web
Cliquer sur Administrateur
Modifier le chemin de la base et des données Calibre “Edit Calibre Database Configuration”: /home/yunohost.multimedia/marina/eBook
Thème sombre
Editer la configuration de l’interface utilisateur → Configuration du mode d’affichage
Transmission
Installer par l’interface web admin
Audio Navidrome
Domaine zic.eolam.fr
Ajout domaine et certificats SSL zic.eolam.fr par interface web admin
Certificats zic.eolam.fr
yunohost domain cert install zic.eolam.fr --no-checks
Success! Configuration updated for 'nginx'
Success! Let's Encrypt certificate now installed for the domain 'zic.eolam.fr'
Installer application Navidrome
Après installation, aller dans Applications Navidrome
Modifier le répertoire de la musique et ajouter le dossier des “playlists” dans le fichier /var/lib/navidrome/navidrome.toml
# Folder to store application data (DB, cache…)
DataFolder = "/var/lib/navidrome"
# Folder where your music library is stored. Can be read-only
MusicFolder = "/home/yunohost.multimedia/marina/Music"
Faire une sauvegarde après modification
sudo cp /var/lib/navidrome/navidrome.toml /var/lib/navidrome/navidrome.toml.sav
Redémarrer navidrome
sudo systemctl restart navidrome
Ouvrir le lien https://zic.eolam.fr/ et saisir un identifiant + mot de passe pour le compte administrateur
Test de sécurité
Analyse SSL contre le site Web pour trouver le score et la vulnérabilité essentielle.