Archive for the ‘tutoriel’ Category
Posted on February 28, 2010 - by Jérôme M.
Dwm
Dwm est le Dynamic Window Manager pour X. Il s’occupe de manipuler les fenêtres en mode mosaïqué (tiling), plein-écran ou flottant. Il est très léger et écrit en C. Son code source fait moins de 2000 lignes de codes, et il est customisable de différentes façons, notamment avec tous les patchs qui sont sortis. Il fonctionne aussi très bien sur du multi-écran, avec xrandr et xinerama. Ce billet à pour intention de vous aider à l’installer et à le personnaliser, pour les gens qui sont curieux, et qui aimeraient bien tester un tiling wm.
Introduction
Nous allons installer et configurer Dwm en utilisant makepkg et l’Arch Build System. Ce qui va nous permettre de créer proprement des paquets, et éviter de « salir » le système avec un make install. Pour ceux qui n’utilise pas Arch Linux, il y a toujours moyen de faire la même chose avec d’autres outils. Pour tester rapidement dwm :
sudo pacman -S dwm
Gardez à l’esprit que si vous l’installez comme ça, vous passez à côté de toute la partie customisation.
Préparation
Nous allons avoir besoin du paquet base-devel pour la compilation et abs pour récupérer l’arbre des PKGBUILDs.
sudo pacman -S base-devel abs
Récupérons maintenant les PKGBUILDs de tous les programmes installables avec pacman. On va donc pouvoir ensuite récupérer celui de Dwm pour pouvoir le compiler à notre sauce.
sudo abs cp -r /var/abs/community/dwm ~/dwm
Rentrons maintenant avec un cd, dans le dossier dwm fraichement copié dans notre home et lançons la compilation.
makepkg -iCeci va récupérer les sources, compiler et installer Dwm.
Configuration
Allez faire un petit tour dans le dossier dwm copié dans votre home. Vous y trouverez un fichier config.h. C’est dans ce fichier que l’ont va pouvoir configurer Dwm. Une fois ce fichier à jour, il faut recompiler Dwm :
makepkg -efi --skipinteg
Conclusion
Voilà ce qu’il faut faire pour mettre à jour et configurer Dwm. Je vous laisse faire un tour sur le site officiel pour avoir des infos supplémentaires sur la configuration, avec des exemples et des plugins.
Sur mon prochain billet je vous montrerai ma configuration avec des exemples précis d’utilisation de dzen2, conky etc.
Stay tuned.
Posted on February 4, 2010 - by Jérôme M.
Renforcer la sécurité de son serveur SSH
Le protocole SSH est utilisé pour transmettre des informations de manière sécurisé entre deux terminaux. Par exemple comme se loguer sur une machine distante, ou échanger des fichiers, le tout crypté. Il est de par sa conception très sécurisé, mais une mauvaise configuration peut tout gâcher.
Fichiers de configuration par défaut
- /etc/ssh/sshd_config - Fichier de configuration du serveur SSH.
- /etc/ssh/ssh_config – Fichier de configuration du client SSH
- ~/.ssh/ – Répertoire de configuration SSH d’un utilisateur.
- /etc/nologin – Si ce fichier existe, personne ne peut se connecter à part root.
- /etc/hosts.allow et /etc/hosts.deny : Blacklist et whitelist .
- SSH port par défaut : TCP 22
Utiliser le protocole SSH 2
Le protocole 1 est obsolète et vulnérable à de nombreuses attaques (comme man-in-the-middle). Il doit être évité à tout pris. Vérifiez dans le sshd_config que la ligne suivante existe :
Protocol 2Choisir les utilisateurs
Par défaut n’importe quel utilisateur à le droit de se connecter en SSH. Par exemple un utilisateur ftp à la possibilité de se connecter. Ce n’est pas super pertinent. Alors on peut restreindre le serveur SSH à n’autoriser que certains compte utilisateur. Pour ça on peut utiliser (toujours dans le sshd_config) :
AllowUsers root rydgel
Qui autorise ces 2 utilisateurs à pouvoir se connecter. Inversement la commande DenyUsers, permet de refuser la connexion.
Désactiver les fichiers .rhosts
Ces fichiers permettent de se connecter automatiquement au serveur sans avoir besoin de retaper le mot de passe. Sympa pour les feignants mais pas sécurisé du tout. Donc il vaut mieux désactiver l’utilisation de ces fichiers avant que quelqu’un ne tombe dessus ;)
IgnoreRhosts yesAjouter un timeout sur l’inactivité
Garder la session ouverte indéfiniment n’est pas non plus une bonne idée. Vous êtes au boulot, vous vous absentez une heure ou deux et vous oubliez de fermer votre session, n’importe qui peut attraper votre shell en root et faire ce qu’il veut pendant votre absence.
ClientAliveInterval 360 ClientAliveCountMax 0
Désactiver le login de root
Une autre manière de sécuriser est de désactiver le login de root et d’utiliser un user avec des droits moindres + sudo.
PermitRootLogin no
Changer le port par défaut d’openSSH
Le port 22 est connu par tous les pirates pour être celui d’openSSH. Les robots scannent en priorité ce port, pour le changer c’est tout simple :
Port 6345N’autoriser que certaines IP à se connecter
Par exemple si je veux que seulement ces 2 adresses IP ait le droit de se connecter sur mon serveur (192.168.1.5 et 202.54.1.5). Il y a deux solutions. La première est d’utiliser les fichiers /etc/hosts.allow et /etc/hosts.deny. On commence par bloquer toutes les IPs dans le hosts.deny, puis on autorise seulement celles que l’on veut.
dans /etc/hosts.deny : sshd: ALL On bloque par défaut toutes les IPs, puis dans le /etc/hosts.allow : sshd: 192.168.1.5 sshd: 202.54.1.5
La deuxième solution (et la meilleure à mon avis) est d’utiliser le firewall du système (iptables, pf) et d’autoriser seulement les IPs que l’on veut sur le port d’OpenSSH.
Utiliser un bon mot de passe
On voit encore trop souvent des mots de passe du style ‘12345′ ou ‘admin’. Le plus simple est de se créer un mot passe aléatoirement avec des chiffres, des lettres (majuscules et minuscules) et des caractères spéciaux. http://www.goodpassword.com/ est un site qui permet de le faire pour vous :)
Personne ne doit avoir un mot de passe vide
Vérifiez que les utilisateurs de votre machine n’ont pas de mot de passe vide. On peut aussi dire à OpenSSH de ne pas accepter les connexions d’utilisateurs sans mot de passe.
PermitEmptyPasswords no
Garder OpenSSH et votre système à jour
On ne le dira jamais assez mais les mises-à-jour sont vraiment importantes. Elles corrigent la plupart du temps des failles qui peuvent être utilisées par des pirates pour compromettre votre système. Personnellement je regarde si des mises à jours de sécurité sont disponibles tous les jours.
Désactiver OpenSSH si vous ne l’utilisez pas
Ça ne sert à rien de laisser des services ouverts sur l’ordinateur si vous ne vous en servez pas. Désinstallez le serveur openSSH s’il n’est pas utilisé. Ça fera toujours une porte de moins pour accéder à votre machine.
Conclusion
Il y a encore des dizaines de manips possibles pour augmenter encore plus la sécurité, comme le chrootage des utilisateurs, la configuration d’un firewall, l’installation de fail2ban contre les attaques brute-force etc. Mais je pense que ce petit article est un bon début, pour éviter de faire des bêtises sur son serveur.
Posted on January 9, 2010 - by Jérôme M.
Ouvrir les .dmg sous Linux
Sur GNU/Linux on peut ouvrir à peu près n’importe quel format, dont les fichiers .dmg. Ce sont des images disques sur Mac utilisées principalement pour installer des logiciels.
Ces fichiers sont au format HFS+, il nous faut donc les outils nécessaires pour manipuler ce format. Le nom des paquets changeant suivant les distributions, faites une recherche sur le mot hfsplus dans votre gestionnaire de paquet.
Dans une console en mode root, il suffit de taper :
mount -o loop -t hfsplus image.dmg /dans/votre/repertoire
Soyez sur que le répertoire de destination existe avant de faire la manip.
De la même manière on peut ouvrir des partitions OS X. Utile pour ceux qui ont installé Linux sur leur Mac comme moi :)
Posted on January 8, 2010 - by Jérôme M.
Installer Wine sur OS X
On ne présente plus Wine, ce logiciel qui permet de lancer des binaires Windows sur d’autres OS. Wine tourne sur à peu près toutes les plate-formes y compris sur Mac OS X.
Alors.. oui il existe déjà des implémentations de Wine sur Mac. Comme par exemple CrossOver, mais celui est payant et non libre. Je m’ennuyais un peu et je m’étais dit que ça serait marrant de compiler Wine sous OS X (ouais on s’éclate comme on peut). Du coup je vais vous partager la façon de faire.
Pré-requis
Cette manipulation ne peut pas fonctionner sur toutes les configurations.
Intel
Il vous faut un Mac avec un processeur Intel. Les derniers Mac le sont tous. Pour vérifier il suffit d’aller dans le menu pomme et de choisir « À propos de ce Mac » pour vérifier votre processeur.
Xcode
On aura besoin des outils de compilation traditionnels (make, gcc etc.). Pour les avoir il suffit d’installer Xcode. Vous le trouverez sur cette page.
Macports
Les macports simplifieront l’installation de Wine et de ses dépendances. Pour son installation et son utilisation, je montre quelques exemples sur un précédent billet.
Installation
Avec les Macports c’est tout facile :)
sudo port install wine-devel +universal
Le flag +universal permet de compiler Wine et ses dépendances en 32 bits (car Wine ne fonctionne pas en 64 bits). Si on ne rajoute pas ce flag, le compilateur sous Snow Leopard essaiera de compiler Wine en 64 bits (ce qui ne peut pas fonctionner).
Et voilàààà
Posted on November 3, 2009 - by Jérôme M.
Utiliser devilspie pour enlever les décorations de fenêtres
Personnellement je préfère mes consoles sans aucune décoration, j’avais l’habitude avant de configurer mes WM pour que ça soit le cas. Mais le problème c’est que je devais recommencer la procédure pour un autre WM. La solution est d’utiliser devilspie. On le configure qu’une seule fois et ça sera valable sur tous les environnements de bureau qu’on utilise.
Voici le fichier urxvt.ds utilisé pour ma console (urxvt-unicode) :
(if (matches (window_class) "URxvt") (begin (undecorate) ) )
Devilspie c’est magique, on peut faire plein de trucs, comme jouer avec la transparence.
Posted on October 26, 2009 - by Jérôme M.
Créer un utilisateur gmail
Vous vous demandez peut-être ce que j’entends par ce titre. En fait les gens qui utilisent mon ordinateur n’ont parfois pas de compte dessus et comme je n’aime pas prêter le mien (haha), on peut se faire des comptes « publiques« , comme par exemple un compte gmail, pour aller bien sûr consulter ses emails.
Alors concrètement ça marche comment ? En fait on va créer un utilisateur du nom de gmail, et on va lui construire un environnement de bureau pour lui. On va en prendre un très léger comme ratpoison. Quant au navigateur, uzbl sera parfait pour ce que nous voulons faire.
La première étape va consister à installer ratpoison et uzbl. Je vous laisse vous débrouiller avec vos distributions respectives. Pour les archers c’est simple (comme toujours) :
sudo pacman -S ratpoison yaourt -S uzbl-git
Ensuite nous allons créer notre utilisateur et tout ce qu’il faut pour qu’il est sa propre session :
sudo useradd -p password gmail cd /home/gmail echo "exec ratpoison" > .xinitrc echo "exec uzbl google.com/mail" > .ratpoisonrc mkdir -p .config/uzbl echo "set always_insert_mode = 1" > .config/uzbl/config
Le .xinitrc est le fichier de script appelé par Xorg lors de son démarrage (startx), on lui dit de lancer le WM ratpoison. On configure ratpoison pour qu’il lance uzbl avec la page d’accueil de gmail. Ensuite on dit à uzbl de rester constamment en mode insert.
Il suffit donc de se logguer avec le compte gmail/password pour avoir une session gmail !
Bien sur ici gmail n’est qu’un exemple, et ça peut marcher avec plein de choses :)
Creusez vous un peu la tête :p
Via matthewbauer
Posted on October 10, 2009 - by Jérôme M.
Installer Arch Linux sur son Macbook Pro – Deuxième partie
Dans la première partie nous avons vu comment mettre en place un dual-boot avec rEFIT. Dans cette partie je parlerai essentiellement de l’installation d’Arch Linux sous le Macbook Pro unibody (5.5). Je ne couvrirai pas une installation entière, le wiki étant parfait pour cela. Mais je parlerai des points qui concernent les Macbooks, comme l’activation du son ou du wifi..
Donc vous devriez avoir à ce moment précis une installation minimale d’Arch Linux fonctionnelle. Avec le choix entre OS X et Arch Linux au démarrage du Macbook Pro.
Modèle du clavier sous tty
Il n’y a pas de modèle pour mac par défaut sous Arch Linux. Pour y remédier, téléchargez ce petit fichier et placez le dans /usr/share/kbd/keymaps/mac/all . Ensuite dans le rc.conf :
KEYMAP="mac-fr-ext_new" CONSOLEFONT="lat9w-16"
Installation du son
Le son ne fonctionnait pas du tout chez moi après l’installation normal d’alsa. En cherchant sur internet je suis tombé sur un forum d’Ubuntu qui indique qu’il faut utiliser les derniers drivers d’alsa unstable.
wget ftp://ftp.kernel.org/pub/linux/kernel/people/tiwai/snapshot/alsa-driver-unstable-snapshot.tar.gz tar xf alsa-driver-unstable-snapshot.tar.gz cd alsa-driver-unstable sudo ./configure --enable-dynamic-minors --without-oss --with-cards="hda-intel" sudo make sudo make install
Et pour les beaux gosses qui ont Arch Linux un beau PKGBUILD :
pkgname=alsa-snapshot pkgver=1 pkgrel=1 pkgdesc="Alsa snapshot (rentre en conflit avec alsa du kernel)" arch=(x86_64) url="http://ubuntuforums.org/showpost.php?p=7627817&postcount=98" license=('GPL') groups=() depends=() makedepends=() provides=() conflicts=() replaces=() backup=() source=(ftp://ftp.kernel.org/pub/linux/kernel/people/tiwai/snapshot/alsa-driver-unstable-snapshot.tar.gz) md5sums=('504b779d3dd9a2ec96b043ed83210d59') build() { cd "$srcdir/alsa-driver-unstable" ./configure --prefix=/usr --enable-dynamic-minors --without-oss --with-cards="hda-intel" make || return 1 make DESTDIR="$pkgdir/" install }
Après l’installation, lancez un petit alsaconf pour initialiser votre carte son. Et ça devrait être bon. Néanmoins à l’heure actuelle le driver ne supporte pas totalement la carte. Je n’ai du son que d’un côté. Il est aussi possible que cette opération doit être recommencée à chaque mise à jour du kernel.
Pommed
Ce démon s’occupe par exemple du rétro-éclairage de votre clavier et de la luminosité de l’écran. Le nom du paquet est pommed, rajoutez le démon dans le rc.conf.
Wifi
La carte est une Broadcom et elle utilise le driver broadcom-wl disponible dans AUR. Installez le et ensuite dans le rc.conf :
MODULES=(lib80211_crypt_tkip wl !b43 !ssb)
iSight
La carte fonctionne après l’installation du firmware, via AUR :
yaourt -S isight-firmware-toolsJe n’ai pas rencontré d’autres problèmes pendant l’installation, le plus gros problème ayant été le son. Dans une troisième partie nous verrons la configuration du Mac dans un environnement de bureau, la gestion du clavier dans X, du touchpad et des touches multimédia :)
Posted on October 3, 2009 - by Jérôme M.
Installer Arch Linux sur son MacBook Pro – Première partie
J’ai fait l’acquisition il y a peu de temps d’un MacBook Pro 13″ et je suis vite tombé en manque de ma distribution préférée. L’installation n’est pas très compliqué si on ne se précipite pas. J’ai décidé d’installer Arch Linux en dual-boot avec OS X. C’est un peu plus difficile qu’avec Windows, mais pas impossible :)
Préparation du Mac
Dans un premier temps il faut mettre à jour son système sous OS X. Pomme>Mise à jours de logiciels. On aura alors les derniers firmwares, drviers etc. Ensuite on ouvre l’utilitaire de disque, et on doit réduire notre partition principale et en créer une deuxième en FAT avec l’espace qu’on a libéré. Il faut maintenant se prendre une galette du dernier Arch Linux. Prenez le 64 bits tant qu’à faire. Une fois gravé, on va installer rEFIT. Il va nous permettre de choisir sur quel système on veut booter.
LiveCD et partition
Redémarrez une première fois le macbook après l’installation de rEFIT, si le menu n’apparaît pas au démarrage, essayez de rebooter une deuxième fois. Personnellement je ne l’ai vu que la deuxième fois. Rentrez le CD dans la bête et pendant le démarrage maintenez la touche C. Le macbook devrait booter sur le LiveCD.
C’est là que les choses intéressantes commencent. On va utiliser parted pour refaire la partition.
fdisk -l
Cette commande nous donne la liste des partitions. Ma partition FAT est en /dev/sda3, c’est donc la troisième de mon macbook.
parted
On lance l’utilitaire de partition, et on s’occupe de convertir notre partition en EXT2 (je n’ai pas réussi à la mettre directement en EXT4 avec parted mais on pourra le faire pendant l’installation)
mkfs
Il vous demandera le numéro de votre partition, dans mon cas c’était 3. Et ensuite le système de fichiers, mettez EXT2.
rEFIT et la MBR
On a mis à jour les partitions du systèmes, il faut maintenant que le macbook s’en rende compte en quelque sorte. Rebootez sur le menu principal de rEFIT et mettez à jour la table des partitions. Il y a une icône dans le menu qui ouvre une console. Elle vous proposera automatiquement de le faire. Sinon selectionnez update partition table.
Cette manipulation est importante car sans ça vous ne pourrez pas installer GRUB.
Installation
Rebootez sur votre CD Arch Linux en maintenant C au démarrage, et lancez une installation comme vous le faites sur n’importe quel système. N’oubliez pas d’installer Arch Linux sur votre partition (sda3), vous pouvez la passer en EXT4 et la monter en « / ».
Et important mettez GRUB sur /dev/sda3 et pas sda tout court et rajoutez à la ligne de boot dans le menu.lst « reboot=pci« .
Dans un prochain billet je détaillerai certaines parties de l’installation, notamment par rapport au clavier, au rétro-éclairage des touches, du wifi, de la carte son…
Et je tiens à m’excuser pour mon absence sur le blog ces derniers temps, mais bon j’avais besoin de m’éloigner un peu des ordinateurs :))
Posted on August 30, 2009 - by Jérôme M.
Serveur Debian Lenny – Les DNS
Ce guide a pour but de vous montrer comment configurer vos noms de domaines sur votre dédié. On utilisera donc Bind 9 sur une Debian Lenny. Vous avez, bien sur, besoin d’un nom de domaine. Vous pouvez en enregistrer un sur Gandi par exemple.
On commence par installer bind9 et les outils nécessaires :
apt-get install bind9 dnsutils
Ensuite on commence par éditer le fichier /etc/bind/named.conf.options :
options { directory "/var/cache/bind"; forwarders { 213.251.188.140; # Serveur DNS d'OVH, notre serveur secondaire (sdns1.ovh.net) }; auth-nxdomain no; # conform to RFC1035 listen-on-v6 { ::1; }; listen-on { any; }; allow-recursion { 127.0.0.1; 213.251.188.140;}; notify yes; };
On rajoute ensuite une nouvelle zone, dans ce tuto je vais prendre l’exemple de mon nom de domaine. Il faut créer le fichier /etc/bind/db.phollow.fr :
$ttl 86400 phollow.fr. IN SOA r24041.ovh.net. votre.adresse.mail.com. ( 2009052218 #un id unique qu'il faut changer après chaque modif du fichier, généralement la date 21600 3600 604800 86400 ) phollow.fr. IN NS r24041.ovh.net. # Mon serveur (qui fera le DNS primaire) phollow.fr. IN NS sdns1.ovh.net. # DNS secondaire phollow.fr. IN A 87.98.162.48 # l'IP de mon serveur en tant qu'alias www IN CNAME r24041.ovh.net. # pour www.phollow.fr mail IN CNAME r24041.ovh.net. # pour mail.phollow.fr etc.
Noter bien les points après chaque nom de domaine, ils sont importants.
Ensuite il faut rajouter cette zone dans le /etc/bind/named.conf :
include "/etc/bind/named.conf.options"; // prime the server with knowledge of the root servers zone "." { type hint; file "/etc/bind/db.root"; }; // be authoritative for the localhost forward and reverse zones, and for // broadcast zones as per RFC 1912 zone "localhost" { type master; file "/etc/bind/db.local"; }; zone "127.in-addr.arpa" { type master; file "/etc/bind/db.127"; }; zone "0.in-addr.arpa" { type master; file "/etc/bind/db.0"; }; zone "255.in-addr.arpa" { type master; file "/etc/bind/db.255"; }; zone "phollow.fr" { type master; file "/etc/bind/db.phollow.fr"; };
Après ça devrait être bon, vous pouvez vérifier la syntaxe de vos fichiers de configuration avec la commande :
named-checkconf -zSi il n’y a pas d’erreur, alors on redémarre le démon bind :
/ect/init.d/bind9 restart
Ensuite il reste seulement à indiquer à votre fournisseur de noms de domaine que les DNS primaires et secondaires sont respectivement r24041.ovh.net et sdns1.ovh.net (dans mon cas).
Posted on August 21, 2009 - by Jérôme M.
Comment activer la voix et la video sur Pidgin
Apparement vous êtes plusieurs à ne pas avoir réussi à utiliser la vidéo ou la voix sous Pidgin. Donc j’écris ce petit tuto pour vous montrer comment faire. Je vais essayer de rester le plus général possible, de manière à ce que ça fonctionne sur toutes les distribs Linux.
Compilation
En fait l’astuce c’est de compiler Pidgin avec les bonnes options et d’avoir les dépendances qui vont bien avec. Et pour ça nous avons besoin des dépendances. Voici ce qu’il vous faut :
- Farsight >= 2.0.0.9
- Libnice >= 0.0.7
- Libgstreamer-plugins-base0.10-dev
Bon je vous préviens les noms peuvent légèrement changer suivant les distros.
Maintenant téléchargez les sources de Pidgin.
tar xjvf pidgin-2.6.1.tar.bz2 cd pidgin-2.6.1 ./configure --prefix=/usr --enable-vv
Laisser faire le boulot, puis à la fin du configure regardez bien si vous avez ça : Build with voice and video…. yes
Si vous ne l’avez pas c’est qu’il vous manque une dépendance que Pidgin n’a pas trouvé. Si vous l’avez c’est cool on peut compiler tout ça !
make && sudo make install
Et voilà votre Pidgin supporte la voix et la vidéo pour le protocole XMPP.
Petit test..
Alors en fait pour tester j’ai ouvert le macbook avec gtalk dessus et j’ai mis la peluche devant. Ensuite sur pidgin j’ai configuré un compte Gmail/Gtalk, ajouté le contact peluche et lancé l’appel audio/vidéo.
Ca s’est mis à sonner sur le macbook, j’ai décroché et j’ai eu la caméra et le son de Linux. Et vice/versa. Ma cam a un rendu tout noir à cause du screenshot je sais pas pourquoi mais elle fonctionnait bien :) Sinon je vous parle même pas des effets Larsen avec les 2 ordis à coté :)))
Bref j’espère que maintenant c’est un peu plus clair pour vous. Si vous avez des questions, j’essairai d’y répondre.













