Aperçu du Homelab

Vous gérez votre homelab en utilisant Proxmox avec des VMs pour Ubuntu, Kali, et pfSense. Vos objectifs principaux incluent l'hébergement de vos propres services, l'automatisation des flux de travail, et la connexion sécurisée de tout cela avec Twingate.

Configuration d'Obsidian

  • Obsidian est auto-hébergé en utilisant CouchDB.
  • Vous l'exécuterez sur la VM Ubuntu et vous vous y connecterez en utilisant Obsidian LiveSync.
  • L'accès à distance sécurisé est géré via Twingate.

Plan de Configuration Étape par Étape

Phase 1 : Préparation du Serveur

  1. Mettre à jour et sécuriser la VM Ubuntu :

    sudo apt update && sudo apt upgrade -y
  2. Installer Docker et Docker Compose :

    sudo apt install docker.io docker-compose -y
  3. Créer des répertoires pour vos services :

    mkdir ~/obsidian-sync ~/n8n && cd ~/obsidian-sync

Phase 2 : Déploiement CouchDB pour la Synchronisation Obsidian

  1. Créer le fichier docker-compose.yml :

    version: '3.8'
    services:
      couchdb:
        image: couchdb:latest
        container_name: couchdb-for-obsidian
        environment:
          - COUCHDB_USER=admin
          - COUCHDB_PASSWORD=your_secure_password
        volumes:
          - ./data:/opt/couchdb/data
          - ./config:/opt/couchdb/etc/local.d
        ports:
          - 5984:5984
        restart: unless-stopped
  2. Lancer CouchDB :

    docker compose up -d
  3. Ouvrir le tableau de bord CouchDB : http://<ip>:5984/_utils

  4. Connectez-vous avec vos identifiants et créez la base de données obsidian.

  5. Dans Obsidian, installez le plugin Self-Hosted LiveSync et connectez-vous à CouchDB.

Phase 3 : Installation et Configuration de n8n

  1. Se déplacer vers le répertoire n8n :

    cd ~/n8n
  2. Créer docker-compose.yml :

    version: '3'
    services:
      n8n:
        image: n8nio/n8n:latest
        environment:
          - GENERIC_TIMEZONE=Europe/Paris
        ports:
          - 5678:5678
        volumes:
          - ./data:/home/node/.n8n
        restart: unless-stopped
  3. Exécuter n8n :

    docker compose up -d
  4. Ouvrir n8n dans votre navigateur : http://<server-ip>:5678

Phase 4 : Automatiser les Sauvegardes avec n8n

  1. Créer un répertoire de sauvegarde : /backups/obsidian
  2. Dans n8n, créez un nouveau flux de travail (workflow) :
    • Déclencheur : Nœud Cron (Hebdomadaire le dimanche)

    • Nœud de Commande :

      tar czf /backups/obsidian_$(date +%F).tar.gz /path/to/obsidian-vault
    • Nœud de Notification (Optionnel) : Envoyer un message via l'API Telegram ou Discord.

Phase 5 : Accès à Distance et Sécurité

  1. Installer et lier votre serveur à votre compte Twingate.
  2. Accéder à vos tableaux de bord n8n et CouchDB à distance de manière sécurisée.
  3. Configurer des tunnels HTTPS si nécessaire (étape optionnelle utilisant Pinggy ou Cloudflare Tunnel).

Plan d'Action du Week-end

Samedi

  • Maintenance Proxmox et mises à jour Ubuntu.
  • Installer Docker et déployer CouchDB.
  • Tester la connexion CouchDB avec Obsidian de bureau.

Dimanche

  • Déployer n8n et créer votre première automatisation de sauvegarde.
  • Configurer Twingate pour un accès sécurisé externe.
  • Documenter votre configuration directement dans Obsidian.

Objectif Final

D'ici lundi, vous aurez : - Un système de synchronisation Obsidian auto-hébergé (CouchDB) - Une automatisation n8n pour les sauvegardes hebdomadaires - Un flux de travail à distance sécurisé utilisant Twingate —