Xen roles – script de post-installation de machine virtuelle

xen


Cette article traitera de l’utilisation des rôles dans la création de machine virtuelle Xen, il fait suite à mes 2 précédents articles sur Xen traitant de l’installation puis de la création d’un domU.

Les roles Xen sont en quelque sorte des scripts de post-installation que xen-create-image utilisera pour finaliser l’installation de vos machines virtuelles. Pour utiliser les rôles, rien de plus simple :

# xen-create-image --hostname=machine --ip 192.168.1.100 --role=default

L’ensemble des rôles sont stockés dans /etc/xen-tools/role.d/ et vous pouvez en ajouter autant que vous le souhaitez.
La création des rôles est assez simple, pour vous le prouver vous trouverez ci-dessous mon rôle default :

#!/bin/sh
prefix=$1

 # Import de fonction d'installation de paquets debian
if [ -e /usr/lib/xen-tools/common.sh ]; then
. /usr/lib/xen-tools/common.sh
else
echo "Installation problem"
fi

 # Installation des paquets qui me sont nécessaires par defaut
chroot ${prefix} /usr/bin/apt-get update
chroot ${prefix} /usr/bin/apt-get -y -f upgrade
installDebianPackage ${prefix} openssh-server
installDebianPackage ${prefix} bash-completion
installDebianPackage ${prefix} vim
installDebianPackage ${prefix} less
installDebianPackage ${prefix} ntp
installDebianPackage ${prefix} sudo

 # Création de monutilisateur
chroot ${prefix} useradd -d /home/monutilisateur -p "mon mot de passe crypter" -m -s /bin/bash -U monutilisateur

 # Configuration de ssh
cp /etc/xen-tools/skel/sshd_config ${prefix}/etc/ssh/
mkdir ${prefix}/home/monutilisateur/.ssh
cp /etc/xen-tools/skel/ssh/domU_keys ${prefix}/home/monutilisateur/.ssh/authorized_keys
chroot ${prefix} chmod -R 600 /home/monutilisateur/.ssh
chroot ${prefix} chmod 700 /home/monutilisateur/.ssh

 # Personnalisation de mon utilisateur
cp /etc/xen-tools/skel/.bashrc_user ${prefix}/home/monutilisateur/.bashrc
cp /etc/xen-tools/skel/.vimrc ${prefix}/home/monutilisateur/
chroot ${prefix} chown -R monutilisateur:monutilisateur /home/monutilisateur

 # Personnalisation de charlie root
cp /etc/xen-tools/skel/.bashrc_root ${prefix}/root/
cp /etc/xen-tools/skel/.vimrc ${prefix}/root/
chown -R root:root ${prefix}/root

 # Install and configuration de sudo en utilisant le role sudoers
. /etc/xen-tools/role.d/sudoers
chroot ${prefix} usermod -a -G sudo monutilisateur

Une fois ce rôle exécuté, je me retrouve avec une machine offrant un serveur SSH avec authentification par clef et mon environnement tout prêt pour de nouvelles aventures.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.