Dat « Jeu de mot » :p

Bref, de nouveau moi! Et cette fois-ci avec une super technique de la mort qui tue pour pas se faire capter lorsqu’on télécharge des choses toute à fait légales comme Debian NetInstall par exemple 🙂

J’ai nommé le SSH Tunneling.

Déjà je remercie M4T pour m’avoir rapellé comment cela marchait ;). Ensuite je préviens que cette version est pour les semi-kikoo, c’est à dire pour les utilisateurs de Windows (Oui, si Windows sont les semi-kikoo, par abstraction qui sont les autres? Mystère 🙂 ).

En effet, pour cela nous allons utiliser le plus simple des programmes de SSH mais aussi le plus compet, j’ai nommé PuTTY. Pour ce petit tuto, il nous faudra:

– Un navigateur dédié à ça, c’est mieux 🙂 (Evitez IE de préférence car il a la facheuse tendance de foutre sa configuration par défaut pour tout le système.)

-Un serveur (hors France de préférence 😉 Ca serait balot de se faire cafter par Had**i :p )

– PuTTY, le bien nommé

– OpenSSH installé sur ce serveur.

Donc pour ma part, j’utilise un VPS Debian en France (Oui je sais, mais ya une bonne raison caché derrière cela 🙂 ), Waterfox (FF 64 bits) et un Windows 7 normal :p

C’est parti!

0. Je vous explique pas comment installer OpenSSH ni Waterfox. Rapellez-vous, vous n’êtes que des semi-kikoo :p Votre Grand amis est là 😉

1. Téléchargez PuTTY : http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe

2. Lancez le et entrez l’adresse de votre VPS. Mettez lui un nom puis cliquez sur Save

tutossh1-1024x622

tutossh2

3. Ensuite, dans le menu à gauche, allez dans Connection > SSH> Tunnel

4. Mettez un numéro de port dans « Source Port », cochez « Dynamic » et cliquez sur « Add »

tutossh3

5. Revenez sur Session (tout en haut du menu), cliquez sur « Save », puis « Open ». Acceptez le certificat et vous y voila! Loggez-vous avec un utilisateur qui peut utiliser le net sur le serveur (root par exemple même si c’est pas une bonne idée ^^ )

tutossh4

6. Dans votre navigateur, ici WaterFox, allez à l’endroit ou se situe les options réseaux et mettez vos infos dans le champ proxy

tutossh5

7. Un petit coup de showip.net et hop vous pouvez être sur que cela fonctionne.

Note: Il faut garder PuTTY ouvert tout le long de l’opération 🙂

Voilà, c’est bon! 🙂 Par contre, si j’ai uniquement mentionné le téléchargement, les tunnels SSH ne servent pas qu’à ça: Ils protègent les données qui transitent à l’intérieur. Ceux qui regarderaient par hasard votre connexion y verraient une connexion vers quelque part, un flux de donnée, une « masse » de donnée, mais en aucun cas le contenu. Cela veut dire que cela peut être aussi bien le dernier film de vacance de Mamie Tromblon ou encore le code source super secret de Curiosity.

Vos données sont protégées, du moins, pour le moment…. 🙂

Phoenix

Premier billet de ma part! Ça se fête!

Entrons dans le vif du sujet de suite sinon M4T va me frapper ^^

Prenons un exemple banal: vous êtes en voyage très loin de chez vous (comme c’est le cas pour moi en ce moment) ou votre serveur est dans un datacenter loin, très loin…

Et que l’envie de réinstaller une Debian est pressant! Maintenant que le décor est planté, amenons les acteurs.

Prenons le cas des serveurs loué (Kimsufi,…): ils ont souvent un interface de gestion externe qui permet de les  redémarrer, de réinstaller le système, etc etc. Cependant, ces systèmes sont souvent customisé de façon étrange par les fournisseurs de l’infrastructure. Et parfois il n’y a pas Debian mais CentOS ou Suse. Et vu que perso, je préfère Debian, ca m’arrange pas.

Dans le cas d’un serveur dans votre cave, sous votre lit, peu importe, si vous n’êtes pas là et que vous voulez chipoter ou faire d’autre choses plus intéressantes, il peut être fastidieux de demander à votre moitié, soeur, frère ou tout autre membre de la famille de faire ça pour vous (Ca devient très cher le téléphone quand on doit expliquer que c’est pas grave si il n’y a pas de souris sur le pc 🙂 )

La solution que je vais vous proposer est une solution pour Debian, mais elle devrait fonctionner avec plusieurs autres distribution (sans compter évidemment les Forks de Debian). Novell à eu la bonne idée de l’implanter de base dans la netinstall de Suse.

