Kali linux sur windows 10 avec wsl

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, entrez cette commande :

LANG=fr_FR.UTF-8

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 !

source : it-connect

Pour le fun, essayons de decrypter un mot de passe

sudo apt-get install john -y

OUIC

administrateur

créé le : 18/02/2023
mis à jour le : 20/04/2024