Здравствуйте. Установив WSL и скачав из Microsoft Store Kali Linux & Ubuntu я столкнулся с тем, что передо мной терминал, а я абсолютно ничего не понимая в Linux, хотел бы хоть как-то ориентироваться в системе через графическую оболочку. Я неделями гуглил команды и в итоге написал скрипт для настройки. Делюсь, может кому поможет

Ещё раз оговорюсь, что в Linux я абсолютно не понимал ничего, поэтому культурная критика и дополнения к скрипту приветствуются в комментариях.

Так же сложность оказалась в том, что KALI поменяли команды, и я следуя туториалам на 2019 версию уже натыкался на ошибки отсутствия дистрибутива в репозитории.

Статья подразумевает, что вы уже установили WSL и скачали дистрибутив из Microsoft Store, и перед вами терминал. Скрипт писался на системе 26.08.2020

lsb_release -a
No LSB modules are available.
Distributor ID: Kali
Description:    Kali GNU/Linux Rolling
Release:        2020.3
Codename:       kali-rolling

Настройка Kali


Прочитайте первым делом в конце статьи UPDATE 2 и 3, пожалуйста. Возможно вы передумаете всё это делать.

  1. Первым делом вам предложат создать пользователя: введите логин и пароль
  2. далее создаём скрипт:

    sudo nano /usr/local/bin/setup-xrdp-server.sh

    и вставляем содержимое скрипта
    UPD: Скрипт одноразовый. Его не нужно часто вызывать из разных мест — следовательно, его место в домашнем каталоге пользователя или вообще в /tmp berez
  3. СОДЕРЖИМОЕ СКРИПТА ДЛЯ KALI LINUX

    #!/bin/bash
    echo "Sonax Kali Setup"
    
    ## МЕНЯЕМ ЗДЕСЬ НА НУЖНЫЕ ДАННЫЕ!
    port_xrdp=3390 #порт подключения по RDP
    username="sonax" #логин. Если хотите каждый раз вводить напишите "ask"
    password="pass"  #пароль Если хотите каждый раз вводить напишите "ask"
    ## Закончили менять. Дальше ничего не трогаем
    
    sudo apt update -y && sudo apt upgrade -y
    sudo apt install -y kali-desktop-xfce xrdp # для Ubuntu замените kali-desktop-xfce на xubuntu-desktop
    
    #XRDP
    sudo cp -n /etc/xrdp/xrdp.ini /etc/xrdp/xrdp.ini.bak #(бэкапим оригинал)
    sudo sed -i 's/3389/'$port_xrdp'/g' /etc/xrdp/xrdp.ini #(Смена порта со стандартного 3389 на указанный в переменной выше)
    sudo sed -i '186s/username=ask/username='$username'/g' /etc/xrdp/xrdp.ini #(логин, чтобы не вводить)
    sudo sed -i '187s/password=ask/password='$password'/g' /etc/xrdp/xrdp.ini #(пароль, чтобы не вводить)
    #sudo sed -i 's/max_bpp=32/#max_bpp=32\nmax_bpp=128/g' /etc/xrdp/xrdp.ini #(Цветопередача не 32, а 128 бит на пиксель) UPD: нет необходимости, но можете раскомментировать эту и следующие строчки.
    #sudo sed -i 's/xserverbpp=24/#xserverbpp=24\nxserverbpp=128/g' /etc/xrdp/xrdp.ini
    sudo /etc/init.d/xrdp start
    #END XRDP
  4. В блоке "## МЕНЯЕМ ЗДЕСЬ НА НУЖНЫЕ ДАННЫЕ!" введите порт подключения(можете оставить и так), логин, пароль. Сохраняем (cntrl+x ->y->enter). Скрипт создан
  5. далее задаём права Chmod, разрешаем запустить скрипт

    sudo chmod ugo+x /usr/local/bin/setup-xrdp-server.sh
  6. И запускаем скрипт
    setup-xrdp-server.sh
  7. Ждём загрузки всего необходимого, следуем инструкциям на экране
  8. Сервис xrdp уже запущен из скрипта, но в следующий раз запускать его нужно вручную, как заходите на виртуальную ОС. Команды запуска

    sudo /etc/init.d/xrdp start

    или

    sudo service xrdp start
    {start|stop|status|restart|try-restart|force-reload}
  9. Заходим на стандартное средство RDP Windows, в поиске введите RDP или в командной строке введите mstsc
  10. вводите localhost:3390 или другой порт, что вы указали и нажимайте соединиться

Ubuntu


На Ubuntu всё тоже самое, только вместо kali-desktop-xfce введите xubuntu-desktop.

Заключение


Спасибо за прочтение статьи. Если будут в комментариях пожелания\замечания\угрозы\шантаж\насилие, то статья будет дополняться\обновляться. Надеюсь, кому-нибудь пригодится.

UPD1:
Автозапуск при включении (спасибо berez)
sudo systemctl enable xrdp.service


UPD2:
Kali Linux получил графический интерфейс для подсистемы Windows для Linux (WSL2). Инструкция по установке.
Спасибо alex-khv.
Данное решение было реализовано совсем недавно, 18 Августа 2020 г, вот новость. Можно без RDP. У меня всё получилось.


UPD3:
WSL не видит физический интерфейс Wi-fi, соответственно Kali на WSL бесполезен на сегодняшний день, ждём обновлений.
В интернете пишут, что можно прокинуть USB-Wifi в систему через виртуальные машины VMWare, Oracle Virtual Box.
Но у меня, к сожалению, это не получилось, имею 2 USB Wi-Fi адаптера.
Тем не менее много людей отписываются об успехе этой процедуры.