Il s’agit simplement de lancer une Netinstall de tout ce qui a de plus classique, à la nuance près que celle-ci active automatiquement le ssh dès le départ, pour pouvoir avoir une installation Interactive (qui est toujours plus sympathique que de se farcir la construction du fichier preseed.cfg complet). Si ça c’est pas la classe 🙂

Donc, commençons notre petite manipulation.

Première chose, c’est sous Linux que notre petit manège doit se faire (avec Windows c’est pas vraiment top, a moins d’avoir une licence Pro de Daemon Tools evidemment) et il faut absolument que le module du kernel iso9660 soit activé (sinon, ca marche pas). Ça peut sembler débile comme remarque ccar ce module est souvent activé de base, mais on kikoololise son kernel pour un netbook en se disant « Yen a pas besoin, ya pas de lecteur cd », on patauge pendant 30 minutes sans comprendre :D. Dernière chose, il faut que ce serveur recoive des données DHCP pour que ça fonctionne.

Donc premièrement, on télécharge une version netinstall de Debian

wget http://mirrors.kernel.org/debian-cd/5.0.3/i386/iso-cd/debian-503-i386-netinst.iso

Ensuite, on monte l’iso dans un dossier, isobak par exemple

mkdir isobak

mount -o loop -t iso9660 debian-503-i386-netinst.iso isobak

Créons ensuite un dossier pour acceuillir notre version et copions le contenu de l’iso dedans (avec Rsync parce que c’est plus classe que cp  :p)

mkdir isocustom

rsync -a -H -exclude=TRANS.TBL isobak/ isocustom

Changeons le menu de boot pour le custom et demander d’utiliser pressed.cfg

cd isocustom

nano isolinux/txt.cfg

Modifions un peu tout ça… A la fin ça devrait ressembler à ça (avec clavier belge et tout 🙂 )

default netinstall

label netinstall

menu label ^Install Over SSH

menu default

kernel /install.386/vmlinuz

append auto=true vga=normal file=/cdrom/preseed.cfg initrd=/install.386/initrd.gz locale=fr_FR console-keymaps-at/keymap=be

le dernier bloc est à mettre sur une ligne (foutu wordpress 🙂 )

Ensuite, il faut qu’on change quelque Timeout, sinon c’est pas automatique !

dans les fichiers

isolinux/isolinux.cfg

isolinux/prompt.cfg

changez le timeout et faite le passer de 0 à 5 par exemple. Cela permettra d’activer le timeout et donc de sélectioner « Install Over SSH » par défaut.

Ensuite on s’attaque à gros: le fichier preseed.cfg . Mais ce sera une version light, juste de quoi activer le SSH.

nano preseed.cfg

Ensuite, placez ce texte dedans.

#### Fichier de préconfiguration

### Langue et clavier

# Langue et pays ( Francais, France)

d-i debian-installer/locale select fr_FR

# Clavier Belge

d-i console-keymaps-at/keymap select be

### Configuration réseau

# netcfg va choisir une interface par défaut. Ca passera si il y a # une liste qui s’affiche

d-i netcfg/choose_interface select auto

# Normalement le DHCP fournit toutes les données nécessaires, mais pour être sur, mettons ça pour éviter qu’il demande et bloque le systeme.

d-i netcfg/get_hostname string debian

d-i netcfg/get_domain string local

# Désactive les alerte WEP (si votre serveur à une carte Wifi)

d-i netcfg/wireless_wep string

# A décommenter si l’ISP demande un mot de passe pour son DHCP (bidon mais sait-on jamais)

#d-i netcfg/dhcp_hostname string mdp

#Lance les commande dès l’accès aux fichiers

d-i preseed/early_command string anna-install network-console

# Met le mot de passe ssh (ici « installer »)

d-i network-console/password password installer

d-i network-console/password-again password installer

Voilà, vous pouvez sauver le fichier preseed.cfg 🙂

Une fois que tout cela est fini, refaisons le petit MD5 pour qu’il gueule pas

md5sum `find -follow -type f` > md5sum.txt

Une fois tout ça fini, recréons notre image iso custom 🙂

mkisofs -o ../debian503_ssh_netinstall.iso -r -J -no-emul-boot -boot-load-size 4 -boot-info-table -b isolinux/isolinux.bin -c isolinux/boot.cat ../isocustom

(Toujours en une fois , foutu wordpress xD)

Et voilà l’image elle est toute jolie. Je vous conseille de la tester sous virtualbox (ou autre) avant de tenter, sait-on jamais, il se peut que quelque chose ait foiré ^^ L’user SSH est « installer » et le mdp est le meme (si vous l’avez pas changé 😉 )

SI vous avez réussi a faire ça, vous devrez être capable de demander à grub de booter sur l’iso 😉 Sinon google est votre pote 🙂

A peluche!

Phoenix