Mot-clé - administration

Fil des billets - Fil des commentaires

mercredi, août 10 2011

Configuration spécifique de iptables

Fedora offre un outil de configuration rapide de par-feu iptables assez simple, pratique dans la plupart des cas. Comme vous le savez certainement, CentOS est proche de Fedora dans le sens où la base est quasiment identique, à la différence des paquets et de l'aptitude de la distribution. CentOS est orientée serveur. Bref, j'ai eu besoin de créer une machine virtuelle sur ma Centos et de permettre une redirection de port sur la machine hôte pour me connecter directement à cette dernière. Or, toucher à iptables ne sauve pas votre configuration directement, et l'outil de gestion de base ne permet pas de faire des ip-forward.

Car en fait, créer une règle de port fowrading est plutôt rapide. Exemple, ici ma VM a l'ip locale "192.168.122.18" et n'est vu que de ma CentOS hôte (adresse public 1.2.3.4). Ajouter le port forward se fait de cette manière:

iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 10222 -j DNAT --to 192.168.122.18:22
iptables -A FORWARD -i eth0  -p tcp -d 192.168.122.18 --dport 22 -j ACCEPT

Donc j'admet ici que si on se connecte au port 10222 de ma CentOS, je redirige la connexion sur la machine 192.168.122.18 port 22 (ssh). Cela se fait par la table PREROUTING qui va manipuler les paquets en changeant les données ip source et port source, et la table FORWARD qui assigne la redirection. Bref, sympa :)

Mais voilà, si vous voulez redémarrer votre machine, vos deux commandes sont oubliées car non inscrites dans la configuration de base du service iptables installée sur votre machine. Donc la solution est simple.

On va sauver notre ancienne configuration, sait-on jamais, et forcer la nouvelle configuration depuis la commande iptables-save.

cat /etc/sysconfig/iptables > /etc/sysconfig/iptables.save
iptables-save > /etc/sysconfig/iptables

C'est simple non ? en fait, par bonheur, le service iptables utilise le format standard de "iptables-save" et "iptables-restore" donc la manipuation est aisée.

Voilà, vous pouvez tester en relançant le service iptables, et ne plus avoir peur de perdre votre forward si le serveur redémarre.

mercredi, août 3 2011

Un chroot si rapide à créer

J'avais travaillé sur la documentation de chroot sur cette page: http://doc.fedora-fr.org/wiki/Utili... mais depuis, les choses ont changé. Febootstrap ne marche plus du tout comme avant... et j'ai trouvé une manière encore plus simple de créer une base chroot sans manipuler des fichiers de dépôts. Vous allez voir, c'est tellement simple que ça en est presque indécent.

Voilà la manière la plus facile que j'ai trouvé, par exemple pour encapluser "php-cli" dans un chroot:

cd ~
mkdir -p chroots/fedora-15-chroot
cd chroots
su -c 'yum --installroot=`pwd`/fedora-15-chroot --releasever=15 install php-cli -y'

C'est simple comme choux en fait...

Je crée un répertoire dans mon "home" (cd ~ et mkdir -p chroots/fedora-15-chroot). Ensuite je demande à yum d'installer php-cli dans le répertoire fedora-15-chroot. Comme je n'ai pas créé de fichier de dépots Fedora dans le répertoire de chroot, je spécifie simplement que je veux utiliser la version "15" de fedora. Notez que "releasever" est une contraction de "release version".

Et comme par enchantement, j'ai un chroot fonctionnel !

Là où c'est intéressant, c'est que je me passe de pas mal de configuration un peu compliqué. Il est alors facile de changer de --releasever en 16 pour tester la rawhide, ou une version inférieure...

Me reste plus qu'à voir comment fonctionne lxc (et je n'ai pas la dernière version de libvirt donc je n'ai pas encore l'accès facilité par virt-manager) et je vais pouvoir tester pas mal de choses, comme faire marcher des bases en jail, compiler des choses tordus ou voir comment péter un système sans avoir peur :)

samedi, juillet 30 2011

Tester des paquets sans tout casser

Une des raisons pour laquelle j'utilise Fedora depuis des années c'est l'aptitude (clin d'oeil de geek...) de yum à permettre des manipulations de paquets assez rapide. J'avais justement besoin de tester llvm 2.9 qui est pour le moment dans les dépôts rawhide (c'est à dire dans les dépôts de développement de la future version de fedora). Donc, me voilà avec un dilemme: comment tester sans tout casser et sans me prendre la tête à installer une VM? La réponse est dans yum l'ami.

yum a deux options (en fait une commande et une option) qui me permettent de tester sans massacrer mon système: distro-sync et --releasever. La première fait en sorte de synchroniser mes versions de paquets à la version de fedora en cours, et l'autre me permet de spécifier la version de fedora à utiliser.

Et bien allons y gaiement:

su -
yum clean all
yum --releasever=rawhide --nogpgcheck --disablerepos=rpmfusion\* update llvm

Cela à pour effet de lancer une installation en spécifiant que je cherche des paquets pour rawhide. L'installation terminée, j'ai bien un llvm 2.9 qui est installé alors que sur Fedora 15 nous sommes en version 2.8.

Mes tests terminés (et non concluant) j'ai eut envie de revenir à ma version de base. Et bien c'est simple:

yum clean all
yum distro-sync

Et voilà, yum trouve des paquets à downgrader (réduire la version) et me réinstalle tous les paquets estampillés pour la version fedora supérieure à la version actuelle (ici fedora 15). Du coup j'ai resynchronisé ma fedora. Attention tout de même à ne pas faire ça pour n'importe quoi... n'oubliez pas que des fichier .rpmnew peuvent apparaître ou encore peuvent vraiment planter le système.

Personnellement j'évite de faire ça pour tout, par exemple pour le moment j'évite de jouer avec des version de gnome qui se trouve dans rawhide, mais pour ce qui est de certaines librairies, compilateurs, ou encore apache, php... j'aime bien tester de la sorte.

Effectivement lxc ou carrément une machine virtuelle pourrait faire l'affaire, mais c'est tellement sympa avec yum... non ?

jeudi, mars 3 2011

Bleachbit et votre PC souffle un peu

On télécharge, on joue avec des compilations de programme, on se teste au package, on ferme brutalement des éditeurs de texte, on utilise firefox et google-chrome... et puis un jour on se rend compte que son PC est un peu lent, que le disque "craque" et que l'espace disque commence à manquer. Je vais vous présenter l'outil magique qui va vous soulager la douleur.

Lire la suite...