Ceci est une ancienne révision du document !
Pour créer un guest, est nécessaire de déterminer un nom, une ip et un numéro de contexte qui doit être unique entre 3 et 255. Le numéro de contexte usuellement utilisé est le même que le dernier octet de l'ip principale du guest. Pour trouver les ip déjà utilisées, on peut utiliser la commande suivante sur tous les hotes :
sort /etc/vservers/*/interfaces/0/ip
Avant la création à proprement dite, il est conseillé de mettre à jour le template à partir duquel nous allons créer notre serveur. Il est aussi conseillé de vérifier les comptes utilisateurs existants (donc
/etc/passwd, /etc/shadow, /etc/group, /etc/sudoers, /etc/ssh/sshd_config pour les AllowUsers, etc.). Ça évitera de faire le travail deux fois.
Note : Par défaut, les templates ne devraient pas avoir de comptes.
vserver template-lenny start vserver template-lenny enter aptitude update && aptitude safe-upgrade && aptitude clean && exit vserver template-lenny stop
En lenny (sur pavot), nous pouvons utiliser la méthode clone de vserver :
ip=XX; vserver_name=nom; vserver $vserver_name build -m clone --context $ip --hostname $vserver_name.april.org --interface eth0:192.168.1.$ip/24 -- --source /var/lib/vservers/template-lenny
Bien vérifier qu'il existe un fichier
/etc/vservers/$vserver_name/apps/init/markcontenant la ligne “default”.
/etc/vservers/<vserver_name>/fstab
et modifier le répertoire temporaire, par exemple :
none /proc proc defaults 0 0 /var/tmp/vservers/plop /tmp auto rbind 0 0 none /dev/pts devpts gid=5,mode=620 0 0
Sur pavot, on peut mettre un tmpfs, vu que l'on dispose de suffisamment de RAM. Par exemple :
none /proc proc defaults 0 0 none /tmp tmpfs size=100m,mode=1777 0 0 none /dev/pts devpts gid=5,mode=620 0 0
Modifier également le nom du guest dans ssmtp :
/etc/ssmtp/ssmtp.conf
Ainsi que le hostname :
/etc/hostname et /etc/hosts
De manière générale, il est conseillé pour détecter tous les fichiers nécessitant une modification de faire
grep -rE [IP clonée|hostname cloné] /etc
Il faut changer les clés SSH du nouveau vserver :
rm /etc/ssh/ssh_host_* ; aptitude reinstall openssh-server
Elle s'effectue sur la machine hôte, sortir du vserver si vous y êtes.
/etc/init.d/firewall
$VS_$vserver-name=192.168.1.$ip
à la suite des déclarations de variables VS_
DNAT
) pour rediriger le flux vers le vserver : ${IPT} -t nat -A PREROUTING -s ! $VS_LAN -p tcp –dport $port -j DNAT –to $VS_$vserver-name:$port
INET → Vservers
) pour autoriser le flux vers le vserver : ${IPT} -A bad-vs -p tcp -d $VS_$vserver-name –dport $port -j ACCEPT
Vservers → INET
: $IPT -A vs-bad -p tcp -s $VS_$vserver-name –dport $port -j ACCEPT
Voir la documentation sur nginx (TODO lien à faire).
Rajouter le nouveau serveur sur la liste des vservers et documenter son utilisation.
Indiquer que le nom a été utilisé sur la page de nommage.
Voir la page configuration_de_la_pre-sauvegarde pour configurer le script de pré-sauvegarde du vserver.
Renseigner le nom et l'ip du nouveau guest dans le guest dns de l'hôte sur lequel le guest en question est installé (ns1 ou pavot).