{{tag>sysadmin bareos sauvegarde backup}}
====== Installation de la bconsole ======
L’interfaçage avec l'orchestrateur de sauvegarde (service bareos-dir) se fait via la console bareos **bconsole**. Cette console est installée par défaut localement sur le serveur mais peut être installée sur n'importe quelle machine du réseau.
===== Installation sous Ubuntu =====
La documentation officielle propose des scripts pour ajouter le dépôt Bareos sous Ubuntu:
Depuis une console en root, ajouter le dépôt correspondant à la distribution et à la version souhaitée de Bareos:
DIST=xUbuntu_14.04
RELEASE=release/18.2
URL=http://download.bareos.org/bareos/$RELEASE/$DIST
printf "deb $URL /\n" > /etc/apt/sources.list.d/bareos.list
wget -q $URL/Release.key -O- | apt-key add -
Installer seulement la console:
sudo apt-get update
sudo apt-get install bareos-bconsole
===== Installation Windows =====
Les installateurs 32/64 bits sont disponibles à l'URL http://download.bareos.org/bareos/release/18.2/windows/
===== Configuration =====
Le fichier de configuration **/etc/bareos/bconsole.conf** contient au minimum la définition de la ressource Director avec les enregistrements (records) suivants obligatoires pour communiquer avec le Director:
^ Name | UID du Director, plusieurs Directors peuvent être définis. |
^ Address | FQDN ou IP de l'hote à contacter hébergeant le service Director (bareos-dir) |
^ Password | Clé (ou hachage MD5) que doit présenter la console pour s'authentifier auprès du Director. La valeur a été définie dans le fichier de configuration du Director (/etc/bareos/bareos-dir.d/director/bareos-dir.conf) et doit être copiée ici. |
Sans définition complémentaire, **la console utilisée par défaut est la console d'administration**. Pour utiliser une console restreinte, il faut créer la ressource côté Director (''/etc/bareos/bareos-dir.d/console/'' ) puis déclarer explicitement son utilisation ici via la déclaration d'une ressource Console
Ci-dessous un exemple de configuration pour une connexion avec la console d'administration
# Paramètres de connexion au Director
Director {
Address = bareos.example.domain
Name = "bareos-dir"
Password = "[md5]33abbcfcf3eb25dda60038e776fc0ffe"
}
Exemple de configuration utilisant une console restreinte nommée "ma-console":
# Paramètres de connexion au Director
Director {
Address = bareos.example.domain
Name = "bareos-dir"
Password = "[md5]33abbcfcf3eb25dda60038e776fc0ffe"
}
# Console à utiliser
Console {
Name = "ma-console"
Password = "[md5]67ad078c8c99532829b70011bcbaba02"
}
==== Droits ====
Ajouter l'utilisateur au groupe **bareos** pour qu'il soit autorisé à lire le fichier de conf de la console.
# Ajoute l'utilisateur aUser au groupe bareos
sudo usermod --append -G bareos aUser
# Définit temporairement bareos en groupe principal pour l'utilisateur courant (aUser)
newgrp bareos
==== Pare-feu ====
La bconsole doit pouvoir joindre le service director sur son port (par défaut 9101). Ci-dessous un exemple de règle temporaire avec nftables :
nft -ai
# Autorise la connexion sortante vers le director à l'adresse 192.168.0.10
add rule aTable aOutboundChain position 47 ct state new ip daddr 192.168.0.10 tcp dport 9101 log prefix "[FW] [ACCEPT] [RID=70] " level notice counter accept comment "Autorise console Bareos"
===== Les consoles restreintes =====
Il est possible de définir plusieurs consoles coté Director et de spécifier finement les commandes exécutables par chacune d'entre-elles.
Coté Director définir une ressource **Console** dans un fichier de configuration dédié dans le dossier ''/etc/bareos/bareos-dir.d/console''
Console {
Name = "ma-console"
Password = "ExamplePassWord"
JobACL = *all*
StorageACL = storage01-sd
ScheduleACL = *all*
PoolACL = *all*
# FileSetACL = "Restricted Client's FileSet"
CatalogACL = MyCatalog
CommandACL = list,show,estimate,status
}
Recharger la configuration puis vérifier que la configuration active du Director contient bien la console:
* reload
* show consoles
===== Tests =====
Tester la syntaxe du fichier de configuration:
bconsole -t
En cas d’échec de connexion, il est possible d'augmenter le niveau de verbosité via l'option **-d** (debug) avec 50 =< d =< 200:
bconsole -d 50
Les messages retournés par la commande sont présentés ci-dessous:
Connecting to Director bareos.mairie.local:9101
bconsole (50): lib/tls_openssl.cc:64-0 Preparing TLS_PSK CLIENT context for identity R_CONSOLE monitor
bconsole (50): lib/crypto_openssl.cc:1579-0 jcr=0 Connect failure: ERR=error:140943FC:SSL routines:ssl3_read_bytes:sslv3 alert bad record mac
bconsole (50): lib/bsock.cc:669-0 TLS negotiation failed
Failed to connect to Director. Giving up.
Le Director est bien contacté:
* La ligne 2 indique que la console restreinte nommée "monitor" est utilisée ''identity R_CONSOLE monitor''
* Les lignes suivantes rapportent une échec de la connexion (erreur d'authentification revoir le mot de passe).
Si plusieurs ressources Director ont été définies elles peuvent être listées avec l'option **-l**:
bconsole -l
Pour spécifier quelle connexion utiliser:
bconsole -D bareos-dir
===== Dépannages =====
==== Pas d’auto-complétion depuis les consoles restreintes =====
Sur les consoles restreintes, il faut explicitement autoriser les commandes disponibles. L’auto-complétion est fournie par des commandes spécifiques commençant par le caractère "." Le guide du développeur Bareos fournit quelques informations concernant ces fonctions à l'URL https://docs.bareos.org/DeveloperGuide/api.html#dot-commands
Notamment:
^ .help | Permettre l'auto-complétion sur les commandes autorisées. |
^ .jobs | Permettre l'auto-complétion sur les tâches. |
^ .clients | Permettre l'auto-complétion sur les clients Bareos. |
^ .defaults | Permettre l'auto-complétion sur les principales ressources |
===== Références =====
* https://docs.bareos.org/Configuration/Console.html
* https://docs.bareos.org/DeveloperGuide/api.html#dot-commands