Vue normale

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.
À partir d’avant-hierIT

NAS Synology : comment obtenir l’UID et le GID d’un utilisateur ?

2 mai 2024 à 05:00

I. Présentation

Dans ce tutoriel, nous allons apprendre à récupérer l'UID et le GID d'un utilisateur sur un NAS Synology. Vous allez me dire : pourquoi faire ? Et bien, sachez que ceci est utile lorsque l'on utilise un NAS Synology pour exécuter des containers Docker et que l'on souhaite faire tourner un container avec un compte utilisateur spécifique.

II. Rappels sur les notions de UID et GID

Avant de vous expliquer comment récupérer l'UID et le GID sur un NAS, voyons déjà à quoi correspondent ces deux valeurs.

L'UID pour User Identifier est un numéro unique associé à chaque utilisateur d'un système Linux. Il permet d'identifier l'utilisateur sans utiliser le nom et ne peut pas être modifié. Cette information est stockée dans le fichier "/etc/passwd".

Le GID pour Group Identifier est un numéro unique associé à chaque groupe d'un système Linux. Le GID permet d'identifier un groupe sans utiliser le nom et ne peut pas être modifié. Cette information est stockée dans le fichier "/etc/group".

Si un utilisateur ou un groupe est supprimé puis recréé, il n'aura pas le même UID / GID, car ce numéro est incrémenté à chaque fois.

Remarque : le compte super-utilisateur "root" hérite toujours de l'UID "0" et du GID "0".

III. Récupérer l'UID et le GID d'un utilisateur

Pour récupérer l'UID et le GID d'un utilisateur, nous devons utiliser la ligne de commandes SSH.

La première étape consiste à se rendre dans "Panneau de configuration", puis "Terminal & SNMP" afin de cocher l'option "Activer le service SSH". Ensuite, validez, et à la fin de l'opération, vous pouvez décocher cette option pour éviter d'exposer ce service inutilement si vous n'en avez pas l'usage.

Synology - Activer le service SSH

Désormais, nous devons nous connecter en SSH à notre NAS. Vous pouvez utiliser une application telle que PuTTY, mais ce n'est pas obligatoire. Si vous utilisez Windows 10 ou Windows 11, il y a un client SSH natif pour vous permettre de vous connecter à votre NAS.

Ouvrez une invite de commande et saisissez la commande "ssh" selon le modèle suivant :

ssh <nom d'utilisateur>@<adresse ip>

Par exemple, pour se connecter sur le NAS avec l'adresse IP "192.168.1.200" avec le compte "itconnect" :

ssh itconnect@192.168.1.200

Si vous avez besoin de préciser un numéro de port spécifique (autre que le port 22), ajoutez cette option en ajustant le numéro de port :

ssh itconnect@192.168.1.200 -p 222

Saisissez votre mot de passe et vous devriez avoir accès au shell du système DSM. Attention, le compte que vous utilisez pour vous connecter doit être membre du groupe "administrators" de DSM (c'est le cas du compte créé nativement lors de l'installation du NAS).

Une fois que vous avez accès à votre NAS en ligne de commande, vous devez utiliser la commande "id".

  • Pour récupérer l'UID et le GID du compte avec lequel vous êtes connecté en SSH :
id
  • Pour récupérer l'UID et le GID d'un autre compte existant sur votre NAS (exemple avec le compte nommé "docker")
id docker

Ici, nous pouvons voir que l'UID de cet utilisateur est "1027" tandis que son GID est "100". Ici, c'est bien le groupe principal auquel appartient l'utilisateur qui est retourné, car il peut être membre de plusieurs groupes.

Il ne reste plus qu'à faire bon usage de ces deux informations !

IV. Conclusion

Grâce à cette astuce, vous êtes en mesure de récupérer l'UID et le GID d'un compte utilisateur de votre NAS Synology ! Ces informations étant différentes d'un NAS à un autre et d'un utilisateur à un autre, c'est une manipulation à connaître.

