Add complete French (fr) and Chinese (zh) translations for all documentation: - Root files: README, CHANGELOG, SECURITY, BETA-RELEASE - docs/: All 16 core documentation files - DOCS/: All 19 deep-dive documents including embedded/ and archive/ - package/secubox/: All 123+ package READMEs - Misc: secubox-tools/, scripts/, EXAMPLES/, config-backups/, streamlit-apps/ Total: 346 translation files created Each file includes language switcher links for easy navigation between English, French, and Chinese versions. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
8.8 KiB
8.8 KiB
Registre de Services SecuBox
Tableau de bord d'agregation de services unifie avec publication automatique vers HAProxy (clearnet) et Tor (services caches), incluant la surveillance de sante et la generation de codes QR.
Fonctionnalites
- Decouverte de Services - Detecte automatiquement les services en cours d'execution depuis :
- Vhosts HAProxy
- Services caches Tor
- Ports en ecoute directe (netstat)
- Conteneurs LXC
- Publication en Un Clic - Publier des services vers clearnet et/ou Tor
- Surveillance de Sante - Statut DNS, certificat et pare-feu en temps reel
- Verificateur de Disponibilite URL - Verifier la configuration du domaine avant la mise en ligne
- Codes QR - Generer des codes QR pour un acces mobile facile
- Page d'Accueil - HTML statique auto-genere avec tous les services publies
Tableau de Bord
Panneau de Connectivite Reseau
Statut reseau en temps reel affichant :
- IPv4 Publique - Votre adresse IP externe avec nom d'hote DNS inverse
- IPv6 Publique - Adresse IPv6 si disponible
- Port Externe 80/443 - Si les ports sont accessibles depuis Internet (teste le transfert du routeur amont/FAI)
- Pare-feu Local - Statut des regles de pare-feu OpenWrt
- HAProxy - Statut du conteneur proxy inverse
Barre de Resume de Sante
Affiche le statut global du systeme en un coup d'oeil :
- Statut des ports pare-feu 80/443
- Statut du conteneur HAProxy
- Statut du daemon Tor
- Nombre de resolutions DNS
- Nombre de certificats sains
Verificateur de Disponibilite URL
Avant de publier un service, verifiez que le domaine est correctement configure :
- Entrez un domaine dans le verificateur (ex:
example.com) - Cliquez sur "Verifier" pour valider :
- Votre IP Publique - Affiche vos adresses IPv4/IPv6 et DNS inverse
- Resolution DNS - Verifie que le domaine pointe vers votre IP publique (detecte les erreurs d'IP privee)
- Accessibilite Internet - Teste si les ports 80/443 sont accessibles depuis Internet (verification du routeur amont)
- Pare-feu Local - Statut des regles de pare-feu OpenWrt
- Certificat SSL - Certificat valide avec statut d'expiration
- HAProxy - Conteneur proxy inverse en cours d'execution
Le verificateur fournit des recommandations actionnables specifiques :
- Si le DNS pointe vers une IP privee (ex: 192.168.x.x), affiche l'IP publique correcte a utiliser
- Si les ports sont bloques exterieurement, conseille de verifier le transfert de port du routeur amont
- Affiche l'enregistrement DNS A exact a creer :
domaine.com → votre.ip.publique
Indicateurs de Sante des Services
Chaque service publie affiche des badges de sante en ligne :
| Badge | Signification |
|---|---|
| Globe | DNS resout correctement |
| X | Resolution DNS echouee |
| Cadenas | Certificat valide (30+ jours) |
| Attention | Certificat expire bientot (7-30 jours) |
| Rouge | Certificat critique (<7 jours) |
| Mort | Certificat expire |
| Blanc | Aucun certificat configure |
| Oignon | Service cache Tor active |
Publication d'un Service
Publication Rapide (LuCI)
- Allez dans Services > Registre de Services
- Trouvez votre service dans "Services Decouverts"
- Cliquez sur Publier pour une publication rapide
- Ajoutez optionnellement :
- Domaine (cree un vhost HAProxy + demande un certificat ACME)
- Service cache Tor
Publication CLI
# Lister les services decouverts
secubox-registry list
# Publier avec domaine (clearnet)
secubox-registry publish myapp 8080 --domain app.example.com
# Publier avec service cache Tor
secubox-registry publish myapp 8080 --tor
# Publier avec les deux
secubox-registry publish myapp 8080 --domain app.example.com --tor
# Depublier
secubox-registry unpublish myapp
Ce qui se Passe a la Publication
Quand vous publiez un service avec un domaine :
- Backend Cree - Backend HAProxy pointant vers le port local
- Vhost Cree - Vhost HAProxy pour le domaine
- Pare-feu Ouvert - Ports 80/443 ouverts depuis WAN (auto)
- Certificat Demande - Certificat ACME via Let's Encrypt
- Page d'Accueil Mise a Jour - HTML statique regenere
API de Verification de Sante
Obtenir les Infos Reseau
ubus call luci.service-registry get_network_info
Reponse :
{
"success": true,
"lan_ip": "192.168.255.1",
"ipv4": {
"address": "185.220.101.12",
"status": "ok",
"hostname": "server.example.com"
},
"ipv6": {
"address": "2001:db8::1",
"status": "ok"
},
"external_ports": {
"http": { "accessible": true, "status": "open" },
"https": { "accessible": true, "status": "open" }
},
"firewall": {
"status": "ok",
"http_open": true,
"https_open": true
},
"haproxy": { "status": "running" }
}
Verifier un Domaine Unique
ubus call luci.service-registry check_service_health '{"domain":"example.com"}'
Reponse :
{
"success": true,
"domain": "example.com",
"public_ip": {
"ipv4": "185.220.101.12",
"ipv6": "2001:db8::1",
"hostname": "server.example.com"
},
"dns": {
"status": "ok",
"resolved_ip": "185.220.101.12"
},
"external_access": {
"status": "ok",
"http_accessible": true,
"https_accessible": true
},
"firewall": {
"status": "ok",
"http_open": true,
"https_open": true
},
"certificate": {
"status": "ok",
"days_left": 45
},
"haproxy": {
"status": "running"
}
}
Valeurs de statut DNS :
ok- Le domaine pointe vers votre IP publiqueprivate- Le domaine pointe vers une IP privee (192.168.x.x, 10.x.x.x, etc.)mismatch- Le domaine pointe vers une IP publique differentefailed- Resolution DNS echouee
Verifier Tous les Services
ubus call luci.service-registry check_all_health
La reponse inclut la sante agregee pour tous les domaines publies.
Depannage
DNS ne Resout pas
- Verifiez que l'enregistrement DNS A pointe vers votre IP publique
- Verifiez avec :
nslookup example.com - La propagation DNS peut prendre jusqu'a 48 heures
Ports Pare-feu Fermes
- Verifiez les regles de pare-feu :
uci show firewall | grep HAProxy - Les ports devraient s'ouvrir automatiquement a la publication
- Correction manuelle :
uci add firewall rule uci set firewall.@rule[-1].name='HAProxy-HTTP' uci set firewall.@rule[-1].src='wan' uci set firewall.@rule[-1].dest_port='80' uci set firewall.@rule[-1].proto='tcp' uci set firewall.@rule[-1].target='ACCEPT' uci commit firewall /etc/init.d/firewall reload
Certificat Manquant
- Assurez-vous que le DNS du domaine est correctement configure
- Assurez-vous que le port 80 est accessible depuis Internet
- Demandez le certificat via HAProxy :
haproxyctl cert add example.com
503 Service Non Disponible
Causes courantes :
- Backend non en cours d'execution - Verifiez si le service ecoute reellement
- Mauvais port backend - Verifiez la configuration du backend HAProxy
- HAProxy non en cours d'execution - Verifiez le statut du conteneur
# Verifier que le service ecoute
netstat -tln | grep :8080
# Verifier le statut HAProxy
haproxyctl status
# Verifier la config HAProxy
haproxyctl validate
Configuration
Parametres UCI
# Parametres principaux
uci set service-registry.main.enabled='1'
uci set service-registry.main.auto_tor='0' # Auto-creer Tor a la publication
uci set service-registry.main.auto_haproxy='0' # Auto-creer HAProxy a la publication
uci set service-registry.main.landing_auto_regen='1'
# Toggles des fournisseurs
uci set service-registry.haproxy.enabled='1'
uci set service-registry.tor.enabled='1'
uci set service-registry.direct.enabled='1'
uci set service-registry.lxc.enabled='1'
uci commit service-registry
Emplacements des Fichiers
| Chemin | Description |
|---|---|
/etc/config/service-registry |
Configuration UCI |
/www/secubox-services.html |
Page d'accueil generee |
/usr/sbin/secubox-registry |
Outil CLI |
/usr/sbin/secubox-landing-gen |
Generateur de page d'accueil |
/usr/libexec/rpcd/luci.service-registry |
Backend RPCD |
Methodes RPCD
| Methode | Description |
|---|---|
list_services |
Lister tous les services de tous les fournisseurs |
publish_service |
Publier un service vers HAProxy/Tor |
unpublish_service |
Supprimer un service de HAProxy/Tor |
check_service_health |
Verifier DNS/cert/pare-feu/acces externe pour le domaine |
check_all_health |
Verification de sante en lot pour tous les services |
get_network_info |
Obtenir les IPs publiques, accessibilite des ports externes, statut du pare-feu |
generate_landing_page |
Regenerer la page d'accueil statique |
Licence
Licence MIT - Copyright (C) 2025 CyberMind.fr