Configure your Dedibox
Article Author(s): Audric Thevenet
All Rights Reserved.
Contents |
Préambule
Introduction
Pour ceux qui ignorent ce qu'est une dedibox, vous pouvez jeter un oeil ici: http://www.dedibox.fr/. Ce guide s'applique à n'importe quelle dedibox, mais il est écrit sur la moins chère donc çà devrait bien se passer sur toutes. L'idée est d'installer un linux (ici Debian) sécurisé avec pour seul logiciel: VMware server. Ce VMware serveur chargera à la volée autant de machines virtuelles que votre dedibox le permet. Vous pourrez ainsi avoir simultanément accès à un linux et un windows tournant dans 2 environnements virtuels. Chacun étant très facilement sauvegardable car ca se résume à faire 1 copie d'un répertoire contenant les 2 ou 3 fichiers de votre machine virtuelle.
Petite info additionnelle, il faut à peu près 40s à votre dedibox pour redémarrer et être pingable et 35s de plus pour pouvoir votre connecter en SSH.
Conventions
Au cours de ce guide, je vais employer des noms d'utilisateur, des mots de passe, des adresses IP, des noms de domaine qui seront des exemples. Ils sont à remplacer par les votres propres. Afin de les repérer plus facilement je vais les écrire en vert.
- rootpass : le mot de passe du compte administrateur (root) de votre linux, choisissez très compliqué (minuscules, majuscules, chiffres et caractères spéciaux)
- dedilogin : votre nom d'utilisateur de votre compte de base
- dedipass : votre mot de passe personnel, idem ci-dessus, choisissez le compliqué
- sd-12345 : l'identifiant de votre dedibox (vous sera donné suite à l'achat)
- mondomaine.com : le nom de domaine que vous aurez acheté pour votre dedibox
- 12.34.56.78 : votre propre adresse ip (aller ici pour la connaitre)
- 12.34.0.0/16 : votre range d'ip, changer ici les 2 premiers nombres par les 2 premiers de votre adresse ip
- 88.191.12.34 : l'adresse ip de votre dedibox
- 98.76.54.32 : adresse ip d'un proxy firewall permettant le passage du traffic HTTPS (port 443) (genre votre ip quand vous surfez du boulot)
- 192.168.33.11 : adresse ip statique (prendre un 4ème nombre entre 3 et 127, 128 à 254 étant réservés au DHCP) que nous configurerons pour la carte réseau virtuelle eth0 de votre VM dans le réseau virtuel
- 10022 : le nouveau port SSHD de votre dedibox (de base c'est 22, choisissez en un autre pour rendre les attaques plus difficiles)
- 10902 : votre port en local pour l'export du display via le tunnel SSH afin de vous connecter à VMware qui tourne à distance sur le port 902 de base (mais pas autorisé dans le firewall)
- 18333 : votre port en local pour le tunnel SSH afin de vous connecter à VMware qui tourne à distance sur le port 8333 de base (mais pas autorisé dans le firewall)
- 20021 : port ouvert sur l'hote pour les requetes FTP qui seront redirigées vers le port 21 de votre VM (pour faire directement du FTP de l'extérieur, mais pas sur le port de base pour moins se faire attaquer, quoi qu'il en soit la plupart des ips seront interdites en FTP)
- 20022 : port ouvert sur l'hote pour les requetes SSH qui seront redirigées vers le port 22 de votre VM (pour faire directement du SSH de l'extérieur, mais pas sur le port de base pour moins se faire attaquer, quoi qu'il en soit la plupart des ips seront interdites en SSH)
- 23690 : port ouvert sur l'hote pour les requetes SVN qui seront redirigées vers le port 3690 de votre VM (pour faire directement du SVN de l'extérieur, mais pas sur le port de base pour moins se faire attaquer)
- 50000 : début du range des ports ouverts pour les connexions FTP PASV, ces ports seront les mêmes dans l'hôte et la VM
- 52000 : fin du range des ports ouverts pour les connexions FTP PASV, ces ports seront les mêmes dans l'hôte et la VM
Outils Nécessaires côté client (chez vous)
PuttyTray
- Fonction: permet de se connecter via plusieurs protocoles réseau dont SSH ici à un serveur distant. Votre dedibox tournant sous linux a de base un serveur SSHD (SSH Daemon) qui tourne acceptant les connexions de ce genre de programmes, c'est grâce à cet outil que vous pourrez prendre le controle et configurer votre dedibox en mode texte.
- Téléchargement: http://haanstra.eu/putty/ (environ 400ko)
- Instructions: Lancer l'executable directement, çà ne s'installe pas
WinScp
- Fonction: permet de transferer des fichiers via le protocle SSH, comme avec un client FTP:
- Téléchargement: http://winscp.net/eng/download.php (environ 1.3Mo)
- Instructions: Télécharger la version portable, et la lancer direct, çà marche tel quel
VMware Infrastructure Client
- Fonction: permet de piloter à distance la création et l'utilisation des machines virtuelles qui tournerons sur votre dedibox
- Téléchargement: une fois votre VMware server installé, vous pourrez taper la commande suivante:
locate VMware-viclient.exe
Ca vous dira où aller le télécharger avec WinSCP sur mondomaine.com, port 10022, en temps que dedilogin/dedipass, donc probablement:
/usr/lib/vmware/hostd/docroot/client/VMware-viclient.exe
- Instructions: Lancer l'executable de la console contenu dans le zip afin de l'installer
Configuration Extérieure
Prendre votre abonnement Dedibox
- Allez ici: http://www.dedibox.fr/, remplissez les formulaires et prenez votre abonnement mensuel, ...
- Prenez la version la plus puissante disponible en fonction de votre budget même si çà nécessite 1 ou 2 semaines d'attente, çà vaut le coup.
- Vous devriez recevoir un email vous disant quand tout est ok, avec les identifiants de connexion choisis pour vous connecter sur la page d'administration: http://console.dedibox.fr/
Acheter un nom de domaine
- Si ce n'est déjà fait, la manière la plus simple est de l'acheter chez Gandi: http://www.gandi.net/
- Acheter mondomaine.com
- Configurez dans Gandi les DNS à la main en mettant ceux de dedibox:
- ns1.dedibox.fr (88.191.254.8)
- ns2.dedibox.fr (88.191.254.9)
- Attendre à peu près 24h pour que les DNS dedibox recoivent l'autorisation de Gandi pour gérer votre domaine.
Configurer votre nom de domaine
- Aller dans la page de configuration des domaines dedibox: https://console.dedibox.fr/domaines/.
- Dans Ajout de noms de domaines mettre votre nom de domaine sans préfixe: mondomaine.com puis Ajouter
- Votre domaine apparait alors en dessous dans Administration des noms de domaines, cliquer sur Gestion
- Il est possible que vous ayiez un message d'erreur si Gandi n'a pas encore transmis les droits, une fois que c'est bon continuez
- Dans Administration des zones de type A, nous allons utiliser la première ligne avec un seul A et ajouter les 2 lignes suivantes:
- Sous domaine: (ne rien mettre), Adresse IP: 88.191.12.34, puis faire Ajouter
- Sous domaine: *, Adresse IP: 88.191.12.34, puis faire Ajouter
- Attendre 24h au maximum (les mises à jour se font je crois à 2h45 du matin)
- Essayez de pinger votre machine: ping mondomaine.com, çà devrait vous envoyer sur 88.191.12.34
- Remarque la configuration précédente fait que n'importe quel préfixe à l'adresse mondomaine.com enverra sur l'ip de votre dedibox, par exemple coucou.mondomaine.com
Activation des 5Go de backup gratuits
- Aller dans la liste de vos dedibox: https://console.dedibox.fr/liste/
- Choisir la votre, et faire Configurer
- Aller dans l'onglet Sauvegarde à gauche
- Choisir les 5go gratuits puis cliquer sur Valider
- Une fois activée, l'option vous a créé un espace de 5Go pour sauvegarder ce que vous voulez sur le serveur de backup de dedibox, on y accède ainsi:
- adresse FTP : dedibackup.dedibox.fr
- login : sd-12345
- pass: votre mot de passe paramétré
- Retournez ensuite paramétrer cet espace de sauvegarde pour lui activer l'auto login si ce n'est déjà fait. Celà permettra depuis votre dedibox de vous y connecter avec le login auto et sans mot de passe. Vous serez alors authentifié par votre adresse ip + adresse mac. Vous éviterez ainsi de transférer vos mots de passe de clair sur le réseau interne dedibox.
- Il ne vous restera plus qu'à créer vos scripts pour uploader via FTP ce que vous voulez sauvegarder dans cet espace de stockage
- Vous pouvez à tout moment changer le mot de passe dans la console de gestion.
- Plus d'informations ici.
Dedibox
Le mode rescue
Passage en mode rescue
Au cours de vote configuration il vous arrivera peut etre de vous retrouver dans une situation où vous n'avez plus accès à votre dedibox. Si çà arrive, allez dans la liste de vos dedibox: https://console.dedibox.fr/liste/
- Choisir la votre, et faire Configurer
- Aller dans l'onglet Système de secours à gauche
- Faire Cliquez ici pour lancer le système de secours sur votre dedibox. et laisser le temps à la dedibox de redémarrer.
Réparation des problèmes
- Se connecter sur le port SSH 22 avec puttytray avec l'utilisateur et le mot de passe temporaires fournis par le site web de la console dedibox
- Monter le filesystem de votre dedibox dans le mode rescue:
sudo mkdir /mnt/dedibox
- taper votre pass généré par le site
sudo mount /dev/sda2 /mnt/dedibox sudo mount /dev/sda1 /mnt/dedibox/boot cd /mnt/dedibox
- Vous êtes a présent sur le disque dur de votre dedibox, corrigez les problèmes (éditez les fichiers voulus, ...) puis déconnectez-vous.
Retour à la normale
- Faire enfin Cliquer ici pour repasser votre serveur en mode normal sur le site
- Attendre que la dedibox redémarre
- Reconnectez vous en mode normal sur le port SSH choisi (exemple: 10022) avec votre compte dedilogin.
Installation de Linux Debian
Installation standard via la console web
- Aller dans la liste de vos dedibox: https://console.dedibox.fr/liste/
- Choisir la votre, et faire Configurer
- Aller dans l'onglet Installation de la dedibox à gauche
- Choisir le type de distribution Serveur
- Choisir une Debian et sélection l'iso 32bits (pour une compatibilité plus simple) puis faire Etape suivante
- Les partitions sont bien par défaut, faire Etape suivante
- Choisissez vos paramètres
- mot de passe root: rootpass (choisissez quelque chose de bien plus compliqué)
- nom d'utilisateur: dedilogin
- mot de passe utilisateur: dedipass
- Décocher Autoriser un technicien dedibox à se connecter à ma dedibox en cas de besoin
- Valider
- Attendre que çà s'installe, c'est prêt!
Création des connexions dans Puttytray
- Lancer puttytray et créer une nouvelle connexion standard via SSH:
- dans Sessions:
- Host Name: mondomaine.com
- Port: 10022
- Saved Sessions: dedibox
- dans Connections/Data:
- Auto-login username: dedilogin
- dans Window/Translation:
- Received data assumed to be in which character set: ISO-8859-15:1999 (Latin-9, "euro")
- dans Sessions:
- Faire Save
- Toujours dans Sessions:
- Port: 22
- Saved Sessions: dedibox rescue
- Faire Save
- dans Window/Translation:
- Received data assumed to be in which character set: UTF-8
- dans Sessions:
- Port: 20022
- Saved Sessions: dedibox vm debian
- Faire Save
- dans Sessions:
- Vous avez maintenant 3 sessions pre-enregistrées qui nous permettrons via un simple double clic de nous connecter soit sur le SSH normal sur le port 10022, soit en mode rescue sur le port 22 (utiliser cette connexion au début temps que le port de SSHD n'a pas été changé), soit à votre future VM debian sur le port 20022.
Paramétrage
Se connecter en root à votre dedibox (via puttytray)
Protection initiale
Les dedibox et autres serveurs dédiés sont les cibles privilégiées des hackers qui s'en servent de machines relais. Il est donc impératif avant toute chose de sécuriser votre dedibox un minimum pour être tranquille pour la suite.
SSHD
- Nous allons empêcher le login distant avec root, si vous n'avez pas d'utilisateur standard (dedilogin ici) c'est le moment de le créer.
- Première chose urgente, la configuration de SSHD (SSH Daemon). Editez le fichier suivant:
nano /etc/ssh/sshd_config
- Changer le port d'origine 22 par un autre afin de rendre plus difficiles les attaques en remplacant la ligne
Port 22
par celle-ci:
Port 10022
- Ensuite, interdire à root de se connecter via SSH en changeant la ligne
PermitRootLogin yes
par celle-là:
PermitRootLogin no
- Pour vous reconnecter sur votre dedibox, il faudra donc le faire avec votre utilisateur standard dedilogin, puis passer root via la commande:
su -
- Appliquons les changements:
invoke-rc.d ssh reload
- Déconnectez vous, et tentez de vous reconnecter sur le port 22. Si çà n'échoue pas, assurez vous d'avoir bien suivi les instructions. Si çà échoue essayez sur le port 10022, çà devrait fonctionner. Tenter d'abord en root, çà devrait échouer, puis avec votre utilisateur dedilogin qui lui devrait passer. Enchainez avec le:
su -
puis taper votre mot de passe rootpass afin de passer root à nouveau et continuons la configuration de la dedibox.
FireWall Iptables
Iptables est le firewall natif sur votre linux debian. Configurons le afin de couper court à 99.99% des attaques.
- Créons un fichier configurant nos règles qui sera lancé avant chaque démarrage de l'interface réseau:
nano /etc/network/if-pre-up.d/iptables-start
le remplir avec ceci (bien penser à mettre votre propre port SSH) et n'oubliez pas de remplacer les éléments verts:
#!/bin/sh # /etc/network/if-pre-up.d/iptables-start : script qui demarre les regles de filtrage "iptables" # REMISE A ZERO DES REGLES iptables -F iptables -t nat -F # POLITIQUES PAR DEFAUT # Connexions entrantes : bloquees iptables -P INPUT DROP # Connexions a forwarder et sortantes : acceptees iptables -P FORWARD ACCEPT iptables -P OUTPUT ACCEPT # REGLES DE FILTRAGE # Interface de loopback, protocole ICMP (ping), protocole IGMP (multicast) iptables -A INPUT -i lo -j ACCEPT iptables -A INPUT -p icmp -j ACCEPT iptables -A INPUT -p igmp -j ACCEPT # Packets entrants relatifs a des connexions deja etablies iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT # SSH iptables -A INPUT --source 12.34.0.0/16 -p tcp --dport 10022 -j ACCEPT # Rejet des autres paquets iptables -A INPUT -j REJECT # REGLES DE PARTAGE DE CONNEXION (NAT) # Agir comme serveur NAT et forwarder les paquets de l'interface connectee au net (ici eth0) a la cible (ici vmnet1) iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE iptables -A FORWARD -i eth0 -o vmnet1 -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A FORWARD -i vmnet1 -o eth0 -j ACCEPT # REGLES DE PORT FORWARDING # Proxified SSH (depuis une machine 98.76.54.32 derrière un proxy acceptant le port 443) #iptables -t nat -A PREROUTING -i eth0 -s 98.76.54.32 -p tcp --dport 443 -j DNAT --to-destination 192.168.33.11:22 # SSH iptables -t nat -A PREROUTING -i eth0 -s 12.34.0.0/16 -p tcp --dport 20022 -j DNAT --to-destination 192.168.33.11:22 # FTP (connexion, data en mode actif, data en mode passif) iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 20021 -j DNAT --to-destination 192.168.33.11:21 iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 20 -j DNAT --to-destination 192.168.33.11 iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 50000:52000 -j DNAT --to-destination 192.168.33.11 # HTTP, HTTPS iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-destination 192.168.33.11:80 iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 443 -j DNAT --to-destination 192.168.33.11:443 # TeamSpeak iptables -t nat -A PREROUTING -i eth0 -p udp --dport 9987 -j DNAT --to-destination 192.168.33.11:9987 #Virtual Voice iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 10011 -j DNAT --to-destination 192.168.33.11:10011 #Server Query iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 30033 -j DNAT --to-destination 192.168.33.11:30033 #File Transfers # SVN iptables -t nat -A PREROUTING -i eth0 -s 12.34.0.0/16 -p tcp --dport 23690 -j DNAT --to-destination 192.168.33.11:3690
- Maintenant, faisons de même un fichier qui sera executé lorsque l'interface réseau est arrêtée (au shutdown par exemple)
nano /etc/network/if-post-down.d/iptables-stop
le remplir avec ceci:
#!/bin/sh # /etc/network/if-post-down.d/iptables-stop # Script qui arrete le filtrage "iptables" # REMISE A ZERO des regles de filtrage iptables -F iptables -t nat -F # REMISE de toutes les politiques par defaut a ACCEPT iptables -P INPUT ACCEPT iptables -P FORWARD ACCEPT iptables -P OUTPUT ACCEPT
- Changeons les droits des 2 scripts afin qu'ils puissent être exécutés:
chmod 700 /etc/network/if-pre-up.d/iptables-start chmod 700 /etc/network/if-post-down.d/iptables-stop
- On applique les changements en redémarrant la box. Ceci va couper votre connexion, il faudra reconnecter puttytray:
shutdown -r now
- Après redémarrage vous verrez que vos règles ont bien été appliquées via les commandes suivantes:
iptables -v -L iptables -v -L -t nat
- Pour plus d'infos sur les règles et mieux comprendre:
man iptables
Mise à jour
Bon je ne vais pas y aller par 4 chemins mais la debian de base c'est un truc tout vieux qui a 2 ans. Au bûcher les antiquités, on va passer sur un truc bien plus à jour.
La distribution
- Go unstable! Changeons pour celà l'endroit où chercher les logiciels:
nano /etc/apt/sources.list
- Remplacer le contenu par:
# LISTE DES ENDROITS OU CHERCHER VOS LOGICIELS deb http://ftp.fr.debian.org/debian/ unstable main contrib non-free
- On enregistre çà Control+X, o et entrée. C'est parti pour la mise à jour:
apt-get update apt-get dist-upgrade
- Répondre y aux questions et Ok aux menus en mode texte partout.
Le noyau (kernel)
- Une fois fini, c'est parti pour une petite mise à jour à nouveau (on sait jamais), puis regardons la liste des noyaux disponibles:
apt-get update apt-get install linux-image
- Dans notre cas, installons la dernière version 686 (processeur intel, prendre selon votre processeur):
apt-get install linux-image-2.6.26-1-686
- Faire la commande suivante pour voir les noms de fichier de tous vos noyaux (kernels):
ls -al /boot/vm*
- Noter celui qui correspond au dernier noyau qu'on vient de télécharger et installer, puis éditer ensuite le fichier du gestionnaire de démarrage (GRUB):
nano /boot/grub/menu.lst
aller à la fin du fichier, vous verrez 2 blocs (le premier est votre noyau actuel, le second celui du mode rescue)
title Debian v4.0r2, vmlinuz-2.6.25.4dedibox-r9-smp-x32 root (hd0,0) kernel /vmlinuz-2.6.25.4dedibox-r9-smp-x32 root=/dev/sda2 ro quiet splash quiet title Debian v4.0r2, vmlinuz-2.6.25.4dedibox-r9-smp-x32 (recovery mode) root (hd0,0) kernel /vmlinuz-2.6.25.4dedibox-r9-smp-x32 root=/dev/sda2 ro single
- Ajouter juste en dessous le nouveau noyau en inscrivant bien le nom du fichier vu précédemment sur les lignes kernel et initrd (title on s'en fout c'est juste un titre):
title Debian v4.0u, vmlinuz-2.6.26-1-686 root (hd0,0) kernel /vmlinuz-2.6.26-1-686 root=/dev/sda2 ro quiet splash initrd /initrd.img-2.6.26-1-686
- Remonter en haut du fichier, et chercher la ligne:
default 0
pour la remplacer par:
default 2
- On enregistre Control+X, o et entrée.
- Ceci indiquera à linux de booter sur le 3ème (0, 1, 2) bloc par défaut, donc notre nouveau noyau (kernel). On redémarre:
shutdown -r now
et on voit si on arrive à se reconnecter, sinon rescue mode pour remettre default à 0 et regarder ce qui ne va pas.
- Si tout s'est bien passé, reconnectez vous et la commande suivante devrait vous confirmer que vote nouveau noyau est en place:
uname -a
en affichant quelque chose du genre:
Linux sd-16822 2.6.26-1-686 #1 SMP Sat Oct 18 16:22:25 UTC 2008 i686 GNU/Linux
Heure
- Sélectionner le bon fuseau horaire:
tzselect
puis répondre 8 puis 15 puis 1 afin de sélectionner Europe puis France.
- Visualiser la date et l'heure, rien de plus simple:
date
- Régler heure et date avec la commande date. Le format est le suivant MMJJhhmmYYYY, donc par exemple pour le 05 juin 2009 à 11h22:
date 060511222009
puis entrée à l'instant où on désire appliquer cette valeur.
Sécurité
- Retirer ces services inutiles:
apt-get remove ppp portmap update-rc.d -f inetd remove update-rc.d -f ppp remove update-rc.d -f atd remove
- Editer le fichier suivant:
nano /etc/sysctl.conf
pour vous prémunir des attaques de base en remplacant tout son contenu par:
# # /etc/sysctl.conf - Configuration file for setting system variables # See sysctl.conf (5) for information. # #kernel.domainname = example.com # Uncomment the following to stop low-level messages on console #kernel.printk = 4 4 1 7 ##############################################################3 # Functions previously found in netbase # # Uncomment the next two lines to enable Spoof protection (reverse-pa$ # Turn on Source Address Verification in all interfaces to # prevent some spoofing attacks #net.ipv4.conf.default.rp_filter=1 net.ipv4.conf.all.rp_filter = 1 # Uncomment the next line to enable TCP/IP SYN cookies net.ipv4.tcp_syncookies = 1 # Uncomment the next line to enable packet forwarding for IPv4 net.ipv4.ip_forward = 1 # Uncomment the next line to enable packet forwarding for IPv6 #net.ipv6.conf.all.forwarding=1 ################################################################### # Additional settings - these settings can improve the network # security of the host and prevent against some network attacks # including spoofing attacks and man in the middle attacks through # redirection. Some network environments, however, require that these # settings are disabled so review and enable them as needed. # # Ignore ICMP broadcasts net.ipv4.icmp_echo_ignore_broadcasts = 1 # # Ignore bogus ICMP errors net.ipv4.icmp_ignore_bogus_error_responses = 1 # # Do not accept ICMP redirects (prevent MITM attacks) net.ipv4.conf.all.accept_redirects = 0 net.ipv6.conf.all.accept_redirects = 0 # _or_ # Accept ICMP redirects only for gateways listed in our default # gateway list (enabled by default) net.ipv4.conf.all.secure_redirects = 0 # # Do not send ICMP redirects (we are not a router) #net.ipv4.conf.all.send_redirects = 0 # # Do not accept IP source route packets (we are not a router) #net.ipv4.conf.all.accept_source_route = 0 #net.ipv6.conf.all.accept_source_route = 0 # # Log Martian Packets net.ipv4.conf.all.log_martians = 1 # # The contents of /proc/<pid>/maps and smaps files are only visible t$ # readers that are allowed to ptrace() the process # sys.kernel.maps_protect = 1 # # Log an Error Rules net.ipv4.tcp_max_syn_backlog = 1024 net.ipv4.icmp_ignore_bogus_error_responses = 1
- On enregistre Control+X, o et entrée.
- Désactiver maintenant les consoles inutiles pour gagner un peu de mémoire:
nano /etc/inittab
et modifier les lignes suivantes ainsi (en rajoutant # pour les TTY > 1):
1:2345:respawn:/sbin/getty 38400 tty1 #2:23:respawn:/sbin/getty 38400 tty2 #3:23:respawn:/sbin/getty 38400 tty3 #4:23:respawn:/sbin/getty 38400 tty4 #5:23:respawn:/sbin/getty 38400 tty5 #6:23:respawn:/sbin/getty 38400 tty6
- On enregistre Control+X, o et entrée.
Les couleurs
Shell Bash
- Aller dans le répertoire personnel de root et éditer le fichier contenant les alias du compte root:
nano /root/.bashrc
- Retirer les # de commentaires pour obtenir le fichier suivant:
# ~/.bashrc: executed by bash(1) for non-login shells. export PS1='\h:\w\$ ' umask 022 # You may uncomment the following lines if you want `ls' to be colorized: export LS_OPTIONS='--color=auto' eval "`dircolors`" alias ls='ls $LS_OPTIONS' alias ll='ls $LS_OPTIONS -l' alias l='ls $LS_OPTIONS -lA' # Some more alias to avoid making mistakes: alias rm='rm -i' alias cp='cp -i' alias mv='mv -i'
- Enregistrer en faisant Control+X, o et entrée. Recharger le fichier en faisant:
source /root/.bashrc
- Vérifier que ca a fonctionné en tentant un petit:
l
- De même pour les utilisateurs:
nano /etc/skel/.bashrc
décommentez les lignes adéquates dans les alias pour obtenir quelque chose du genre, en changeant certains alias si çà vous chante:
# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
eval "`dircolors -b`"
alias ls='ls --color=auto'
alias dir='dir --color=auto'
alias vdir='vdir --color=auto'
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
fi
# some more ls aliases
alias ll='ls -l'
alias la='ls -A'
alias l='ls -CF'
- Enregistrer en faisant Control+X, o et entrée.
- Propager ceci à votre utilisateur bien aimé dedilogin
cp -f /etc/skel/.bashrc /home/dedilogin/
Pages d'aide (man)
- Installons un petit programme qui sait afficher les pages d'aides (man) en les coloriant:
apt-get install most
- Configurons à présent man pour qu'il utilise le pager most:
update-alternatives --config pager
- Choisir le numéro de most (5 par exemple) et valider avec entrée. Tester le résultat (espace pour faire défiler un man, q pour quitter):
man man
VMware Server
Installation 2.0
- Regarder quelle est la version de GCC utilisée pour compiler votre noyau:
uname -a
- Installer quelques packages nécessaires par la suite:
apt-get install build-essential psmisc gcc-4.1
- Récupérons les headers du noyau, rétrogradons temporairement GCC pour matcher la version qui a compilé le noyau (ici la 4.1.3):
apt-get install linux-headers-`uname -r` ln -fs /usr/bin/gcc-4.1 /usr/bin/gcc cd /tmp
- Télécharger VMware via elinks, s'autentifier avec un login/pass sur le site puis prendre le tar de VMware 2 pour linux:
apt-get install elinks elinks https://www.vmware.com/freedownload/p/download.php?product=server20
- Ou si vous avez un lien direct, c'est encore mieux, vous pouvez aussi faire:
wget http://lelienquevousavez/VMware-server-2.0.0-122956.i386.tar.gz
- Le décompresser et lancer l'installation:
tar zxvf VMware-server-2.0.0-122956.i386.tar.gz cd vmware-server-distrib ./vmware-install.pl
- Valider toutes les réponses avec entrée, faire défiler la license avec q puis y, et entrée en boucle à nouveau.
- Entrer un serial valide gratuit du type (celui-ci ne l'est pas): A0J0J-FDL2V-UC00M-4C7UA (récupérez le votre gratuitement ici)
- Enfin, restaurer un GCC potable:
ln -fs /usr/bin/gcc-4.3 /usr/bin/gcc
Vérifications
Votre serveur VmWare tourne à présent sur les ports par défaut 902 (remote connections), 8222 (standard http connections) et 8333 (secure https connections). Cependant, par sécurité nous ne les avons pas acceptés dans les règles de notre firewall. Afin de vous y connecter à distance, pour vérifier si tout va bien, allez voir en fin de guide, la manipulation à faire. Si çà passe c'est tout bon et voyons la suite après un petit redémarrage pour vérifier que est bien en place!
shutdown -r now
Prise de controle à distance via VMware Infrastructure Client
Etablissement du Tunnel SSH
- Lancer puttytray et créer une nouvelle connexion pour votre tunnel VMware via SSH:
- dans Sessions:
- Host Name: mondomaine.com
- Port: 10022
- Saved Sessions: dedibox vmware tunnel
- dans Connections/Data:
- Auto-login username: dedilogin
- dans Connections/SSH/Tunnels:
- Source port: 10902
- Destination: 127.0.0.1:902 (le 127.0.0.1 désigne ici le localhost côté dedibox, donc côté serveur)
- Faire Add
- Source port: 18333
- Destination: 127.0.0.1:8333 (le 127.0.0.1 désigne ici le localhost côté dedibox, donc côté serveur)
- Faire Add
- dans Window/Translation:
- Received data assumed to be in which character set: ISO-8859-15:1999 (Latin-9, "euro")
- dans Sessions:
- Faire Save
- Faire Open en bas, se connecter avec dedipass et laisser tourner ainsi.
- dans Sessions:
- Vous avez à présent votre tunnel en place.
Connexion via le tunnel
- Lancer VMIC, au départ il demande des infos, les remplir ainsi:
- hostname: localhost:18333 (désigne ici le 127.0.0.1 chez vous, donc côté client)
- Attention, ne pas mettre 127.0.0.1:18333 sinon vous aurez un bug d'export de display
- login: root
- pass: rootpass
- hostname: localhost:18333 (désigne ici le 127.0.0.1 chez vous, donc côté client)
VMIC va donc se connecter en local sur votre port 18333 à votre putty, qui va l'envoyer via SSH à travers le port 10022 de votre dedibox puis une fois arrivé, sur le port 8333 en local, tel que configuré dans le tunnel. L'export de l'affichage de vmware se fera par contre avec le port 902. Le login/pass correspond au compte avec lequel VMware server a été installé, donc le compte root. Bingo!
Ressources
Guide commencé le 17-10-2008 et terminé le 26-10-2008. Merci à toutes les personnes qui m'ont aidé ici et là à rédiger ce guide avec en tête Frank et Timo! Voici les quelques liens qui ont pu m'éclairer ou l'inverse c'est selon :) On se retrouve pour la suite avec un article pour la VM linux qui contiendra serveur web, etc... Mise à jour le 12-12-2008 (nouvelle version du serveur).
La suite
Cà se passe ici: Configure_your_Linux_Virtual_Machine.
Liens d'installation de VMware Server
- http://www.howtoforge.com/debian_etch_vmware_server_howto
- http://www.go2linux.org/vmware-server-on-debian-etch
- http://bubuntu.net/Installer-Vmware-Server-sur.html
- http://www.dedibox-news.com/viewtopic.php?pid=54239#p54239