6.2 KiB
title: Cloud Commander created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, file-management, nodejs, double-panel, midnight-commander, console, vintage] confidence: high contested: false sources: [https://selfh.st/apps/?tag=File+Management, https://github.com/coderaiser/cloudcmd]
Cloud Commander 🪖
Web file manager double panneau en Node.js qui rappelle Midnight Commander : deux colonnes synchronisées, navigation clavier, console intégrée, éditeur de texte. L'outil idéal pour les anciens de la console qui veulent un file manager web ergonomique.
| Métadonnée | Valeur |
|---|---|
| Site web | https://cloudcmd.io |
| GitHub | https://github.com/coderaiser/cloudcmd |
| License | MIT |
| Langage | JavaScript (Node.js) |
| Étoiles | 264 ⭐ |
| Dernière MAJ | 2026-04 |
| Catégorie | cat-file-management |
Description
Cloud Commander (anciennement Cloud Commander, parfois appelé simplement cloudcmd) est un vétéran des file managers web : le projet existe depuis 2012 et reste activement maintenu. Son parti pris est radical : imiter Midnight Commander (mc) en mode web, avec ses deux panneaux côte à côte, ses raccourcis clavier, et son efficacité légendaire.
L'UI est volontairement sobre et fonctionnelle : pas de Material Design tape-à-l'œil, juste deux colonnes, un menu, et des raccourcis. Pour qui aime Vim, Emacs ou mc, c'est un bonheur. Pour qui préfère une UI moderne type app-filestash, ça semblera daté (avis subjectif).
Fonctionnalités clés :
- Double panneau synchronisé (chemin miroir ou indépendant)
- Console intégrée : un shell bash/sh dans le navigateur, redoutable d'efficacité (mais danger)
- Éditeur intégré : Dwordl ou Ace Editor, coloration syntaxique
- Navigation clavier : F1-F10, Tab, Ctrl+R, etc. (comme mc)
- Drag&drop entre les deux panneaux
- Upload/download par drag&drop
- Compression/décompression à la volée (.zip, .tar.gz)
- Auth basique : login/password (pas de multi-user natif)
- Packaging : peut tourner en single process Node ou en module
L'auteur coderaiser (Ivan Kotenkov) maintient aussi MultyFS, Editdor, Flyoner et d'autres outils CLI/web. Le projet est stable, mature, et dispose d'un écosystème de plugins.
C'est le file manager parfait pour un homelab ou un serveur Linux, accessible depuis n'importe quel navigateur, sans dépendre d'un client lourd. Pas idéal pour exposer à des non-techs (l'UX est spartiate).
Installation
Option 1 : Docker Compose (recommandé)
services:
cloudcmd:
image: coderaiser/cloudcmd:latest
container_name: cloudcmd
restart: unless-stopped
ports:
- "8000:8000"
volumes:
- /srv/data:/mnt # répertoire à exposer
- ./config:/config # configuration JSON
environment:
- PASSWORD=*** - CONSOLE=true # console intégrée activée
UI sur http://localhost:8000. Identifiants par défaut : admin / vide si pas de PASSWORD (mettre en place rapidement !).
Option 2 : npm global
npm install -g cloudcmd
cloudcmd --root /srv/data --port 8000 --password ***
# Accès : http://localhost:8000
Option 3 : Module dans une app Node
npm install cloudcmd
const cloudcmd = require('cloudcmd');
cloudcmd({
root: '/srv/data',
port: 8000,
password: '***'
});
Configuration
- Premier accès : si
PASSWORDest défini, l'auth est demandée. Sinon, l'app est ouverte à tous (⚠️ dangereux). - Fichiers de config :
config.jsonpour config globale,config/modules.jsonpour les modules activés. - Console :
CONSOLE=trueactive le shell intégré. À désactiver en exposition publique. - Auth : basique HTTP (login/password). Brancher en amont app-authelia pour du SSO.
- Packaging : Cloud Commander peut être "embarqué" dans une autre app Node, pratique pour des intégrations custom.
- Reverse proxy : derrière app-caddy / app-traefik avec HTTPS. WebSocket peut être requis pour certaines features.
Alternatives
Open Source
- app-file-browser — Go, plus moderne, mono-utilisateur
- app-filebrowser-quantum — File Browser avec éditeur
- app-filestash — UI moderne multi-protocoles
- app-filegator — PHP multi-user
- JupyterLab — Pas vraiment file manager, mais UI double-panel
- Filerun — UX riche PHP
- Eternal Terminal — Pas un file manager mais même philosophie CLI/web
- app-code-server — VS Code complet
Propriétaires
- Midnight Commander (natif, pas web)
- WinSCP (client, pas serveur)
- FileZilla (client)
- Cyberduck
- Forklift (Mac)
Sécurité
- ⚠️ Console intégrée = DANGER : avec
CONSOLE=true, un utilisateur authentifié a un shell root sur le serveur. À désactiver impérativement en exposition publique (CONSOLE=false). - Auth obligatoire : toujours définir
PASSWORDou un fichier.htpasswdvia reverse proxy. - HTTPS : obligatoire (app-caddy / app-traefik).
- Rate limiting : Cloud Commander n'a pas de rate limit natif, le mettre sur le reverse proxy.
- Brute force : la page de login est exposée. Utiliser fail2ban ou un WAF (app-authelia avec rate limit).
- Scope limité : ne JAMAIS donner accès à
/. Cloud Commander peut naviguer au-dessus du--root(c'est un bug historique), d'où l'importance de jailer avec un chroot ou un bind mount strict. - Backups :
cloudcmd.json+ le volume exposé. - Updates : suivre npm advisories.
Ressources
Pages Liées
- cat-file-management — Catégorie parente
- app-file-browser — Concurrent plus moderne
- app-filestash — Concurrent UI moderne
- app-code-server — VS Code complet (pas file manager)
- app-caddy / app-traefik — Reverse proxy
- app-authelia — SSO recommandé
- recettes-docker-compose — Templates Docker
- securisation-home-lab — Bonnes pratiques