Posts tagged ‘gentoo’

Ceci est un petit mémo sur la méthode pour transférer des paquets sous linux avec iptables.

1. Autoriser votre ordinateur à transférer des packets

Vous devez activer dans un premier temps le transfert de paquets par votre ordinateur. En root, exécutez la commande suivante :

# sysctl net.ipv4.ip_forward=1

Si vous souhaitez que ce paramètre soit activé par défaut au démarrage de votre ordinateur, éditez le fichier /etc/sysctl.conf, qui sera utilisé au boot pour remettre les paramètres à jour.

2. Faire du NAT avec iptables (translation d’adresse)

Le NAT consiste à autoriser qu’un ordinateur utilise le votre comme passerelle vers internet. Par exemple, vous avez une clé 3G ou un accès simple à Internet : mettez-vous en réseau avec l’autre ordinateur (avec des IPs fixes, un câble réseau ou un wifi en ad-hoc). Ensuite, autorisez le NAT de la manière suivante (remplacez eth0 par l’interface de votre connexion Internet).

# iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

3. Forwarder des paquets

Pour forwarder les paquets qui arrivent sur un port vers un autre, utilisez iptables ! L’exemple suivant montre comment router les paquets UDP port 31234 vers une autre IP (on aurait aussi pu changer le port de destination pour en mettre un différent).

# iptables -t nat -A PREROUTING -p udp --dport 31234 -j DNAT --to 10.0.0.2:31234

Exemple d’utilisation : transférer des paquets RSTP (comme ceux de la TV Freebox) vers un autre ordinateur.

Manipuler des PDFs

Admettons que vous ayez deux fichiers PDF que vous souhaitiez regrouper en un seul fichier (par exemple les recto et verso de votre carte d’identité). Pour ce faire, voici un petit outil bien pratique : pdftk.

Bien que l’utilisation de ce programme est un peu compliquée, il n’en reste pas moins bien pratique !
$ pdftk recto.pdf verso.pdf cat output combine.pdf

Convertir des JPG en PDF

Je me suis mis à scanner ce matin un document, directement sur une clé USB (c’est plus pratique avec Linux que de commencer à chercher comment installer les drivers de scan ;) ). Je me suis récupéré, à ma grande surprise, des fichiers JPEG au lieu d’un PDF tant attendu !

Pas de soucis : avec convert de imagemagick, vous pouvez convertir chaque JPG en PDF :
$ for f in *.jpg; do echo Converting $f; convert $f $f.pdf; done

Ensuite, utilisez pdftk pour concaténer les fichiers PDF ainsi créés.

Installation des outils : les outils présentés ici sont disponibles dans la majorité des distributions (ubuntu, gentoo, …)

Note : la majorité des opérateurs de téléphonie mobile interdise dans leur forfait d’utiliser le mobile comme modem Internet.

Principe de fonctionnement

Le principe est simple : vous avez un ordinateur, et vous êtes en vacances (au ski, à la mer, …) et vous n’avez pas votre connexion ADSL. Vous avez un ordinateur, pratique à utiliser, qui n’a pas d’internet, et un téléphone mobile, un peu limité, mais qui peut se connecter. L’idée est donc d’utiliser la connexion internet du téléphone pour surfer sur son PC.

L’utilitaire de partage de connexion internet

Dans Windows Mobile, il y a une application nommée « Partage de connexion« . Dans cet utilitaire, vous choisissez la couche réseau à utiliser entre le téléphone et l’ordinateur, et la connexion à utiliser pour se connecter à internet. Afin d’éviter une configuration complexe du bluetooth, je conseille d’utiliser le cable de connexion USB fourni. Ca a aussi l’avantage de recharger le téléphone pendant cette utilisation.

Lorsque vous tapotez sur « Connecter », le téléphone se connecte à internet, et dans le cas de l’USB, il passe en mode « carte réseau USB ». Il prend une adresse IP (192.168.0.1 par défaut) et lance un serveur DHCP. Lorsque le PC va chercher à se connecter au téléphone, il va récupérer une IP (192.168.0.2), et aussi les DNS : aucune configuration manuelle des paramètres IP n’est nécessaire.

Note sur la carte réseau du PC : sous Windows, si vous avez installé le logiciel de synchronisation, vous devriez normalement avoir la carte réseau. Sous linux, il faut compiler le module rndis_host (Device Drivers => Network => Usb adaptaters => Multi-purpose USB networking framework => RNDIS host).

Accès au web

Pas si vite, malheureux ! Vous avez essayé de vous connecter avec Firefox ou IE et ça ne marche pas ? C’est normal ! Votre opérateur bloque sans doute les connexions internet qui ne sont pas identifiées comme « mobile ». Il suffit donc de leurrer votre opérateur en changeant le User-Agent. Pour ce faire, on peut par exemple utiliser le User-Agent switcher, extension Firefox. Il suffit de configurer un profil avec comme User-Agent celui de votre SPA : « SAMSUNG-SGH-i900/1.0 Opera 9.5″.

Problème du jour : je voulais faire développer des photos sur fnacphoto.com. Je me connecte, je choisis « Commande expresse » et là : il me faut un plugin java pour uploader mes photos. Le problème : je n’ai pas de plugin java avec mon Firefox…

Je vous propose donc 3 possibilités pour pouvoir faire tourner les applets java, pour uploader vos photos ;) :

Utiliser konqueror

L’avantage d’utiliser konqueror, c’est que ce dernier fait directement appel à la machine virtuelle java sans passer par un plugin. Il suffit donc juste d’avoir installé une Machine Virtuelle java. Pour installer la machine virtuelle de sun :

emerge sun-jdk

Utiliser Firefox en mode 32 bits

Autre possibilité (et c’est celle que j’ai utilisée), vous pouvez aller sur votre site avec un Firefox en 32 bits. Vous pouvez télécharger les versions binaires de firefox sur le ftp de mozilla. Téléchargez la version de firefox qui correspond à votre installation. Installez aussi une version 32 bits du plugin java pour Firefox :

USE="nsplugin" emerge emul-linux-x86-java

Sélectionnez le bon plugin java avec la commande eselect (tapez eselect java-nsplugin pour voir comment manipuler les différentes versions de java). Lancez enfin Firefox 32 bits, et le tour est joué.

Installer manuellement le plugin 64 bits

C’est sans aucun doute la meilleure façon de procéder, mais aussi la plus compliquée pour le néophite. Sun a sorti une version 64 bits du plugin pour Firefox.

Il suffit alors de télécharger cette version, et de l’exécuter (sh nomdufichier.bin). Je conseille de décompresser (ou de déplacer si c’est déjà fait) dans le répertoire /opt/.

Enfin, pour que le plugin soit reconnu par eselect, il faut un peu bidouiller dans le répertoire /usr/share/java-config-2.

Enregistrez le fichier sun-jre-1.6, puis en tant que root, copier-le vers le répertoire /usr/share/java-config-2/vm. Faites ensuite un lien symbolique du plugin vers le dossier /usr/share/java-config-2/system/

cp sun-jre-1.6 /usr/share/java-config-2/vm
ln -s /opt/sun-jre-1.6.0.12/lib/amd64/libnpjp2 \
  /usr/share/java-config-2/nsplugin

Vérifiez alors que le plugin est bien installé en tapant about:plugins dans Firefox.