Installer Kali Linux (avec interface graphique) sur Windows 10 avec WSL
Sommaire
I. Présentation
Dans ce tutoriel, nous allons voir comment installer Kali Linux sur Windows 10 grâce à WSL 2. Nous verrons également comment activer l'interface graphique (GUI) de Kali Linux pour s'y connecter en RDP directement.
À l'instar d'autres distributions Linux, la distribution orientée sécurité informatique "Kali Linux" est installable via Windows Subsystem for Linux (WSL) sur une machine Windows 10. Grâce à cette installation qui s'effectue en quelques étapes, vous allez bénéficier d'une machine Kali Linux prête à l'emploi sur votre machine Windows 10. Il ne restera plus qu'à installer vos outils préférés et à les utiliser.
Si vous êtes prêt, nous allons commencer sans plus attendre... Ah oui, j'allais oublier : servez-vous un café avant de commencer, car il y a plusieurs phases de téléchargement où il faudra patienter...
🎥 Disponible au format vidéo :
II. Installation de WSL 2 pour Kali Linux
J'ai déjà publié un article sur l'installation de WSL 2 sur Windows 10 : la procédure est identique que ce soit pour installer Kali Linux ou une autre distribution.
Deux options : soit vous consultez le tutoriel existant (lien ci-dessus), soit vous suivez les étapes ci-dessous qui résument l'installation.
Pour activer Virtual Machine Platform :
Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform
Pour activer Windows Subsystem for Linux :
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
Après avoir redémarré la machine, il faut procéder au téléchargement de la mise à jour du kernel Linux. Rendez-vous sur cette page : WSL 2 Kernel - Procédez à l'installation en quelques clics...
Par la suite, ces étapes devraient être remplacées par une seule commande :
wsl.exe --install
Je vous invite à configurer WSL pour utiliser la version "2" par défaut. Exécutez cette commande :
wsl.exe --set-default-version 2
Vous êtes prêt à attaquer la suite.
III. Installer Kali Linux sur Windows 10 (WSL 2)
Pour installer Kali Linx, rendez-vous dans le Microsoft Store. Non, non, ce n'est pas une blague. On va installer Kali Linux comme on installerait une autre application à partir du Store. Recherchez "WSL" ou "Kali Linux".
Lorsque vous êtes sur la page de Kali Linux, cliquez sur le bouton "Obtenir" puis dans un second temps sur "Installer". Prenez votre premier café le temps du téléchargement.
Dès lors que le téléchargement est terminé, le bouton "Installer" est remplacé par "Lancer". Cliquez dessus... Une fenêtre va s'ouvrir et indiquer que l'installation est en cours : "Installing, this may take a few minutes...". Retour à la pause café.
Vous allez être invité à créer un compte utilisateur et à lui associer un mot de passe. Ce compte utilisateur sera propre à notre distribution Kali Linux.
La distribution Kali Linux est installée ! Dès maintenant, vous pouvez installer vos outils préférés grâce à "apt-get install", mais je vous conseille de lire la suite de ce tutoriel 😉.
Retournez dans PowerShell et exécutez la commande ci-dessous pour lister l'ensemble des distributions WSL enregistrées sur votre machine.
wsl -l -v
Kali Linux doit s'afficher dans la liste. Regardez la valeur de la colonne "VERSION" : si c'est indiqué "2", c'est tout bon. Sinon, je vous invite à convertir la machine en version 2 grâce à la commande ci-dessous ("kali-linux" étant le nom de la machine ciblée) :
wsl --set-version kali-linux 2
Notre machine est presque prête, mais nous allons voir comment installer l'interface graphique de Kali Linux sur Windows 10 (WSL).
IV. Installer l'interface graphique de Kali Linux sur Windows 10 (WSL 2)
Pour bénéficier de l'interface graphique (GUI) de Kali Linux dans le cadre d'une installation sur Windows 10 avec WSL, il y a plusieurs options. La seconde présentée est ma préférée.
A. Win-KeX
Comme le suggère la documentation de Kali Linux, on peut installer Win-KeX. Ce qui va permettre d'installer un serveur TigerVNC ainsi qu'un client TigerVNC (viewer) : de quoi se connecter sur la machine en elle-même et bénéficier de l'interface graphique.
sudo apt update sudo apt install -y kali-win-kex
Il suffira ensuite de lancer une session :
kex --win -s
À la première connexion, il faut définir un mot de passe pour la connexion via TigerVNC.
Cela fonctionne plutôt bien après avoir réglé l'affichage. Par défaut, la connexion prend tous les écrans et dans mon cas ce n'était pas très bien géré. Pour quitter le Viewer, il suffit d'accéder aux options via "F8". C'est également dans ce menu que l'on peut accéder aux réglages des écrans : de quoi utiliser un seul écran.
Je vais maintenant m'intéresser à une seconde option (qui a ma préférence).
B. XFCE et xRDP
Cette seconde méthode consiste à installer l'interface XFCE via le paquet "kali-desktop-xfce" ainsi que XRDP via le paquet du même nom, et qui n'est autre qu'une implémentation open source du fameux "serveur RDP" de Windows.
À la fin de l'installation, cela nous permettra de nous connecter sur notre machine Kali Linux via le client Bureau à distance de Windows 10 (ou tout autre client RDP). Ça, ça me plait !
Note : n'oubliez pas "sudo" devant les commandes sinon vous allez obtenir un joli message "Permission denied", car vous n'aurez pas les permissions.
Commencez par mettre à jour la machine Kali Linux :
sudo apt-get update && sudo apt-get upgrade -y
Ensuite, installez le paquet kali-desktop-xfce :
sudo apt-get install kali-desktop-xfce -y
Si vous utilisez une distribution basée sur Debian (notamment Ubuntu), installez le paquet suivant à la place :
sudo apt-get install xfce4 -y
Pendant l'installation de ce paquet, vous pouvez aller prendre votre troisième café, car c'est assez long.
Un assistant va s'ouvrir pour la configuration du clavier. Si vous ne souhaitez pas utiliser un clavier QWERTY, choisissez "Other" et appuyez sur "Entrée".
Choisissez ensuite le pays d'origine, en l'occurrence "France" (ou adaptez selon votre situation).
Choisissez la disposition du clavier qui vous convient, le but étant d'avoir l'AZERTY. Validez.
Lorsque l'installation de ce paquet est terminée, on va procéder à l'installation de xRDP. Ce sera beaucoup plus rapide. Exécutez la commande suivante :
sudo apt-get install xrdp -y
Suite à l'installation de ce paquet, il ne reste plus qu'à démarrer le service XRDP :
sudo service xrdp start
Starting Remote Desktop Protocol server: xrdp-sesman xrdp.
Pour pouvoir se connecter, il faut récupérer l'adresse IP de notre machine Kali Linux :
ip a
Cela se situe au niveau de la carte "eth0", pour ma part c'est l'adresse IP "172.23.241.175".
Hop, on ouvre le client RDP de Windows et on tente une connexion vers cette adresse IP.
La connexion RDP s'ouvre ! Saisissez votre identifiant et le mot de passe qui va bien (compte de la distribution Kali Linux).
Voilà, nous sommes connectés sur notre machine Kali Linux en RDP. On peut profiter de l'interface graphique !
V. Démarrer automatiquement xRDP sur une distribution WSL
Après chaque redémarrage de la machine, il faudrait relancer le service XRDP avant d'initier la connexion, car il ne va pas démarrer automatiquement. En fait, systemctl n'est visiblement pas pris en charge sur WSL pour le moment, on ne peut donc pas faire "systemctl enable xrdp" pour activer le démarrage automatique.
Nous sommes contraints de trouver une alternative... On va s'aider du fichier /etc/sudoers (associé à la commande "sudo") et du fichier .bashrc de notre utilisateur pour automatiser le démarrage du service XRDP au reboot de la machine WSL. D'ailleurs, cette méthode peut fonctionner pour d'autres actions...
Éditez le fichier /etc/sudoers grâce à visudo :
sudo visudo
On va ajouter une règle pour autoriser l'utilisateur de la machine Kali Linux ("florian" pour ma part) à exécuter la commande "service" sans que le mot de passe soit demandé (sinon au démarrage ce sera bloquant). Insérez la commande suivante à la fin du fichier en modifiant le nom de l'utilisateur :
florian ALL=(ALL:ALL) NOPASSWD: /usr/sbin/service
Enregistrez... Et modifiez maintenant le fichier .bashrc de votre profil (il est chargé à chaque ouverture de la session de l'utilisateur). Ce fichier se situe dans votre profil (/home/florian) :
nano /home/florian/.bashrc
Ajoutez la commande suivante à la fin du fichier :
sudo service xrdp start
Enregistrez. Il ne reste plus qu'à tester.
Pour cela, il faut que l'on force l'extinction de la machine virtuelle WSL grâce à la commande suivante :
wsl --shutdown
Relancez ensuite Kali Linux... Le Shell va s'afficher. Il ne reste plus qu'à regarder l'état du service XRDP :
sudo service xrdp status
La commande doit retourner :
xrdp-sesman is running. xrdp is running.
Voilà, un premier problème de réglé ! 😉
VI. XRDP : modification du port par défaut
Nous avons un second problème à régler : après chaque redémarrage de votre machine physique (et donc de la machine virtuelle WSL), l'adresse IP de votre distribution changera. Du coup, avant de pouvoir se connecter en RDP, il faudrait récupérer l'adresse IP de la machine.
Il faut savoir que xRDP écoute sur le port 3389, ce qui correspond au port par défaut pour le protocole RDP. On pourrait se connecter sur la machine en indiquant "localhost" ou "localhost:3389" : le problème c'est que le RDP est peut-être déjà actif sur la machine Windows 10. Cela va générer un conflit...
Nous allons modifier le port d'écoute de notre serveur XRDP pour le passer de 3389 à 3390 (ou autre chose). Suivez les étapes suivantes.
Nous allons modifier le fichier de configuration de XRDP :
nano /etc/xrdp/xrdp.ini
Dans ce fichier, il y a une ligne qui précise "port=3389" : c'est elle qu'il faut modifier.
port=3390
Dès que c'est fait, enregistrez le fichier et redémarrez le service XRDP :
sudo service xrdp restart
Ouvrez le client RDP de Windows et indiquez ceci :
localhost:3390
Voilà, on peut se connecter sur notre machine facilement sans avoir à récupérer l'adresse IP ! Un deuxième problème de corrigé !
Kali Linux est prêt : amusez-vous bien !
J’ai essayé l’installation du paquet xfce4 sur une distribution Ubuntu et j’ai eu une fenêtre ‘Configuring lightdm’ avec le choix du display manager par défaut, gdm3 ou lightdm. J’ai essayé les deux et je n’ai pas vu de différence. Par contre l’installation se termine sans question sur la disposition du clavier.
Ensuite lorsque j’essaye de me connecter avec rdp j’ai bien la fenêtre qui s’ouvre mais lorsque je saisi mon identifiant et mon mot de passe, la fenêtre se ferme. Pouvez-vous m’aider à comprendre le problème ? Pour info je suis sur la dernière version de Windows 11, 21H2. Merci.
Super….. Merci bcp J’ai réussi à installer jusqu’à l’étape V
Au top le tuto un grand merci
Tout fonctionne parfaitement en suivant ce tuto très clair. J’utilisais auparavant des machines dans VirtualBox et je trouve cette approche WSL2 beaucoup plus souple. Merci à vous.
très bon tuto très bien expliqué et simple à réaliser. dommage qu’il n’y a pas l’explication pour mettre la machine en français
quand je me connecte par Lip eth 0 cela ne fonctionne pas une idée??
Bonjour merci pour ce tutoriel très clair, je rencontre un problème , je n’arrive pas à attribuer un mp à mon compte impossible de saisir un mot mon clavier semble ne pas fonctionner. Merci d’avance
Bonjour,
Je rencontre le problème suivant:
comment ouvrir le client RDP de windows (W10) pour introduire l’adresse IP?
Désolé de mon ignorance majeure.
Merci d’avance
Bonjour Michel,
Pour ouvrir le client bureau à distance, tu peux utiliser la commande « MSTSC » dans la barre de recherche du menu démarrer de windows.
Cordialement.
Bonjour Florian,
Merci pour ce tuto.
J’ai quand même plein de blocages sur différents postes et avec différentes distros.
Mais pour faire simple, sur Kali linux, avec l’installation la plus aboutie, j’obtiens un écran bleu à la connexion sur le serveur xrdp. Le bureau ne s’affiche pas.
Je m’identifie avec nom d’utilisateur et mdp mais pas de bureau, juste un écran bleu.
Aurais-tu une idée, s’il te plaît ?
Cordialement.
Fabrice
Bonjour,
j’ai eu le meme coup mais il faut juste agrandir la fenetre au maximum, et apparaitra un petit carré de login au milieu.
Nickel,
Merci Beaucoup, j’avais suivi un autre tuto il y a quelques mois et j’etait resté bloqué sur la connexion a distance pour avoir le bureau Kali (je me faisais rejeté par Windows pour connexion deja utilisé). grace a ton tuto j’ai pu voir que c’etait a cause du numéro de port
Bonjour Florian
Tout et installer, mais je n’est pas de connexion internet sur interface de kali en connexion a distance!!
Je ne comprend pas!
Aprés dans le fichier nano /home/florian/.bashrc bien sur modifier avec mon nom utilisateur j’ai fait le changement sur le port 3390 mais il ne veut pas me enregistrer message erreur permission denied!!
Sudo avant la commande
Merci beaucoup Florian! Je n’ai tenté que Win-KeX et il marche très bien.
Merci pour ce guide détaillé ! J’ai réussi à installer Kali Linux sur Windows 10 grâce à vos instructions claires. L’interface graphique fonctionne parfaitement et c’est vraiment pratique. Continuez votre excellent travail !