Xen roles – script de post-installation de machine virtuelle
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.