The post NAS Synology : comment obtenir l’UID et le GID d’un utilisateur ? first appeared on IT-Connect.

Déployer Homer sur un NAS Synology – Un tableau de bord personnalisable

30 avril 2024 à 16:00

I. Présentation

Dans ce tutoriel, nous allons apprendre à déployer l'application Homer sur un NAS Synology, à l'aide d'un conteneur Docker ! Homer est un projet open source destiné à l'auto-hébergement dont l'objectif est de vous permettre de déployer une page d'accueil aux allures de tableau de bord sur votre propre serveur !

Sur cette page statique, vous allez pouvoir ajouter tous les éléments et liens que vous jugez nécessaire ! Par exemple, vous pouvez lister vos sites favoris, ajouter des liens vers vos applications préférées, ou encore vers vos équipements ! Il y a aussi la possibilité de remonter des informations à partir de services personnalisés, c'est-à-dire d'autres applications (Prometheus, AdGuard Home, Portainer, PiHole, Proxmox, etc...).

Homer peut s'avérer utile dans de nombreux scénarios et cette page est facilement personnalisable grâce à un fichier de configuration au format YAML.

"Un HOMepage statique très simple pour votre servER afin de garder vos services à portée de main, à partir d'un simple fichier de configuration yaml."

En complément de cet article, retrouvez notre cours complet sur la sécurisation d'un NAS Synology :

II. Installer l'application Homer sur son NAS

Avant de créer le conteneur, nous allons préparer un répertoire pour stocker ses données. Au sein du répertoire "docker", nous allons créer le répertoire "homer" afin de maintenir la logique habituelle : un répertoire par conteneur. Ce qui donne :

Puis, dans le répertoire "homer", nous allons créer un répertoire "data" qui sera utilisé pour stocker les données applicatives d'Homer. Ce qui donne :

Désormais, nous pouvons lancer l'application Container Manager (Docker) pour créer un nouveau conteneur à partir d'un code de configuration Docker Compose.

Dans "Container Manager", cliquez sur "Projet" puis sur "Créer". Nommez ce projet "homer" puis indiquez le répertoire "/docker/homer" comme chemin pour ce conteneur. Autrement dit, l'option "Chemin" doit avoir pour valeur "/docker/homer".

En ce qui concerne la "Source", choisissez l'option "Créer un fichier docker-compose.yml". Une zone de texte apparaît : qu'allons-nous écrire ici ? Nous allons récupérer le code du fichier "docker-compose.yml" disponible sur GitHub officiel pour ensuite l'adapter.

Ce qui donne :

Voici le code de base à copier-coller :

---
version: "2"
services:
  homer:
    image: b4bz/homer
    container_name: homer
    volumes:
      - /volume1/docker/homer/data:/www/assets
    ports:
      - 8080:8080
    user: 1000:1000 # default
    environment:
      - INIT_ASSETS=1 # default

Désormais, nous allons devoir modifier deux options : le chemin vers le répertoire local pour mapper le répertoire "/www/assets" du conteneur vers "/volume1/docker/homer/data", et les informations sur le compte utilisateur à utiliser pour exécuter le conteneur. Ici, l'utilisateur "docker" de mon NAS est spécifié en indiquant son UID "1027" et son GID "100".

Ici, nous ne modifions pas le mappage sur le numéro de port, donc l'application sera accessible sur le port 8080. Vous pouvez l'adapter si besoin. De plus, l'option "INIT_ASSETS=1" permet d'ajouter les fichiers de démonstrations à l'application, ce qui évite de partir de zéro.

Remarque : pour le nom de l'image, vous pouvez ajouter le tag "latest" pour récupérer la dernière image Docker de ce projet associée à ce tag. Ce qui donne la valeur "b4bz/homer:latest" pour la directive "image".

Une fois le fichier Docker Compose prêt, vous pouvez continuer jusqu'à la fin pour créer le conteneur. L'image "b4bz/homer" sera téléchargée à partir du Docker Hub et utilisée pour exécuter le conteneur.

