Ce week-end, je me suis décidé à installer et tester vservers.
En fin de compte c'est tout bête:
1- installer une debian (/ à 2Go + SWAP)
2- mettre le sources.list à jour (stable/unstable/testing) et apt.conf
3- apt-get update
4- mettre le kernel qui va bien en .deb, j'en ai trouvé un ici:
http://lena.franken.de/linux/debian_and_vserver/kernel-image-2.4.18(...)
car je n'arrive pas à prendre celui là:
ftp://ftp.solucorp.qc.ca/pub/vserver/kernel-2.4.25-vs1.26.tar.gz(...)
5- on redémarre sur le nouveau kernel
6- on met à jour le système:
apt-get install ssh lvm2 util-vserver vserver-debiantools
7- Créer une partion LVM, qui pointe sur /var/lib/vservers, pour LVM:
http://clx.anet.fr/spip/article.php3?id_article=237(...)
8- Fin de la configuration de l'OS pour héberger les Vservers
Pour Installer et configurer un vserver:
Le 1er vserver que je vais créer est un serveur SQUID pour éviter de recharger les fichiers sur le net. Mais vous pouvez commencer par créer un vserver de référence:
http://vservers-fr.org/(...)
Par défaut les vservers sous une debian sont des debian, voici les manipulations:
1- Vérifier que votre partition /var/lib/vservers est ok
2- utiliser la commande newvserver pour :
$ newvserver --vsroot /var/lib/vservers --hostname debian-SQUID --domain chezmoi.net --ip 192.168.1.231 --interface eth0 --arch i386
3- attendre qu'il installe le bootstrap et qu'il le mette à jour (le temps dépend de la puissance de la machine et de la connexion internet)
4- Copier votre sources.list + apt.conf dans l'arboresence de votre vserver
6- vserver debian-SQUID start
6- vserver debian-SQUID enter
7- apt-get update
8- apt-get install squid
9- configurer votre SQUID.conf
10- configurer votre apt.conf pour qu'il prenne en charge SQUID
11- faites des essais avec apt-get update
12- Mise à jour à votre sauce: apt-get dist-upgrade / install
Voila, c'est fini!
Pour ma part, je n'arrive pas à installer ssh. Lorsqu'il essaye de générer ma clés /dev/urandom n'existe pas:
"PRNG is not seeded"
Sinon vserver ne fonctionne pas en IPv6. Il n'y a pas d'info pas récupérer une distribution et la mettre en vserver.
J'ai souvent une erreur, il ne peut pas exécuter /etc/init.d/rc 2
et je suis obligé de refaire mon vserver.
Voici mes sources d'info:
Portail francophone des vservers: http://vservers-fr.org/(...)
LVM: http://clx.anet.fr/spip/article.php3?id_article=237(...)
Vservers et debian: http://lena.franken.de/linux/debian_and_vserver/vserver.html(...)
Vservers et debian: http://vserver.strahlungsfrei.de/tiki-index.php?page=GetTheKernelAn(...)
et bien sûr: http://www.linux-vserver.org/(...)
Bon, je vais aller créer mes vservers alternc et gforge de référence...
:)
# J'ai oublié de parler des "capabilities"
Posté par Tonio (site web personnel) . Évalué à 3.
CAP_NET_RAW: You can create arbitrary ip-packets
CAP_SYS_TIME: You are allowed to set time: date, netdate, xntpd
CAP_NET_BROADCAST: You are allowed to send broadcast-packets, i.e. Samba
CAP_NET_BIND_SERVICE: Bind ports below 1024
CAP_CHOWN: You are allowed to change owner of files
CAP_SYS_ADMIN: You are allowed to do everything, includes mounting filesystems!
Vous faites votre choix puis dans le fichier de configuration de votre vserver: /etc/vservers/xx.conf
Vous ajouter:
S_CAPS="CAP_NET_RAW CAP_NET_BIND_SERVICE"
Tous les droits sont dans: capability.h
Info:
http://lena.franken.de/linux/debian_and_vserver/vserver.html(...)
# Attention aux veilles versions/doc
Posté par Tonio (site web personnel) . Évalué à 2.
il faut faire attention aux vielles doc et aux fichiers fichiers.
Dans mon cas, j'ai dû croiser les informations pour pas me tromper.
De plus, j'ai juste récupérer les outils vservers sur les sites debian; donc pas trop de problème.
Le plus important est le kernel, pour l'instant celui que j'ai pris est suffisant.
Un autre truc, quand on install les .deb de vservers il retirer pleins de packages pour des raisons de sécurités. Donc on doit passer derrière pour ajouter ces outils/packages
# précisions
Posté par ArnY (site web personnel) . Évalué à 2.
Si tu as un sshd qui tourne sur la machine hote et qui binde sur toutes les interfaces (par defaut) tu ne pourra pas utiliser sshd dans ton vserver, et vis-et-versa. C'est valable pour tous les autres services (ftp, squid, telnet, http, etc) Il faut donc penser a configurer l'interface sur laquelle le daemon doit binder.
Certains services ne marchent pas dans un vservers, par exemple, bind doit etre compiler avec un flag particulier.
Il y a aussi un risque d'incompatibilité avec certains matériels actifs.. genre des switch de bas de gamme qui n'arriveront pas à gerer X adresses IP pour une seule mac address. (faut vraiment tomber sur du matos pourri)
Je n'ai jamais essayé de faire tourner un vserver en ipv6, mais on utilise nos vservers sur des interfaces virtuelle vlan, et cela marche très bien (un vserver par vlan).
Voila, c'était juste quelles précisions qui me sont passée par la tête
[^] # Re: précisions
Posté par Tonio (site web personnel) . Évalué à 1.
Pour les services, je vais essayer de voir cela mais il disait qu'il y a un problème avec /dev/urandom
[^] # Re: précisions
Posté par ArnY (site web personnel) . Évalué à 3.
mkdir -p $VROOT/dev && chmod 755 $VROOT/dev
mkdir $VROOT/dev/pts
vserver_mknod $VROOT/dev/null c 1 3 666
vserver_mknod $VROOT/dev/zero c 1 5 666
vserver_mknod $VROOT/dev/full c 1 7 666
vserver_mknod $VROOT/dev/random c 1 8 644
vserver_mknod $VROOT/dev/urandom c 1 9 644
vserver_mknod $VROOT/dev/tty c 5 0 666
vserver_mknod $VROOT/dev/ptmx c 5 2 666
c'est peut-etre ce qu'il te manque.
[^] # Re: précisions
Posté par Tonio (site web personnel) . Évalué à 1.
Je vais essayer cela ce soir
sinon, j'ai essayé une autre commande avec cp:
cp -av /dev/[random|urandom] $VROOT/dev/
Je pense que cela doit venir d'un probème dans le package debian
Il faut vraiment faire attention à l'assignation de l'adresse IP dans tous les services...
[^] # Re: précisions
Posté par ArnY (site web personnel) . Évalué à 2.
vserver_mknod est une fonction faite en bash:
vserver_mknod()
{
mknod $1 $2 $3 $4
chmod $5 $1
}
qui permet de créer le device dans le bon répertoire.
[^] # Re: précisions
Posté par Tonio (site web personnel) . Évalué à 1.
par contre, j'ai trouvé un contournement
touch /dev/null
chmod a+rw /dev/null
puis ensuite postfix et procmail sont ok
Sinon comment on configure l'adresse ip d'écoute de portmap...
je sais je devrais aller l'info; j'irai quand j'aurai fini ma config(spamassasin+filtre ml) et récupérer mes 300 mails
a+
# Expérience peu concluante pour moi
Posté par Tulan . Évalué à 0.
- consommation mémoire importante
- impossible de mettre les vservers sur des subnets personnels et de les empécher de communiquer entre eux(*). Ils peuvent toujours se pinguer et voir le réseau local même sans gateway.
- impossible de trouver comment configurer iptables pour filtrer le traffic réseau depuis, vers et entre les vservers
- impossible aux vservers d'accéder à ppp0 pour ma connexion ADSL, ils ne fonctionnent que pour le local
(*) : en gros je voulais que les vservers soient sur un subnet particulier, et ne puissent pas communiquer entre eux. Un vserver s'oocuppait ensuite de iptables et des règles de traffic entre les vservers. Manque de pot, la configuration de iptables est dans le kernel, donc pas exportable dans un vserver (ou alors avec un patch, mais je n'ai pas essayé).
Pour iptables et le net, il doit y avoir un moyen, mais j'ai vraiment perdu trop de temps dessus.
Donc en gros les vservers pour une machine dans un réseau c'est bien pratique, mais pour une passerelle c'est beaucoup plus galère :(
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.