Voici un nouveau projet GitHub qui a 3 semaines mais qui est déjà bien intéressant! En tout cas ce projet m'intéresse pour son pratique et, accessoirement, son esthétique, à suivre de près...
Aujourd'hui nous allons parler de Nexterm! Cette application va vous permettre de centraliser tous les serveurs auxquels vous avez besoin et de vous connecter, directement par l'interface de Nexterm. C'est aussi simple que ça.
Comme le dit si bien le dev: Nexterm est actuellement en début de développement et est susceptible de changer. Il n'est pas recommandé de l'utiliser en prod, pour le moment.
⚡Caractéristiques
- Supporte les protocols: SSH, VNC et RDP.
- Permet d'ajouter un serveur Proxmox.
💾 L'installation
- Créez votre compose.yml dans le dossier où vous comptez installer Nexterm:
sudo nano compose.yml
- Collez ça dedans en prenant soin d'adapter ports et volumes suivant votre configuration:
version: '3.9'
services:
nexterm:
ports:
- "6989:6989"
restart: always
volumes:
- ./nexterm:/app/data
image: germannewsmaker/nexterm:1.0.1-OPEN-PREVIEW
- On installe l'application:
docker-compose up -d
ou avec docker-compose V2:
docker compose up -d
- Rendez-vous sur l'ip:port, suivant l'IP de votre serveur local et du port choisi, 6989 par défaut:
http://ip:6989/
ou votre domaine:
https://mondomaine.com
👤 Création du compte administrateur
Lorsque vous lancez Nexterm pour la première fois, vous devrez créer votre compte administrateur:
Veillez à compléter:
- First Name => Indiquez votre prénom.
- Last Name => Indiquez votre nom.
- Username => Indiquez votre nom d'utilisateur/pseudo.
- Password => Choisissez un mot de passe fort.
Cliquez sur Register.
Vous serez redirigé vers le tableau de bord de Nexterm:
🔑 Activer la 2FA
Vu la sensibilité des informations que va contenir cette application, je vous conseille vivement d'utiliser la 2FA.
Cliquez sur la roue crantée:
Cliquez sur Enable 2FA:
Scannez le QR Code avec votre application préférée et indiquez le code de validation, cliquez sur Enable pour terminer:
Si tout s'est bien déroulé, vous aurez un Active en vert comme ceci:
📁 Créer un dossier
Pour commencer vous devrez créer un dossier, au minimum. La raison est simple, cela permet de classer les types de connexions et de vous y retrouver.
Je vais créer le dossier SSH!
Cliquez droit avec votre souris dans cette zone pour faire apparaître l'option Create Folder:
Cliquez sur Create Folder et indiquez le nom du dossier, dans mon cas, SSH:
Voici le dossier SSH crée!
En cliquant droit avec la souris sur le dossier SSH, vous aurez un menu avec plusieurs options:
- Create Folder => Permet de créer un dossier dans le dossier. Faites F5 après l'avoir créé pour le voir.
- Delete Folder => Permet de supprimer un dossier.
- Rename Folder => Permet de renommer un dossier.
- Create Server => Permet d'ajouter un serveur.
- Import PVE => Permet d'importer un serveur Proxmox.
💻 Ajouter un serveur Proxmox
Je me suis créé un dossier Proxmox et je vais faire clic droit dessus et choisir l'option Import PVE:
Remplissez le formulaire:
- Name => Nommez votre serveur Proxmox.
- Server-IP => Indiquez l'adresse IP de votre serveur.
- Port => Indiquez le port.
- Username => Indiquez le nom d'utilisateur, root@pam par défaut.
- Password => Indiquez le mot de passe du serveur.
Cliquez sur Import et retrouvez votre instance Proxmox ainsi que toutes vos VM & LXC:
Pour se connecter en SSH à votre serveur Proxmox, cliquez deux fois sur Proxmox VE Shell. Oui, le copier coller fonctionne.
Si on clique droit sur une VM, on a les options Connect, Shutdown & Stop:
Seul Connect ne fonctionne pas encore sur les VM, c'est un bug en phase d'être réglé. Par contre pour LXC, aucun problème.
Par contre vous pouvez démarrer la VM:
🖥️ Ajouter un serveur pour se connecter en SSH
Je vais commencer par cliquer droit sur le dossier SSH (dans l'exemple) et choisir Create Server:
Vous avez un petit formulaire à remplir:
Details:
- Name => Nommez votre serveur.
- Icon => Choisissez une icône.
- Server-IP => Entrez l'IP du serveur.
- Port => Entrez le port du serveur.
- Protocol => Choisissez le protocol, ici SSH.
Identities:
Cette partie sert à encoder le nom d'utilisateur et le mot de passe ou encore d'ajouter les clés SSH.
Dans mon cas je vais choisir Keyfile:
- Username => Indiquez le nom d'utilisateur.
- Authentication => Keyfile pour se connecter avec des clés SSH.
- Keyfile => Indiquez ou se trouver le fichier ir_rsa.
- Passphrase => Indiquez la phrase de passe choisie.
Cliquez sur Create pour terminer. Maintenant, en faisant un double clic sur le serveur, je peux m'y connecter. Et oui, le copier coller fonctionne aussi.