Voilà, le conteneur Docker "homer" est actif !

Dès à présent, nous pouvons accéder à l'interface de l'application :

http://<adresse IP du NAS>:8080

Vous devriez obtenir ceci :

Désormais, nous allons évoquer la personnalisation de cette page d'accueil.

III. Personnaliser la page d'accueil Homer

Pour modifier la page d'accueil d'Homer, nous allons éditer le fichier suivant :

/docker/homer/data/config.yml

Pour l'éditer directement depuis l'interface de DSM, installez l'application "Éditeur de texte" depuis le "Centre de paquets". Ceci permet d'ajouter l'option "Ouvrir avec un éditeur de texte" dans le menu contextuel de DSM afin d'éditer les fichiers en ligne.

Le fichier de configuration s'ouvre. Il s'agit d'un fichier au format YAML, donc il faut respecter rigoureusement l'indentation, les espaces, etc... Pour ne pas générer de problèmes de syntaxes. L'édition est assez simple puisque le code est facilement lisible.

Vous pouvez charger vos images dans le répertoire "data/tools" de votre conteneur pour les appeler en tant que logo dans Homer. Par ailleurs, Homer s'appuie sur la bibliothèque FontAwesome pour charger les icônes, donc utilisez cette page pour rechercher un logo à intégrer sur une entrée (par exemple "fas fa-hdd" pour l'icône en forme de disque dur).

À titre d'exemple, voici le code du nœud « services » qui permet d'obtenir le résultat présenté ci-dessus avec les deux blocs "Mes sites favoris" et "Mes NAS".

# Services
# First level array represent a group.
# Leave only a "items" key if not using group (group name, icon & tagstyle are optional, section separation will not be displayed).
services:
  - name: "Mes sites favoris"
    icon: "fas fa-cloud"
    items:
      - name: "IT-Connect"
        logo: "assets/tools/Logo-IT-Connect.png"
        subtitle: "Tutoriels, cours, actualités - Informatique"
        tag: "tutos"
        keywords: "tutos"
        url: "https://www.it-connect.fr"
        target: "_blank" # optional html a tag target attribute
  - name: "Mes NAS"
    icon: "fas fa-hdd"
    items:
      - name: "NAS Synology DS220+"
        icon: "fas fa-hdd"
        subtitle: "https://192.168.1.200:5001"
        tag: "nas"
        keywords: "nas"
        url: "https://192.168.1.200:5001"
        target: "_blank" # optional html a tag target attribute
      - name: "NAS Synology DS923+"
        icon: "fas fa-hdd"
        subtitle: "https://192.168.1.201:5001"
        tag: "nas"
        keywords: "nas"
        url: "https://192.168.1.201:5001"
        target: "_blank" # optional html a tag target attribute

Quand vous effectuez une modification, enregistrez le fichier et rafraichissez la page web pour voir ce que ça donne. Homer étant une page d'accueil statique, elle est très rapide à charger et très légère.

L'intégration des services personnalisés s'effectue aussi dans ce fichier. Référez-vous à la documentation afin de copier-coller le bloc de configuration correspondant à votre service :

IV. Conclusion

En suivant ce tutoriel, vous devriez être en mesure d'installer Homer sur votre NAS Synology à l'aide de Docker ! C'est une application pratique et facile à personnaliser que l'on peut utiliser pour se créer une page d'accueil pour son Home Lab, ou, pour créer un portail d'entreprise léger, self-hosted, avec un ensemble de liens utiles.

Il y a des alternatives à Homer, notamment Heimdall, mais aussi Homarr qui est plus complet, mais aussi beaucoup plus lourd.

Pour aller plus loin, je vous recommande de publier cette application avec le reverse proxy de DSM, ce qui permettra d'avoir un certificat TLS et d'utiliser un nom de domaine. Référez-vous à ce tutoriel :

The post Déployer Homer sur un NAS Synology – Un tableau de bord personnalisable first appeared on IT-Connect.

❌
❌