<?xml version="1.0" encoding="utf-8"?><feedxmlns="http://www.w3.org/2005/Atom"xml:lang="fr"><generatoruri="https://jekyllrb.com/"version="4.3.4">Jekyll</generator><linkhref="https://static.rnmkcy.eu/feed.xml"rel="self"type="application/atom+xml"/><linkhref="https://static.rnmkcy.eu/"rel="alternate"type="text/html"hreflang="fr"/><updated>2024-11-21T17:12:47+01:00</updated><id>https://static.rnmkcy.eu/feed.xml</id><titletype="html">YannStatic</title><subtitle>Expérimentations et tests
</subtitle><entry><titletype="html">Lynis pour auditer et renforcer la sécurité des systèmes basés sur Linux</title><linkhref="https://static.rnmkcy.eu/2024/11/09/Lynis.html"rel="alternate"type="text/html"title="Lynis pour auditer et renforcer la sécurité des systèmes basés sur Linux"/><published>2024-11-09T00:00:00+01:00</published><updated>2024-11-09T00:00:00+01:00</updated><id>https://static.rnmkcy.eu/2024/11/09/Lynis</id><contenttype="html"xml:base="https://static.rnmkcy.eu/2024/11/09/Lynis.html"><![CDATA[*Lynis est un outil conçu pour auditer et renforcer la sécurité des systèmes d’exploitation basés sur Unix et Linux qui a la capacité à fournir des analyses détaillées et des recommandations personnalisées*
## Audit Sécurité
* [Auditez la sécurité de vos serveurs avec Lynis](https://blog.stephane-robert.info/docs/securiser/durcissement/lynis/)
* [Comment effectuer un audit de sécurité Linux avec Lynis ?](https://www.it-connect.fr/scan-de-votre-systeme-unix-avec-lynis/)
### Installer lynis
```bash
cd /home/leno/scripts
git clone https://github.com/CISOfy/lynis
```
Pour une exécution en mode su : `sudo -s`
```bash
cd ~
chown -R 0:0 lynis
```
### Lancement audit
On passe en mode su
sudo -s
Se rendre dans le dossier lynis et lancer le bash
```bash
cd /home/leno/scripts/lynis
./lynis audit system
```
Lynis affiche des informations en temps réel pendant l’audit. Vous verrez des sections telles que “Boot and services”, “Software: antivirus”, “Kernel”, etc.
Lynis utilise des codes de couleur pour souligner l’importance des résultats. Par exemple, le rouge indique un problème critique, tandis que le jaune signale des avertissements.
### Analyse du score de l’audit
Le score de l’audit Lynis est une mesure quantitative qui reflète l’état de sécurité de votre système. À la fin de chaque audit, Lynis attribue un score, exprimé en pourcentage, qui évalue la robustesse de votre configuration de sécurité. Ce score est calculé en fonction de divers facteurs, tels que les vulnérabilités détectées, les configurations de sécurité non optimales et les bonnes pratiques en matière de sécurité qui sont déjà en place.
![](/images/lynis01.png)
Un score élevé indique que votre système est bien configuré et qu’il respecte de nombreuses bonnes pratiques de sécurité. Cela signifie que Lynis a trouvé moins de problèmes et de vulnérabilités et que les mesures de sécurité importantes sont déjà en place. Inversement, un score bas suggère que des améliorations significatives sont nécessaires pour renforcer la sécurité de votre système. Il indique généralement la présence de nombreuses vulnérabilités ou de configurations de sécurité inadéquates.
Il est important d’utiliser le score de l’audit comme un indicateur de progression dans vos efforts de sécurisation. Après avoir apporté des changements recommandés par Lynis, vous devriez ré-exécuter l’outil pour voir si vos actions ont conduit à une amélioration du score. L’augmentation du score d’un audit à l’autre est un signe positif que vous avez réussi à améliorer la sécurité de votre système.
### Analyse Détaillée des Résultats
À la fin de l’audit, Lynis fournit un résumé des résultats, y compris les avertissements et suggestions. Pour chaque point soulevé, Lynis fournit des détails spécifiques sur la nature du problème ou de la suggestion. Lynis liste également les tests effectués et leurs résultats, ce qui vous aide à comprendre quels aspects de votre système ont été audités.
Lynis enregistre les résultats dans des fichiers de log, généralement situés dans `/var/log/lynis.log`
Chaque avertissement ou suggestion est accompagné d’un code unique (par exemple, SSH-7408) et d’un message descriptif. Ce code peut être utilisé pour rechercher des informations supplémentaires dans la documentation de Lynis ou sur internet.
Recherche mot clé "Suggestion" dans le fichier log
config-data=sysctl;security.bsd.see_other_gids;0;1;Groups only see their own processes;sysctl -a;-;category:security;
config-data=sysctl;security.bsd.see_other_uids;0;1;Users only see their own processes;sysctl -a;-;category:security;
config-data=sysctl;security.bsd.stack_guard_page;1;1;Enable stack smashing protection (SSP)/ProPolice to defend against possible buffer overflows;-;category:security;
config-data=sysctl;security.bsd.unprivileged_proc_debug;0;1;Unprivileged processes can not use process debugging;sysctl -a;-;category:security;
config-data=sysctl;security.bsd.unprivileged_read_msgbuf;0;1;Unprivileged processes can not read the kernel message buffer;sysctl -a;-;category:security;
config-data=sysctl;fs.protected_symlinks;1;1;Restrict symlink following behavior;sysctl -a;url:https;//www.kernel.org/doc/Documentation/sysctl/fs.txt;category:security;
#config-data=sysctl;kern.randompid=2345;Randomize PID numbers with a specific modulus;sysctl -a;-;category:security;
config-data=sysctl;kernel.dmesg_restrict;1;1;Restrict use of dmesg;sysctl -a;url:https;//kernel.org/doc/Documentation/sysctl/kernel.txt;category:security;
config-data=sysctl;kernel.kptr_restrict;2;1;Restrict access to kernel symbols;sysctl -a;url:https;//kernel.org/doc/Documentation/sysctl/kernel.txt;category:security;
config-data=sysctl;kernel.maps_protect;1;1;Restrict access to /proc/[pid]/maps;sysctl -a;url:https;//kernel.org/doc/Documentation/sysctl/kernel.txt;category:security;
config-data=sysctl;kernel.modules_disabled;1;1;Restrict module loading once this sysctl value is loaded;sysctl -a;url:https;//kernel.org/doc/Documentation/sysctl/kernel.txt;category:security;
config-data=sysctl;kernel.perf_event_paranoid;2|3|4;1;Restrict unprivileged access to the perf_event_open() system call.;sysctl -a;url:https;//kernel.org/doc/Documentation/sysctl/kernel.txt;category:security;
config-data=sysctl;kernel.randomize_va_space;2;1;Randomize of memory address locations (ASLR);sysctl -a;url:https;//kernel.org/doc/Documentation/sysctl/kernel.txt;category:security;
config-data=sysctl;net.inet.tcp.always_keepalive;0;1;Disable TCP keep alive detection for dead peers as the keepalive can be spoofed;-;category:security;
#config-data=sysctl;net.inet.tcp.fast_finwait2_recycle;1;1;Recycle FIN/WAIT states more quickly (DoS mitigation step, with risk of false RST);-;category:security;
config-data=sysctl;net.inet.tcp.nolocaltimewait;1;1;Remove the TIME_WAIT state for loopback interface;-;category:security;
config-data=sysctl;net.inet.tcp.path_mtu_discovery;0;1;Disable MTU discovery as many hosts drop the ICMP type 3 packets;-;category:security;
config-data=sysctl;net.inet.icmp.bmcastecho;0;1;Ignore ICMP packets directed to broadcast address;-;category:security;
config-data=sysctl;net.inet.tcp.icmp_may_rst;0;1;ICMP may not send RST to avoid spoofed ICMP/UDP floods;-;category:security;
config-data=sysctl;net.inet.icmp.drop_redirect;1;1;Do not allow redirected ICMP packets;-;category:security;
config-data=sysctl;net.ipv4.conf.default.accept_source_route;0;1;Disable IP source routing;-;category:security;
config-data=sysctl;net.ipv4.conf.default.log_martians;1;1;Log all packages for which the host does not have a path back to the source;-;category:security;
config-data=sysctl;net.ipv4.icmp_echo_ignore_broadcasts;1;1;Ignore ICMP packets directed to broadcast address;-;category:security;
config-data=sysctl;security.bsd.hardlink_check_gid;1;1;Unprivileged processes are not allowed to create hard links to files which are owned by other groups;-;category:security;
config-data=sysctl;security.bsd.hardlink_check_uid;1;1;Unprivileged processes are not allowed to create hard links to files which are owned by other users;-;category:security;
# Allow this system to be purged when it is outdated (default: not defined).
# This is useful for ephemeral systems which are short-lived.
#allow-auto-purge=yes
# Sometimes it might be useful to override the host identifiers.
# Use only hexadecimal values (0-9, a-f), with 40 and 64 characters in length.
#
#hostid=40-char-hash
#hostid2=64-char-hash
# Lynis Enterprise license key
license-key=
# Proxy settings
# Protocol (http, https, socks5)
#proxy-protocol=https
# Proxy server
#proxy-server=10.0.1.250
# Define proxy port to use
#proxy-port=3128
# Define the group names to link to this system (preferably single words). Default setting: append
# To clear groups before assignment, add 'action:clear' as last groupname
#system-groups=groupname1,groupname2,groupname3
# Define which compliance standards are audited and reported on. Disable this if not required.
compliance-standards=cis,hipaa,iso27001,pci-dss
# Provide the name of the customer/client
#system-customer-name=mycustomer
# Upload data to central server
upload=no
# The hostname/IP address to receive the data
upload-server=
# Provide options to cURL (or other upload tool) when uploading data.
# upload-options=--insecure (use HTTPS, but skip certificate check for self-signed certificates)
upload-options=
# Link one or more tags to a system
#tags=db,production,ssn-1304
#EOF
{% endhighlight %}
</details>
Rapport après modification
![](/images/lynis02.png)]]></content><author><name></name></author><categoryterm="outils"/><summarytype="html"><![CDATA[Lynis est un outil conçu pour auditer et renforcer la sécurité des systèmes d’exploitation basés sur Unix et Linux qui a la capacité à fournir des analyses détaillées et des recommandations personnalisées]]></summary></entry><entry><titletype="html">Rkhunter (Rootkit Hunter)</title><linkhref="https://static.rnmkcy.eu/2024/11/09/Rkhunter-Rootkit_Hunter.html"rel="alternate"type="text/html"title="Rkhunter (Rootkit Hunter)"/><published>2024-11-09T00:00:00+01:00</published><updated>2024-11-09T00:00:00+01:00</updated><id>https://static.rnmkcy.eu/2024/11/09/Rkhunter-Rootkit_Hunter</id><contenttype="html"xml:base="https://static.rnmkcy.eu/2024/11/09/Rkhunter-Rootkit_Hunter.html"><![CDATA[*Rootkit Hunter analyse les systèmes pour détecter les rootkits, portes dérobées, renifleurs et exploits connus et inconnus.*
Il vérifie :
* SHA256 hash
* les fichiers couramment créés par rootkits
* les exécutables avec des permissions de fichiers anormales
* les chaînes suspectes dans les modules du noyau
* les fichiers cachés dans les répertoires système
* peut éventuellement scanner dans les fichiers.
Utiliser seul **rkhunter** ne garantit pas qu'un système n'est pas compromis. Il est recommandé d ' effectuer des essais supplémentaires, tels que le **[chkrootkit](https://linuxcapable.com/how-to-install-chkrootkit-on-ubuntu-linux/ 'How to Install Chkrootkit on Ubuntu 24.04, 22.04, or 20.04')**.
## Rkhunter
![](/images/rkhunter01.png)
* [Installer et configurer Rootkit-Hunter](https://wiki-sinp.cbn-alpin.fr/serveurs/installation/rkhunter)
* [Comment installer et configurer Rootkit Hunter sur Ubuntu/Debian](https://www.webhi.com/how-to/fr/comment-installer-et-configurer-rootkit-hunter-sur-ubuntu-debian/)
### Mise à jour système
Avant installation, mise à jour système debian
sudo apt update && sudo apt upgrade -y
### Installation et configuration
Installation
sudo apt install rkhunter
Configuration
* Fichiers de config : `/etc/rkhunter.conf` et `/etc/default/rkhunter`
* Fichier de log : `/var/log/rkhunter.log`
Après avoir installé Rkhunter, vous devez le configurer
sudo nano /etc/default/rkhunter
```bash
# Défauts pour rkhunter tâches automatiques
# sourced by /etc/cron.*/rkhunter and /etc/apt/apt.conf.d/90rkhunter
#
# C'est un fragment de shell POSIX
#
# Définir ceci à oui pour permettre les courses quotidiennes rkhunter
# (par défaut: faux)
CRON_DAILY_RUN="true"
# Définir ceci à oui pour permettre la mise à jour de la base de données hebdomadaire rkhunter
# (par défaut: faux)
CRON_DB_UPDATE="true"
# Définir ceci à oui pour permettre les rapports des mises à jour hebdomadaires de la base de données
# (par défaut: faux)
DB_UPDATE_EMAIL="false"
# Définir ceci à l'adresse e-mail où les rapports et la sortie d'exécution doivent être envoyés
# (par défaut: root)
REPORT_EMAIL="root"
# Définir ceci à oui pour activer les mises à jour automatiques de la base de données
# (par défaut: faux)
APT_AUTOGEN="true"
# Les Nicenesses vont de -20 (horaire le plus favorable) à 19 (le moins favorable)
# (par défaut: 0)
NICE="0"
# Si le contrôle quotidien est effectué lors de la batterie
# powermgmt-base est nécessaire pour détecter si fonctionnant sur la batterie ou sur la puissance AC
# (par défaut: faux)
RUN_CHECK_ON_BATTERY="false"
```
Indiquer les faux positifs, en ajoutant au fichier de config `/etc/rkhunter.conf`
sudo nano /etc/rkhunter.conf
```
ALLOW_SSH_ROOT_USER=prohibit-password
# Config permettant la mise à jour pour éviter l'erreur :
MAIL_CMD=mail -s "[rkhunter] Avertissements sur ${HOST_NAME}" -r postmaster@rnmkcy.eu
# Option évitant les faux positifs en se basant sur Dpkg
# ATTENTION : lancer ''rkhunter --propupd'' après avoir modifier cet option !
PKGMGR=DPKG
# Pour Debian 10 uniquement, corriger l'emplacement des scripts suivant (/usr/bin/ au lieu de /bin) :
SCRIPTWHITELIST=/usr/bin/egrep
SCRIPTWHITELIST=/usr/bin/fgrep
SCRIPTWHITELIST=/usr/bin/which
# Désactiver les faux positifs sur db-srv
ALLOWDEVFILE="/dev/shm/PostgreSQL.*"
# Exemples de faux positifs à désactiver :
ALLOWHIDDENDIR="/dev/.udev"
ALLOWHIDDENDIR="/dev/.static"
ALLOWDEVFILE="/dev/.udev/rules.d/root.rules"
```
ATTENTION : suite à l'installation et configuration de Rkhunter, il est nécessaire de lancer la commande suivante :
sudo rkhunter --propupd
```
[ Rootkit Hunter version 1.4.6 ]
File updated: searched for 181 files, found 143
```
### Mise à jour de la base de données Rkhunter
Avant de lancer l’analyse de Rkhunter, vous devez mettre à jour sa base de données de rootkits et de logiciels malveillants connus
sudo rkhunter update
### Exécuter analyse rkhunter
lancer l’analyse Rkhunter
sudo rkhunter --check
Patienter...
### Examiner rapport Rkhunter
Une fois l’analyse de Rkhunter terminée, examiner le rapport de Rkhunter afin d’identifier toute menace potentielle.
Le rapport Rkhunter se trouve dans le fichier `/var/log/rkhunter.log`
```
System checks summary
=====================
File properties checks...
Files checked: 143
Suspect files: 0
Rootkit checks...
Rootkits checked : 498
Possible rootkits: 0
Applications checks...
All checks skipped
The system checks took: 42 minutes and 12 seconds
All results have been written to the log file: /var/log/rkhunter.log
No warnings were found while checking the system.
```
## Utilisation et commandes
* Vérifier dernière version : `rkhunter --versioncheck`
* Mettre à jour le programme : `rkhunter --update`
* Lister les différents tests effectués : `rkhunter --list`
* **ATTENTION** : suite à l'installation et configuration de Rkhunter, il est nécessaire de lancer la commande suivante (=> indique à Rkhunter que tout est OK) : `rkhunter --propupd`
* Effectuer une vérification : `rkhunter --checkall`
* Vérification avec juste les alertes importantes : `rkhunter -c --rwo`
* Accéder aux logs de RkHunter : `nano /var/log/rkhunter.log`]]></content><author><name></name></author><categoryterm="outils"/><summarytype="html"><![CDATA[Rootkit Hunter analyse les systèmes pour détecter les rootkits, portes dérobées, renifleurs et exploits connus et inconnus.]]></summary></entry><entry><titletype="html">PostgreSQL</title><linkhref="https://static.rnmkcy.eu/2024/11/08/PostgreSQL.html"rel="alternate"type="text/html"title="PostgreSQL"/><published>2024-11-08T00:00:00+01:00</published><updated>2024-11-08T00:00:00+01:00</updated><id>https://static.rnmkcy.eu/2024/11/08/PostgreSQL</id><contenttype="html"xml:base="https://static.rnmkcy.eu/2024/11/08/PostgreSQL.html"><![CDATA[## PostgreSQL
<li><ahref="https://public.dalibo.com/exports/formation/manuels/modules/i1/i1.handout.html">Sauvegarde et restauration</a></li>
</div>
</div>
</div>
### Installation
Installation sur archlinux
yay -S postgresql
Relever version `postgres --version`
*postgres (PostgreSQL) 16.3*
### Configurer le serveur PostgreSQL
Pour configurer le serveur PostgreSQL sur Arch Linux, vous devez installer le paquetage Postgresql. Ensuite, vous pouvez démarrer le service en initialisant le cluster de base de données. Vous pouvez définir un mot de passe pour le super-utilisateur et créer des bases de données et des tables.
Comme nous avons déjà installé PostgreSQL, nous devons maintenant le configurer. Pour cela, passez d'abord à l'utilisateur Postgres avec cette commande :
sudo -iu postgres
Prompt : `[postgres@pc1 ~]$`
initialiser le répertoire pour les données.
PostgreSQL stockera ses données dans ce répertoire. Vous pouvez utiliser l'emplacement par défaut `/var/lib/postgres/data` ou en choisir un autre.
Vous pouvez également activer les sommes de contrôle des données pour renforcer l'intégrité des données en ajoutant l'argument `--data-checksums` à la commande précédente. Pour savoir si les sommes de contrôle des données sont activées, exécutez la commande suivante :
sudo -iu postgres
psql --tuples-only -c "SHOW data_checksums"
![](/images/postgresql02.png)
Pour initialiser le répertoire de données avec les sommes de contrôle activées
Cela créera un nouveau répertoire de données dans `/var/lib/postgres/data/` avec la locale et l'encodage spécifiés. De plus, il effectue une vérification de la somme de contrôle des données pour chaque page écrite sur le disque. Cela permet de détecter les corruptions de données causées par un matériel défectueux.
Vous pouvez également modifier les méthodes d'authentification pour les connexions locales et distantes en ajoutant l'argument ci-dessous à la commande précédente :
--auth-local=peer --auth-host=scram-sha-256
La méthode par défaut est la confiance, ce qui signifie que n'importe qui sur l'hôte peut se connecter en tant qu'utilisateur de la base de données. Cette méthode n'étant pas très sûre, vous pouvez en utiliser une autre.]]></content><author><name></name></author><categoryterm="psql"/><summarytype="html"><![CDATA[PostgreSQL]]></summary></entry><entry><titletype="html">Contabo VPS debian 12 (bookworm) - Yunohost xoyaz.xyz</title><linkhref="https://static.rnmkcy.eu/2024/11/06/Contabo_VPS_debian_bookworm-Yunohost.html"rel="alternate"type="text/html"title="Contabo VPS debian 12 (bookworm) - Yunohost xoyaz.xyz"/><published>2024-11-06T00:00:00+01:00</published><updated>2024-11-06T00:00:00+01:00</updated><id>https://static.rnmkcy.eu/2024/11/06/Contabo_VPS_debian_bookworm-Yunohost</id><contenttype="html"xml:base="https://static.rnmkcy.eu/2024/11/06/Contabo_VPS_debian_bookworm-Yunohost.html"><![CDATA[*YunoHost est une distribution basée sur Debian GNU/Linux composée de logiciels libres et ayant pour objectif de faciliter la pratique de l’auto-hébergement*
Désactiver VNC: Your services → Manage → VPS Control → Manage → Disable VNC et valider par un clic sur Disable
## Yunohost xoyaz.xyz
![ ](/images/yunohost.png)
**Pré-requis**
Un serveur dédié ou virtuel avec Debian 12 (Bookworm) pré-installé (avec un kernel >= 6.1), avec au moins 512Mo de RAM et 16Go de capacité de stockage
### Script installation
**Lancer le script d'installation**
Ouvrez la ligne de commande sur votre serveur (soit directement, soit avec SSH)
Vous devez être connecté en tant que root, curl installé (which curl)
Lancez la commande suivante :
curl https://install.yunohost.org | bash
Détails de l'installation dans `/var/log/yunohost-installation_20241104_150816.log`
### Post-installation
post-installation de Yunohost.
yunohost tools postinstall
Suivre la procédure
```
Main domain: xoyaz.xyz
Admin username: yani
Admin full name: yani bopro
New administration password: ********************
Confirm new administration password: ********************
Warning: The YunoHost project is a team of volunteers who have made common cause to create a free operating system for servers, called YunoHost. The YunoHost software is published under the AGPLv3 license (<https://www.gnu.org/licenses/agpl-3.0.txt>). In connection with this software, the project administers and makes available several technical and community services for various purposes. By using these services, you agree to be bound by the following Terms of Services: <https://yunohost.org/terms_of_services>.
I have read and understand the Terms of Services [Y/N]: Y
Info: Installing YunoHost…
Success! Self-signed certificate now installed for the domain 'xoyaz.xyz'
Success! Domain created
Info: The email alias 'root@xoyaz.xyz' will be added to the group 'admins'
Info: The email alias 'admin@xoyaz.xyz' will be added to the group 'admins'
Info: The email alias 'admins@xoyaz.xyz' will be added to the group 'admins'
Info: The email alias 'webmaster@xoyaz.xyz' will be added to the group 'admins'
Info: The email alias 'postmaster@xoyaz.xyz' will be added to the group 'admins'
Info: The email alias 'abuse@xoyaz.xyz' will be added to the group 'admins'
Info: Updating aliases for group 'admins'
Info: The app catalog cache is empty or obsolete.
Info: Updating application catalog…
Info: (Will fetch 537 logos, this may take a couple minutes)
```
### DNS OVH xoyaz.xyz
![](/images/dns-logo.png){:width="50"}
Configuration DNS domaine par défaut **xoyaz.xyz**
yunohost domain dns suggest xoyaz.xyz
La configuration DNS du domaine
```
Warning: No diagnosis cache yet for category 'dnsrecords'
Info: This command shows you the *recommended* configuration. It does not actually set up the DNS configuration for you. It is your responsability to configure your DNS zone in your registrar according to this recommendation.
; Basic ipv4/ipv6 records
@ 3600 IN A 37.60.230.30
@ 3600 IN AAAA 2a02:c206:2162:8819::1
; Mail
@ 3600 IN MX 10 xoyaz.xyz.
@ 3600 IN TXT "v=spf1 a mx -all"
mail._domainkey 3600 IN TXT "v=DKIM1; h=sha256; k=rsa; p=MIGfMA0GCSqGSIb....EQIDAQAB"
_dmarc 3600 IN TXT "v=DMARC1; p=none"
; Extra
* 3600 IN A 37.60.230.30
* 3600 IN AAAA 2a02:c206:2162:8819::1
@ 3600 IN CAA 0 issue "letsencrypt.org"
```
![](/images/ovh-logo-a.png){:height="20"}
Se connecter à l'espace client du site OVH : **Web cloud → Domaines → xoyaz.xyz → Zone DNS**
Cliquer sur **"Modifier en mode textuel"**, garder les 4 premières lignes :
![](/images/dns-ovh-zone.png){:width="600"}
puis effacer tout ce qu'il y a en-dessous, et le remplacer par la configuration donnée par votre serveur avec la commande `yunohost domain dns suggest xoyaz.xyz`
### Certificats SSL Let's Encrypt xoyaz.xyz
![](/images/LetsEncrypt-a.png){:height="30"}
On active les certificats SSL pour le domaine xoyaz.xyz
La liste des paramètres modifiables : `sudo yunohost settings list`
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.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.ssh_port -v 55030
Accès depuis <u>l'ordinateur de bureau</u> avec la clé privée
```bash
ssh -p 55030 -i ~/.ssh/xoyaz-ed25519 yani@37.60.230.30 # avec ip serveur
ssh -p 55030 -i ~/.ssh/xoyaz-ed25519 yani@xoyaz.xyz # avec domaine serveur
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.
```bash
# 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
```
### Diagnostique
La machine ayant été redémarré après la configuration dns , on peut lancer une vérification
sudo yunohost diagnosis run
Lecture après exécution
sudo yunohost diagnosis show --human-readable
Résultat
```
=================================
Base system (basesystem)
=================================
[INFO] Server hardware architecture is kvm amd64
- Server model is QEMU Standard PC (i440FX + PIIX, 1996)
[INFO] Server is running Linux kernel 6.1.0-26-amd64
[INFO] Server is running Debian 12.7
[INFO] Server is running YunoHost 12.0.6 (stable)
- yunohost version: 12.0.6 (stable)
- yunohost-admin version: 12.0.3.5 (stable)
- yunohost-portal version: 12.0.6 (stable)
- moulinette version: 12.0.3 (stable)
- ssowat version: 12.0.3 (stable)
=================================
Internet connectivity (ip)
=================================
[SUCCESS] Domain name resolution is working!
[SUCCESS] The server is connected to the Internet through IPv4!
- Global IP: 37.60.230.30
- Local IP: 37.60.230.30
[SUCCESS] The server is connected to the Internet through IPv6!
- Global IP: 2a02:c206:2162:8819::1
- Local IP: 2a02:c206:2162:8819::1
=================================
DNS records (dnsrecords)
=================================
[SUCCESS] DNS records are correctly configured for domain xoyaz.xyz (category basic)
[SUCCESS] DNS records are correctly configured for domain xoyaz.xyz (category mail)
[SUCCESS] DNS records are correctly configured for domain xoyaz.xyz (category extra)
[SUCCESS] Your domains are registered and not going to expire anytime soon.
- xoyaz.xyz expires in 119 days.
=================================
Ports exposure (ports)
=================================
[SUCCESS] Port 25 is reachable from the outside.
- Exposing this port is needed for email features (service postfix)
[SUCCESS] Port 80 is reachable from the outside.
- Exposing this port is needed for web features (service nginx)
[SUCCESS] Port 443 is reachable from the outside.
- Exposing this port is needed for web features (service nginx)
[SUCCESS] Port 587 is reachable from the outside.
- Exposing this port is needed for email features (service postfix)
[SUCCESS] Port 993 is reachable from the outside.
- Exposing this port is needed for email features (service dovecot)
[SUCCESS] Port 55030 is reachable from the outside.
- Exposing this port is needed for admin features (service ssh)
=================================
Web (web)
=================================
[SUCCESS] Domain xoyaz.xyz is reachable through HTTP from outside the local network.
=================================
Email (mail)
=================================
[SUCCESS] The SMTP mail server is able to send emails (outgoing port 25 is not blocked).
[SUCCESS] The SMTP mail server is reachable from the outside and therefore is able to receive emails!
[SUCCESS] Your reverse DNS is correctly configured!
[SUCCESS] The IPs and domains used by this server do not appear to be blacklisted
[SUCCESS] 0 pending emails in the mail queues
=================================
Services status check (services)
=================================
[SUCCESS] Service dnsmasq is running!
[SUCCESS] Service dovecot is running!
[SUCCESS] Service fail2ban is running!
[SUCCESS] Service nginx is running!
[SUCCESS] Service opendkim is running!
[SUCCESS] Service postfix is running!
[SUCCESS] Service slapd is running!
[SUCCESS] Service ssh is running!
[SUCCESS] Service yunohost-api is running!
[SUCCESS] Service yunohost-firewall is running!
[SUCCESS] Service yunohost-portal-api is running!
[SUCCESS] Service yunomdns is running!
=================================
System resources (systemresources)
=================================
[SUCCESS] The system still has 5.2 GiB (90%) RAM available out of 5.8 GiB.
[INFO] The system has no swap at all. You should consider adding at least 512 MiB of swap to avoid situations where the system runs out of memory.
- Please be careful and aware that if the server is hosting swap on an SD card or SSD storage, it may drastically reduce the life expectancy of the device.
[SUCCESS] Storage / (on device /dev/sda3) still has 368 GiB (99.3%) space left (out of 371 GiB)!
[SUCCESS] Storage /boot (on device /dev/sda2) still has 1.7 GiB (94.5%) space left (out of 1.8 GiB)!
=================================
System configurations (regenconf)
=================================
[SUCCESS] All configuration files are in line with the recommended configuration!
=================================
Applications (apps)
=================================
[SUCCESS] All installed apps respect basic packaging practices
```
### Ldap admin sudo
*On veut autoriser l’utilisateur administrateur de Yunohost à exécuter des commandes root sans avoir à saisir le mot de passe*
Success! Self-signed certificate now installed for the domain 'cinay.eu'
Success! Configuration updated for 'nginx'
Success! Configuration updated for 'postfix'
Success! Configuration updated for 'dovecot'
Success! Configuration updated for 'dnsmasq'
Success! Domain created
```
### Paramètres DNS cinay.eu
yunohost domain dns suggest cinay.eu
La configuration DNS du domaine
```
Info: This command shows you the *recommended* configuration. It does not actually set up the DNS configuration for you. It is your responsability to configure your DNS zone in your registrar according to this recommendation.
; Basic ipv4/ipv6 records
@ 3600 IN A 37.60.230.30
@ 3600 IN AAAA 2a02:c206:2162:8819::1
; Mail
@ 3600 IN MX 10 cinay.eu.
@ 3600 IN TXT "v=spf1 a mx -all"
; Extra
* 3600 IN A 37.60.230.30
* 3600 IN AAAA 2a02:c206:2162:8819::1
@ 3600 IN CAA 0 issue "letsencrypt.org"
```
![](/images/ovh-logo-a.png){:height="20"}
Se connecter à l'espace client du site OVH : **Web cloud → Domaines → cinay.eu → Zone DNS**
Cliquer sur **"Modifier en mode textuel"**, garder les 4 premières lignes :
![](/images/dns-ovh-zone.png){:width="600"}
puis effacer tout ce qu'il y a en-dessous, et le remplacer par la configuration donnée par votre serveur avec la commande `yunohost domain dns suggest cinay.eu`
### Certificats SSL Let's Encrypt cinay.eu
![](/images/LetsEncrypt-a.png){:height="30"}
On active les certificats SSL pour le domaine cinay.eu
yunohost domain cert install cinay.eu --no-checks
Résultat
```
[...]
Success! Configuration updated for 'nginx'
Success! Let's Encrypt certificate now installed for the domain 'cinay.eu'
yunohost user update yack --add-mailalias yann@cinay.eu
yunohost user update yack --add-mailalias boproyan@cinay.eu
yunohost user update yack --add-mailalias discord@cinay.eu
yunohost user update yack --add-mailalias wg@cinay.eu
yunohost user update yack --add-mailalias vps@cinay.eu
yunohost user update yack --add-mailalias vpn@cinay.eu
yunohost user update yack --add-mailalias yannick@cinay.eu
yunohost user update yack --add-mailalias cnx@cinay.eu
yunohost user update yack --add-mailalias yannick.meunier@cinay.eu
yunohost user update yack --add-mailalias domo@cinay.eu
yunohost user update yack --add-mailalias fubo@cinay.eu
yunohost user update yack --add-mailalias iptv@cinay.eu
yunohost user update yack --add-mailalias ign@cinay.eu
yunohost user update yack --add-mailalias map@cinay.eu
yunohost user update yack --add-mailalias debyan@cinay.eu
yunohost user update yack --add-mailalias rnmkcy@cinay.eu
yunohost user update yack --add-mailalias leno@cinay.eu
yunohost user update yack --add-mailalias buyonrakuten@cinay.eu
```
## Domaine yanfi.net
Création domaine
yunohost domain add yanfi.net
```
Success! Self-signed certificate now installed for the domain 'yanfi.net'
Success! Configuration updated for 'nginx'
Success! Configuration updated for 'postfix'
Success! Configuration updated for 'dovecot'
Success! Configuration updated for 'dnsmasq'
Success! Domain created
```
### Paramètres DNS yanfi.net
yunohost domain dns suggest yanfi.net
La configuration DNS du domaine
```
Info: This command shows you the *recommended* configuration. It does not actually set up the DNS configuration for you. It is your responsability to configure your DNS zone in your registrar according to this recommendation.
; Basic ipv4/ipv6 records
@ 3600 IN A 37.60.230.30
@ 3600 IN AAAA 2a02:c206:2162:8819::1
; Mail
@ 3600 IN MX 10 yanfi.net.
@ 3600 IN TXT "v=spf1 a mx -all"
; Extra
* 3600 IN A 37.60.230.30
* 3600 IN AAAA 2a02:c206:2162:8819::1
@ 3600 IN CAA 0 issue "letsencrypt.org"
```
![](/images/ovh-logo-a.png){:height="20"}
Se connecter à l'espace client du site OVH : **Web cloud → Domaines → yanfi.net → Zone DNS**
Cliquer sur **"Modifier en mode textuel"**, garder les 4 premières lignes :
![](/images/dns-ovh-zone.png){:width="600"}
puis effacer tout ce qu'il y a en-dessous, et le remplacer par la configuration donnée par votre serveur avec la commande `yunohost domain dns suggest yanfi.net`
### Certificats SSL Let's Encrypt yanfi.net
![](/images/LetsEncrypt-a.png){:height="30"}
On active les certificats SSL pour le domaine yanfi.net
Sauvegardes borgbackup seront effectuées sur un "Storage Box" Hetzner (u326239.your-storagebox.de), dans le dépôt `ssh://u326239@u326239.your-storagebox.de:23/./backup/borg/xoyaz.xyz`
### Installation
Se connecter sur la page web administration yunohost xoyaz.xyz et installer **Borg Backup**
![](/images/yuno-borg01.png)
Renseigner et installer l'application
![](/images/yuno-borg02.png)
Les fichiers des clés `id_borg_ed25519.pub` et `id_borg_ed25519` dans le dossier `/root/.ssh/
### Boite de stockage
Ajouter la clé Publique `ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAGSDBEyWPgDHgNuWNtaygp6jmIlpWCs6VKnC0oGLTXO root@xoyaz.xyz` au fichier authorized_keys de la boîte de stockage
*Cette opération va se dérouler sur poste ayant accès à la boîte de stockage avec clés SSH*
On télécharge le fichier existant `authorized_keys` de la boîte de stockage **bx11-yann** dans un fichier local nommé `storagebox_authorized_keys`
The authenticity of host '[u326239.your-storagebox.de]:23 ([2a01:4f8:2b01:d53::2]:23)' can't be established.
ED25519 key fingerprint is SHA256:XqONwb1S0zuj5A1CDxpOSuD2hnAArV1A3wKY7Z3sdgM.
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '[u326239.your-storagebox.de]:23' (ED25519) to the list of known hosts.
Connected to u326239.your-storagebox.de.
sftp> quit
```
### Rappel concernant la phrase de passe
La phrase de passe est le seul moyen de décrypter vos sauvegardes. Vous devez veiller à la conserver en sécurité dans un endroit « extérieur » à votre serveur afin de couvrir le scénario dans lequel votre serveur serait détruit pour une raison ou une autre.
{:.info}
### Tester la sauvegarde
À cette étape, votre sauvegarde doit s'exécuter à l'heure prévue. Notez que la première sauvegarde peut prendre beaucoup de temps, car de nombreuses données doivent être copiées via ssh. Les sauvegardes suivantes sont incrémentales : seules les données nouvellement générées depuis la dernière sauvegarde seront copiées.
{:.info}
Si vous souhaitez tester la configuration correcte de Borg Apps avant l'heure prévue, vous pouvez lancer une sauvegarde manuellement à partir de la ligne de commande :
sudo systemctl start borg
Si tout démarre correctement, un message est envoyé:
![](/images/yuno-borg03.png){:width="300"}
Une fois la sauvegarde terminée, vous pouvez vérifier qu'une sauvegarde est listée dans le **webadmin > Applications > Borg > 'Last backups list'**.
![](/images/yuno-borg04.png)
### Exécution manuelle des commandes borg
Le panneau de configuration dispose d'une « Liste des dernières sauvegardes » qui permet de consulter rapidement les archives de sauvegarde récemment créées.
Cependant, vous pouvez vouloir vérifier manuellement que les sauvegardes sont effectivement effectuées régulièrement et qu'elles contiennent le contenu attendu.
Tout d'abord, préparez l'environnement avec les variables borg appropriées :
* borg info "$repository::ARCHIVE_NAME" --verify-data
### Restauration d'archives à partir de Borg
Une « archive » borg peut être exportée vers un fichier `.tar` qui peut ensuite être restauré en utilisant la procédure classique de sauvegarde et de restauration de Yunohost :
**NB : cette commande suppose que vous avez préparé l'environnement comme dans la section précédente**
borg export-tar « $repository::ARCHIVE_NAME » /home/yunohost/archives/ARCHIVE_NAME.tar
#### Restaurez ensuite en utilisant le flux de travail classique :
* à partir de la ligne de commande :
* yunohost backup restore ARCHIVE_NAME
* ou dans le webadmin > Sauvegardes
#### Restaurer la « source+config » de l'application, et ses données séparément
Pour les applications contenant une grande quantité de données, il n'est pas pratique de tout restaurer en une seule fois en raison de l'espace et du temps que cela prendrait.
Au lieu de cela, vous voudrez peut-être restaurer d'abord le « noyau » (la source, la configuration, etc.) de l'application, - et ensuite les données.
Tout d'abord, borg peut exporter une archive `.tar` mais ignorer le chemin correspondant aux données de l'application.
Par exemple, pour exporter une archive tar pour Nextcloud, mais sans ses données :
```shell
borg export-tar --exclude apps/nextcloud/backup/home/yunohost.app "$repository::ARCHIVE_NAME" /home/yunohost.backup/archives/ARCHIVE_NAME.tar
yunohost backup restore ARCHIVE_NAME
```
Ensuite, extrayez les données de Nextcloud directement au bon endroit, **sans passer** par le processus classique de restauration de sauvegarde de YunoHost :
```shell
cd /home/yunohost.app/
borg extract "$repository::ARCHIVE_NAME" apps/nextcloud/backup/home/yunohost.app/
sudo apt install cockpit]]></content><author><name></name></author><categoryterm="vps"/><categoryterm="yunohost"/><summarytype="html"><![CDATA[YunoHost est une distribution basée sur Debian GNU/Linux composée de logiciels libres et ayant pour objectif de faciliter la pratique de l’auto-hébergement]]></summary></entry><entry><titletype="html">Réseau NetworkManager - nmcli</title><linkhref="https://static.rnmkcy.eu/2024/10/31/NetworkManager-nmcli.html"rel="alternate"type="text/html"title="Réseau NetworkManager - nmcli"/><published>2024-10-31T00:00:00+01:00</published><updated>2024-10-31T00:00:00+01:00</updated><id>https://static.rnmkcy.eu/2024/10/31/NetworkManager-nmcli</id><contenttype="html"xml:base="https://static.rnmkcy.eu/2024/10/31/NetworkManager-nmcli.html"><![CDATA[*nmcli (NetworkManager Command Line Interface) est une interface de ligne de commande du gestionnaire de réseau Linux.*
Article original : [nmcli : configurer le réseau NetworkManager sur Linux (Debian, Ubuntu, …)](https://www.malekal.com/nmcli-configurer-reseau-networkmanager-linux/)
### Interfaces réseau
lister les connexions réseau
nmcli connection show
![](/images/nmcli-pc01.png)
Puis pour afficher la configuration d’une interface réseau, saisissez la commande suivante en spécifiant le nom de la connexion réseau obtenue précédemment.
nmcli connection show "bridge0"
![](/images/nmcli-pc02.png)
Vous pouvez aussi utiliser cette commande pour obtenir des informations sur les interfaces réseaux.
nmcli -p device show
![](/images/nmcli-pc03.png)
![](/images/nmcli-pc03a.png)
### Configurer le réseau avec nmcli
**Ajouter une connexion réseau**
`sudo nmcli connection add type <type-reseau> ifname <nom-connexion>`
**Modifier une connexion réseau existante**
Avec nmcli, on peut apporter des ajustements et des configurations à une connexion réseau existante, comme basculer entre les configurations statiques et DHCP
**Définir la méthode de connexion IPv4 et IPv6 en DHCP (IP automatique)**
Pour configurer votre connexion en DHCP :
```bash
#For IPv4
sudo nmcli connection modify gl-inet ipv4.method auto
#For IPv6
sudo sudo nmcli connection modify gl-inet ipv6.method auto
```
Pour que les modifications apportées prennent effet, vous devez activer le profil.
```bash
sudo nmcli connection up gl-inet
```]]></content><author><name></name></author><categoryterm="network"/><summarytype="html"><![CDATA[nmcli (NetworkManager Command Line Interface) est une interface de ligne de commande du gestionnaire de réseau Linux.]]></summary></entry><entry><titletype="html">Lenovo Serveur MySpeed</title><linkhref="https://static.rnmkcy.eu/2024/10/29/Lenovo_Serveur_MySpeed.html"rel="alternate"type="text/html"title="Lenovo Serveur MySpeed"/><published>2024-10-29T00:00:00+01:00</published><updated>2024-10-29T00:00:00+01:00</updated><id>https://static.rnmkcy.eu/2024/10/29/Lenovo_Serveur_MySpeed</id><contenttype="html"xml:base="https://static.rnmkcy.eu/2024/10/29/Lenovo_Serveur_MySpeed.html"><![CDATA[## MySpeed
![](/images/MySpeed.png){:height="80"}
<https://github.com/gnmyt/myspeed>
### Analyse vitesse internet
MySpeed est un logiciel d'analyse de test de vitesse qui enregistre votre vitesse internet pendant 30 jours.
Caractéristiques
* 📊 MySpeed génère des statistiques claires sur la vitesse, le ping, et plus encore.
* ⏰ MySpeed automatise les tests de vitesse et vous permet de définir le temps entre les tests à l'aide d'expressions Cron.
* 🗄️ Ajouter plusieurs serveurs directement à une instance MySpeed
* 🩺 Configurez des contrôles de santé pour vous notifier par email, Signal, WhatsApp ou Telegram en cas d'erreurs ou de temps d'arrêt
* 📆 Les résultats des tests peuvent être stockés jusqu'à 30 jours
* 🔥 Prise en charge de Prometheus et Grafana
* 🗳️ Choisissez entre les serveurs de test de vitesse Ookla, LibreSpeed et Cloudflare
* 💁 En savoir plus sur MySpeed sur [notre site web](https://myspeed.dev/)
### Installer MySpeed
Prérequis
```bash
# debian
sudo apt install wget curl unzip
# alpine linux
sudo apk add wget curl unzip
```
Vous n'avez besoin de faire cela que si vous n'avez pas encore installé NodeJS
![](/images/MySpeed-web04.png)]]></content><author><name></name></author><categoryterm="debian"/><summarytype="html"><![CDATA[MySpeed]]></summary></entry><entry><titletype="html">Lenovo KVM - SearXNG Alpine Linux (alpine-searx)</title><linkhref="https://static.rnmkcy.eu/2024/10/22/KVM-Alpine-Linux-Docker-SearXNG.html"rel="alternate"type="text/html"title="Lenovo KVM - SearXNG Alpine Linux (alpine-searx)"/><published>2024-10-22T00:00:00+02:00</published><updated>2024-10-22T00:00:00+02:00</updated><id>https://static.rnmkcy.eu/2024/10/22/KVM-Alpine-Linux-Docker-SearXNG</id><contenttype="html"xml:base="https://static.rnmkcy.eu/2024/10/22/KVM-Alpine-Linux-Docker-SearXNG.html"><![CDATA[*Alpine Linux est une distribution Linux ultra-légère...*
* [Création machines virtuelles KVM avec la commande virsh](/2023/12/17/Installer_KVM_Kernel_Virtual_Machine_sur_un_serveur.html#création-machines-virtuelles-kvm-avec-la-commande-virsh)
* [Accéder aux machines virtuelles KVM via le client VNC](/2023/12/17/Installer_KVM_Kernel_Virtual_Machine_sur_un_serveur.html#accéder-aux-machines-virtuelles-kvm-via-le-client-vnc)
Création d'une image virtuelle **alpine-searx** sous le serveur Lenovo rnmkcy.eu
On se connecte sur le serveur Lenovo en SSH, puis on exécute la commande suivante pour créer une machine virtuelle Alpine avec 2 Go de RAM, 1 cœur de processeur et 5 Go de disque dur
Note: La dernière version Alpine Linux est alpinelinux3.20 au 10/07/2024 mais KVM ne connait que alpinelinux3.17 (`sudo virt-install --osinfo list |grep alpine`)
*Normalement, vous n'avez rien à faire, les paramètres par défaut doivent convenir. Mais si vous le désirez, vous pouvez les modifier pour utiliser une interface particulière, une IP fixe, un serveur proxy, etc.
Une soixantaine de serveurs mirroir vous seront proposés pour télécharger les paquets. Choisissez un numéro dans la liste ou demandez au système de les tester et de sélectionner le plus rapide. Vous pouvez aussi modifier le fichier des sources. Il vous faudra ensuite choisir votre serveur SSH : OpenSSH, Dropbear ou aucun.*
Si vous stockez le système en mémoire, il faudra trouver un moyen de sauvegarder la configuration. Vous pourrez le faire uniquement depuis un lecteur de disquettes (!) ou une clé USB. Une fois le système installé, vous pourrez l'utiliser directement s'il est placé en mémoire ou redémarrer si vous avez opté pour un stockage classique.
Si vous prévoyez de construire et de maintenir une image Docker par vous-même, assurez-vous que Docker est installé. Sous Linux, n'oubliez pas d'ajouter votre utilisateur au groupe Docker (déconnectez-vous et reconnectez-vous pour que votre appartenance au groupe soit réévaluée) :
L'image docker est basée sur git://Dockerfile et disponible sur searxng/searxng @dockerhub. L'utilisation de l'image docker est assez simple, par exemple vous pouvez extraire l'image searxng/searxng @dockerhub et déployer une instance locale en utilisant docker run:
Les variables d'environnement `UWSGI_WORKERS` et `UWSGI_THREADS` remplacent le nombre par défaut de processus UWSGI et de threads UWSGI spécifiés dans le fichier `/etc/searxng/uwsgi.ini`.
*Les stratégies pour automatiser le processus de mise à jour des conteneurs Docker lorsque leurs images de base sont mises à jour. Nous examinerons des scripts Bash personnalisés et des outils tiers tels que Watchtower, qui offrent un éventail de solutions([Auto-Update Docker Containers for Latest Base Images](https://www.baeldung.com/ops/docker-container-auto-update-newest-base-images))*
Watchtower est un outil open-source qui automatise le processus de mise à jour des conteneurs Docker. Il interroge le registre Docker pour vérifier les mises à jour des images à partir desquelles les conteneurs ont été initialement instanciés.
Supposons que Watchtower détecte qu'une image a été mise à jour. Dans ce cas, elle arrête le conteneur exécutant l'image périmée, extrait la nouvelle image du registre Docker et démarre un nouveau conteneur avec les mêmes configurations que le précédent. Cela garantit que nos conteneurs exécutent toujours la dernière version de l'image de base sans intervention manuelle.
* fixer l'intervalle à 86400 secondes, ce qui demande à Watchtower de vérifier les mises à jour une fois par jour
Le paramètre `--schedule` prend comme valeur une expression crontab. Sinon, le paramètre `--interval` peut-être utilisé pour définir le nombre de secondes entre chaque vérification.
`--schedule "0 0 4 * * *"`
`--interval 86400`
Cela permet de trouver un équilibre entre l'immédiateté et la consommation des ressources du système.
* Pour configurer les notifications par courriel, nous pouvons configurer les variables d'environnement et exécuter Watchtower:
Ainsi, nous exécutons Watchtower en mode détaché, ce qui lui donne accès au **socket Docker**, qui est nécessaire à Watchtower pour surveiller et mettre à jour les conteneurs.
Notre sortie montre l'identifiant unique du conteneur Watchtower qui s'exécute maintenant en arrière-plan.
Utilisez la commande `container ls` pour lister les conteneurs en cours d'exécution, ajoutez le drapeau `-a` pour lister les conteneurs éteints également. La commande `container stop` permet d'arrêter un conteneur en cours d'exécution. Pour se débarrasser d'un conteneur, utilisez la commande `container rm`:
Watchtower est un outil open-source permettant d'automatiser ces mises à jour. Il se présente sous la forme d'une image Docker à lancer très simplement
![](/images/searx.rnmkcy.eu.png){:width="500"}]]></content><author><name></name></author><categoryterm="virtuel"/><summarytype="html"><![CDATA[Alpine Linux est une distribution Linux ultra-légère…]]></summary></entry><entry><titletype="html">Cartographie</title><linkhref="https://static.rnmkcy.eu/2024/10/14/OSM_Python.html"rel="alternate"type="text/html"title="Cartographie"/><published>2024-10-14T00:00:00+02:00</published><updated>2024-10-14T00:00:00+02:00</updated><id>https://static.rnmkcy.eu/2024/10/14/OSM_Python</id><contenttype="html"xml:base="https://static.rnmkcy.eu/2024/10/14/OSM_Python.html"><![CDATA[## Cartographie python
*virtualenv est un outil utilisé pour créer un espace de travail isolé pour une application Python. Il présente divers avantages tels que la possibilité d'installer des modules localement, d'exporter un environnement de travail et d'exécuter un programme Python dans cet environnement*
[Install packages in a virtual environment using pip and venv](https://packaging.python.org/en/latest/guides/installing-using-pip-and-virtual-environments/)
Lorsque votre environnement virtuel est activé, vous pouvez installer des paquets. Utilisez la commande pip install pour installer des paquets.Par exemple, installons la bibliothèque Requests à partir de l'index des paquets Python (PyPI) : `python3 -m pip install requests`
alias tracesgpx="/srv/media/osm-new/osm_python/OsmScripts/bin/python /srv/media/osm-new/osm_python/OsmScripts/tracesgpxnew.py /srv/media/osm-new/file; sh /srv/media/osm-new/osm-new-synchro.sh"
```]]></content><author><name></name></author><categoryterm="cartographie"/><summarytype="html"><![CDATA[Cartographie python]]></summary></entry><entry><titletype="html">PC1 - Endeavour Neo XFCE sur partition LVM chiffrée</title><linkhref="https://static.rnmkcy.eu/2024/10/07/PC1-EndeavourOS-XFCE-nvme_2To-LVM-Chiffre.html"rel="alternate"type="text/html"title="PC1 - Endeavour Neo XFCE sur partition LVM chiffrée"/><published>2024-10-07T00:00:00+02:00</published><updated>2024-10-07T00:00:00+02:00</updated><id>https://static.rnmkcy.eu/2024/10/07/PC1-EndeavourOS-XFCE-nvme_2To-LVM-Chiffre</id><contenttype="html"xml:base="https://static.rnmkcy.eu/2024/10/07/PC1-EndeavourOS-XFCE-nvme_2To-LVM-Chiffre.html"><![CDATA[*EndeavourOS est une distribution GNU/Linux basée sur Arch Linux*
* **LVM/LUKS**, flexibilité de partitionnement en utilisant LVM dans une seule partition cryptée LUKS.
* <u>Avantages</u>:
* partitionnement simple avec connaissance de LVM
* Une seule clé nécessaire pour déverrouiller tous les volumes (p. ex. installation facile de récupération de disque)
* Mise en page du volume non visible lorsque verrouillé
* Méthode la plus facile pour permettre la [suspension du disque](https://wiki.archlinux.org/title/Dm-crypt/Swap_encryption#With_suspend-to-disk_support)
* <u>Inconvénients</u>:
* LVM ajoute une couche de mappage supplémentaire et un "hook"
* Moins utile, si un volume doit recevoir une clé séparée
Dans l'environnement live-CD, ouvrez un Terminal ,basculez en mode su et tapez (ou marquez et copiez la ligne avec ctrl-c et collez dans le terminal avec shift-ctrl-v ) …
Une bonne taille de départ pour le volume racine (lvroot) est d'environ 30 Go. Si vous envisagez d'utiliser ultérieurement un fichier d'échange résidant sur root, vous devez en tenir compte.
Le redimensionnement ultérieur des volumes est assez facile, alors n'y réfléchissez pas trop.
Vous pouvez attribuer tout l'espace libre restant au volume d'accueil,
`lvcreate --extents 100%FREE vg0 -n lvhome`
mais pour augmenter les volumes plus tard et pour les instantanés , il faut de l'espace vide à l'intérieur du groupe de volumes, donc je choisis généralement une taille pour lvhome qui laisse environ 30 Go d'espace inutilisé global dans le volume groupe (en supposant un lecteur de 500 Go, par exemple 500 – 0,512 – 40 – 430 = 29,488)
Dans **systemd-boot**, vous éditez le fichier d'entrée approprié qui se trouve sur votre partition EFI dans le répertoire `loader/entries`
Chaque entrée est une option de démarrage dans le menu et chacune a une ligne appelée options. Vous pouvez modifier ces entrées directement, mais ces changements peuvent être écrasés lors de l'installation ou de la mise à jour de paquets.
Pour effectuer les changements, au lieu de modifier les entrées, modifiez le fichier `/etc/kernel/cmdline` qui est un fichier d'une ligne contenant une liste d'options du noyau.
Souvent, les périphériques intégrés disposent de plusieurs interfaces réseau disponibles simultanément, comme les routeurs réseau dotés d'interfaces filaires et sans fil. Ces périphériques doivent pouvoir sélectionner automatiquement une interface réseau préférée. Pour y parvenir sur une machine Linux, chaque interface possède une valeur métrique qui indique le coût d'utilisation de l'interface. ([Changing the Network Routing Metric Permanently](https://www.baeldung.com/linux/change-network-routing-metric))
Ecran principal pour la fenêtre de connexion : [EndeavourOS XFCE - LightDM sur les systèmes multi-affichages](/2023/08/02/EndeavourOS_XFCE_-_Environnements_de_bureau_LightDM.html)
Les jetons et puces de sécurité FIDO2, PKCS#11 et TPM2 s'associent bien avec les clés de recouvrement : puisque vous n'avez plus besoin de taper votre mot de passe tous les jours, il est logique de vous en débarrasser et d'enregistrer à la place une clé de recouvrement à forte entropie que vous imprimez ou scannez hors écran et conservez dans un endroit physique sûr.
Cette opération génère une clé, l'enregistre dans le volume LUKS2, l'affiche à l'écran et génère un code QR que vous pouvez scanner en dehors de l'écran si vous le souhaitez.
La clé possède la plus grande entropie et peut être saisie partout où vous pouvez saisir une phrase d'authentification.
C'est pourquoi il n'est pas nécessaire de modifier le fichier /etc/crypttab pour que la clé de récupération fonctionne.
Lors du boot , le **S** de la SoloKeys passe au ROUGE et il suffit d'appuyer sur le voyant pour qu'il repasse au vert afin de lancer le processus de déchiffrement et finir le démarrage
`token-timeout=20s` --> Si aucune clé n'est connectée , le mot de passe devra être saisi après 20 secondes de délai
Sauvegarder et quitter.
Réinitialiser
sudo reinstall-kernels
`Redémarrer la machine`{:.info}
#### Plymouth - Processus de démarrage graphique
[Plymouth - Processus de démarrage graphique](/2023/10/14/Plymouth_Processus_de_demarrage_graphique.html)
### Installation Paquets
On commence par tout ce qui est graphique : gimp, cups (gestion de l’imprimante) et hplip (si vous avez une imprimante scanner Hewlett Packard). Le paquet python-pyqt5 est indispensable pour l’interface graphique de HPLIP+scan. Webkigtk2 étant indispensable pour la lecture de l’aide en ligne de Gimp. outil rsync, Retext éditeur markdown, firefox fr, thunderbird, libreoffice, gdisk, bluefish, **Double Commander** , **Menulibre** pour la gestion des menus , outils android clementine
# Gestion des menus du bureau, construction du paquet avant installation
yay -S menulibre
```
* **System-config-printer** est une interface graphique écrite en Python et qui utilise Gtk+ pour configurer un serveur CUPS. Son but premier est de configurer le système d'impression sur l'hôte local, mais il peut également configurer une imprimante distante.
* **HPLIP** est un ensemble de pilotes pour l'impression sous GNU / Linux des imprimantes Hewlett Packard.
* **FIGlet** est un logiciel qui crée des bannières textuelles dans différentes polices d'écriture
* **Jq** est un programme qui permet de filtrer, découper, transformer et grouper des données JSON facilement.
* **p7zip** est le portage en ligne de commande Unix de 7-Zip, un archiveur de fichier qui compresse avec des gros ratios de compression.
* **Tmux** est un outil qui permet d'exploiter plusieurs terminaux au sein d'un seul affichage.
* **calibre** est un logiciel gratuit et open source qui vous permet de gérer, convertir et synchroniser vos livres numériques.
* **ReText** est multiplateforme et écrit en Python. Il permet d’éditer des documents au balisage léger, en particulier le Markdown, et peut afficher le rendu HTML, en écran partagé
* **Bluefish** est un éditeur de texte dédié à la programmation informatique. Il se distingue notamment par ses nombreux outils et par la longue liste de langages de développement compatibles.
* **Double Commander** est un gestionnaire de fichiers multiplateforme au source ouvert avec deux panneaux côte à côte.
* **Terminator** est un terminal virtuel qui a la particularité de permettre de partager la fenêtre selon vos envies et ainsi organiser plus simplement vos différentes fenêtres.
* **FileZilla** est un logiciel qui vous permet de transférer des fichiers entre votre ordinateur et un serveur distant. Il est compatible avec Windows, Mac, Linux et les protocoles FTP, FTPS et SFTP.
* **Minicom** est un programme de contrôle de modem et d'émulation de terminal pour les Unix-like. Il permet de configurer des équipements réseaux via leur port console, comme les routeurs Cisco.
* **Zenity** est un outil qui permet d'afficher des boîtes de dialogue GTK+ depuis la ligne de commandes ou au travers de scripts shell
* **Android SDK Platform-Tools** (ADB) est l'outil officiel de Google qui permet d'utiliser les commandes ADB sur les appareils Android.
* **yt-dlp**, script écrit en Python, est un logiciel open source qui permet de télécharger des vidéos à partir de plusieurs sites de partage de vidéos, notamment YouTube
* **Qrencode** est une bibliothèque rapide et compacte pour l'encodage de données en QR Code, un symbole 2D qui peut être scanné par un téléphone portable
* **ZBar** est un logiciel de lecture de codes-barres à partir de diverses sources, telles que les flux vidéo, les fichiers d'images et les capteurs d'intensité brute. Il prend en charge de nombreuses symbologies courantes, dispose d'une mise en œuvre souple et en couches et d'un code de petite taille, et convient à une utilisation embarquée.
* **Xournal** est un outil open source permettant d'annoter des fichiers PDF. Il prend en charge la saisie au stylo, à la souris et au clavier. Il est couramment utilisé, avec Xournal++, pour ajouter des annotations et des signatures électroniques aux fichiers PDF, en particulier sur les ordinateurs de bureau Linux.
* **TigerVNC** (de l'anglais, « Tiger Virtual Network Computing ») est un système pour le partage de bureau graphique vous permettant de contrôler d'autres ordinateurs à distance.
* **Borg Backup** (Borg en abrégé) est un programme de sauvegarde incrémentielle en ligne de commande.
* **qBittorrent** est un client Bittorrent gratuit et fiable qui vous permet de télécharger et de partager des fichiers via le protocole BitTorrent
* **Xclip** Cette application permet d'utiliser le presse-papier en ligne de commande. Elle permet notamment de rediriger la sortie standard d'une commande directement vers le presse-papier, afin de pouvoir s'en servir immédiatement.
* **ldns** est une bibliothèque DNS rapide avec le but de simplifier la programmation DNS et pour permettre aux développeurs de facilement créer des programmes qui soient conformes aux RFC actuelles et aux brouillons Internet.
* **Nmap** (« Network Mapper ») est un outil open source d'exploration réseau et d'audit de sécurité. Il a été conçu pour rapidement scanner de grands réseaux, mais il fonctionne aussi très bien sur une cible unique.
* **GParted** est une application de gestion et d'organisation de partitions distribuée sous licence libre GPLv2. Elle permet de créer, d'effacer et de modifier les partitions de vos disques durs, clés USB, cartes SD, etc.
* **openbsd-netcat** L'utilitaire nc (ou netcat) est utilisé pour tout ce qui concerne TCP, UDP ou les sockets du domaine UNIX. Il peut ouvrir des connexions TCP, envoyer des paquets UDP, écouter sur des ports TCP et UDP arbitraires, effectuer un balayage des ports et gérer à la fois IPv4 et IPv6.
* **xterm** est l'émulateur de terminal standard pour l'environnement graphique X Window System. Un utilisateur peut disposer de plusieurs instances de xterm simultanément dans le même écran, chacune d'entre elles offrant des entrées/sorties indépendantes pour les processus qui s'y exécutent
* **Strawberry Music Player** excelle par la richesse de ses fonctionnalités. Outre la lecture de musique, l'utilisateur peut créer et gérer des playlists, organiser aisément sa collection selon divers critères, et même éditer les tags des pistes audio.
* **FreeTube** est un client privé multiplateforme qui vous permet de regarder YouTube sur votre ordinateur en toute tranquillité.
* **Signal**, l'équivalent libre de WhatsApp. Signal est une application de messagerie similaire à WhatsApp, mais étant plus indépendante. Elle permet aux utilisateurs de se transmettre des messages, des photos, des vidéos et des documents. La transmission des messages est chiffrée de bout en bout.
* **XSane** a été conçu pour l'acquisition d'images avec votre scanner. Vous pouvez scanner un fichier, faire une photocopie, créer un fax, créer un courriel, et enfin démarrer xSane à partir de GIMP avec un greffon spécifique.
* **MenuLibre** est un éditeur de menu pour les environnements de bureau tels que Budgie, LXDE (Lubuntu), XFCE (Xubuntu), et également GNOME ou Unity.
### ReText
Fichier de configuration `~/.config/ReText project/ReText.conf`
*SSHFS sert à monter sur son système de fichier, un autre système de fichier distant, à travers une connexion SSH, le tout avec des droits utilisateur.*
Prérequis , paquets **cups cups-filters cups-pdf system-config-printer hplip installés** (Pilotes HP pour DeskJet, OfficeJet, Photosmart, Business Inkjet et quelques modèles de LaserJet aussi bien qu'un certain nombre d'imprimantes Brother)...
*Floorp est un navigateur basé sur Firefox qui bloque les traceurs malveillants, offre une mise en page flexible et personnalisable, et ne collecte pas les données des utilisateurs. Découvrez ses fonctionnalités, ses thèmes, ses mises à jour et son code source ouvert.*
Pour ne pas installer les paquets RubyGems (appelés gems) en tant qu'utilisateur root. A la place, mettez en place un répertoire d'installation de gem pour votre compte utilisateur.
*Ntfy, qui se prononce “notify”, est un service de notification ultra léger, permettant d’envoyer des messages vers un smartphone ou un ordinateur via de simples scripts, sans besoin de compte et totalement gratuitement !*
*FreetuxTV est une application qui permet de regarder et enregistrer facilement les chaînes de télévision sous GNU/Linux et les chaînes de télévision de votre fournisseur d'accès internet.*
Paramétrage du parefeu firewalld ([Configuration de firewalld pour le multicast VLC freebox](https://forums.fedora-fr.org/d/59161-configuration-de-firewalld-pour-le-multicast-vlc-freebox-de-chez-free))
Les ajouter à la **zone public** pour rendre ces règles permanentes
/etc/firewalld/zones/public.xml
```xml
<?xml version="1.0" encoding="utf-8"?>
<zone>
<short>Public</short>
<description>For use in public areas. You do not trust the other computers on networks to not harm your computer. Only selected incoming connections are accepted.</description>
2. [Accés aux machines virtuelles KVM distantes via virt-manager](/2023/12/17/Installer_KVM_Kernel_Virtual_Machine_sur_un_serveur.html#accés-aux-machines-virtuelles-kvm-distantes-via-virt-manager)
*DBeaver est basé sur le framework Eclipse, il est open source et il supporte plusieurs types de serveurs de bases de données comme : MySQL, SQLite, DB2, PostgreSQL, Oracle...*
* [Pacman hooks for setting up certain system identification files of EndeavourOS (eos-hooks)](https://github.com/endeavouros-team/PKGBUILDS/tree/master/eos-hooks)
*Ce hook sauvegardera une liste de vos paquets natifs et étrangers (AUR) installés. Cela garantit que vous aurez toujours une liste à jour de tous vos paquets que vous pourrez réinstaller.*
Pour installer des paquets depuis une sauvegarde antérieure de la liste des paquets, tout en ne réinstallant pas ceux qui sont déjà installés et à jour, lancer:
**LVM** (Logical Volume Manager, ou gestionnaire de volumes logiques en français) permet la création et la gestion de volumes logiques sous Linux. L'utilisation de volumes logiques remplace en quelque sorte le partitionnement des disques.
Le but est de synchroniser le dossier **/srv/media/BiblioCalibre** avec le(s) serveur(s) web distant(s)
Avec les unités de chemin, vous pouvez surveiller les fichiers et les répertoires pour certains événements. Si un événement spécifique se produit, une unité de service est exécutée, et elle porte généralement le même nom que l'unité de chemin
Nous allons surveiller dans le dossier */srv/media/BiblioCalibre/* toute modification du fichier **metadata.db** qui entrainera l'exécution d'un script
Dans la section `[Path]`, `PathChanged=` indique le chemin absolu du fichier à surveiller, tandis que `Unit=` indique l'unité de service à exécuter si le fichier change. Cette unité (**media_BiblioCalibre_site.path**) doit être lancée lorsque le système est en mode multi-utilisateur.
Ensuite, nous créons l'unité de service correspondante, **media_BiblioCalibre_site.service**, dans le répertoire `~/.config/systemd/user/`
Si le fichier **metadata.db** change (c'est-à-dire qu'il est à la fois écrit et fermé), l'unité de service suivante sera appelée pour exécuter le script spécifié :
```]]></content><author><name></name></author><categoryterm="archlinux"/><categoryterm="chiffrement"/><summarytype="html"><![CDATA[EndeavourOS est une distribution GNU/Linux basée sur Arch Linux]]></summary></entry><entry><titletype="html">Moteur de routage (BRouter) + Visualisation et édition traces gpx (gpx.studio)</title><linkhref="https://static.rnmkcy.eu/2024/10/01/Visualisation_et_edition_des_traces_gpx_studio.html"rel="alternate"type="text/html"title="Moteur de routage (BRouter) + Visualisation et édition traces gpx (gpx.studio)"/><published>2024-10-01T00:00:00+02:00</published><updated>2024-10-01T00:00:00+02:00</updated><id>https://static.rnmkcy.eu/2024/10/01/Visualisation_et_edition_des_traces_gpx_studio</id><contenttype="html"xml:base="https://static.rnmkcy.eu/2024/10/01/Visualisation_et_edition_des_traces_gpx_studio.html"><![CDATA[*Tracer des itinéaires à l'aide du moteur de routage BRouter. Visualiser, éditer et créer des traces gpx avec un fork de l'application web <https://gpx.studio>*
*BRouter est un moteur de routage conçu pour calculer des itinéraires optimaux en utilisant OpenStreetMap et des données d'élévation.
Comme alternative à la [version en ligne](https://brouter.de/brouter-web/), le serveur autonome de BRouter peut également être exécuté localement (<https://github.com/nrenner/brouter-web>).*
Télécharger et décompresser la dernière archive autonome (`brouter-web-standalone.<version>.zip`) à partir de <https://github.com/nrenner/brouter-web/releases>, par exemple pour Linux (remplacez `~/opt/` par votre répertoire d'installation préféré et `0.11.0` par la dernière version) :
Télécharger un ou plusieurs fichiers de données rd5 depuis le [download directory](https://brouter.de/brouter/segments4/) ou le [grid map](https://umap.openstreetmap.de/de/map/brouter-rd5-grid_9438) dans le répertoire `/opt/segments4`.
Pour pouvoir charger la carte, vous devrez créer votre propre <ahref="https://account.mapbox.com/auth/signup"target="_blank">Mapbox access token</a> et le stocker dans un fichier `.env` dans le répertoire `website`.
Puis ouvrir le lien suivant dans un navigateur : localhost:9500]]></content><author><name></name></author><categoryterm="cartographie"/><summarytype="html"><![CDATA[Tracer des itinéaires à l’aide du moteur de routage BRouter. Visualiser, éditer et créer des traces gpx avec un fork de l’application web https://gpx.studio]]></summary></entry></feed>