В прошлый раз я настраивал на Windows 10 что-то вроде облегчённой версии виртуальной машины Linux — WSL. Это несомненно удобнее, чем полноценная виртуальная машина на VirtualBox или VMWare. Но в том случае у нас был доступ лишь к консоли, а работать с рабочим столом мы не могли, что вносило некоторые ограничения. В принципе можно было запустить gedit из терминала, но хотелось большего. В этот раз постараемся решить эту проблему через RDP — Remote Desktop Protocol.
У меня видеокарта GeForce, поэтому в консоли Ubuntu проверю, установились ли для неё драйверы:
nvidia-smi
Mon May 29 10:59:54 2023
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 515.65.01 Driver Version: 516.94 CUDA Version: 11.7 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 NVIDIA GeForce ... On | 00000000:01:00.0 On | N/A |
| 36% 44C P5 21W / 170W | 392MiB / 2048MiB | 1% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 23 G /Xwayland N/A |
+-----------------------------------------------------------------------------+
Мы можем запустить какое-нибудь графическое приложение (если оно установлено), например gedit:
gedit
Приложение откроется в отдельном окне окне Windows и на панели задач у него будет значок с пингвином.
Если вы установили это приложение, то ссылка на него появится и в меню Пуск в разделе Ubuntu 22.04.2 LTS:
Установка среды рабочего стола xfce4
1. Установим xfce4 и дополнения к нему:
sudo apt install -y xfce4
sudo apt install -y xfce4-goodies
2. Устанавливаем сервер удалённого рабочего стола:
sudo apt install -y xrdp
3. Делаем резервную копию файла настроек:
sudo cp /etc/xrdp/xrdp.ini /etc/xrdp/xrdp.ini.bak
4. Чтобы не было конфликтов, изменим номер порта (с 3389 на 3390):
port=3390
4. Создадим файл .xsession:
echo xfce4-session > ~/.xsession
5. Внесём правки в файл startwm.sh (закомментируем последние две строчки и добавим новую)
# test -x /etc/X11/Xsession && exec /etc/X11/Xsession
# exec /bin/sh /etc/X11/Xsession
startxfce4
6. Запустим сервер удалённого рабочего стола:
sudo /etc/init.d/xrdp start
Подключаемся с помощью Remote Desktop Connection
localhost:3390
Настройка для Kali Linux
Тут все работает практически без особого шаманства.
Устанавливаем Win-KeX:
sudo apt update
sudo apt install -y kali-win-kex
Запускаем рабочий стол:
kex --win -s
По кнопке
Если не будет работать инет, то всё же придётся подправить конфиг:
sudo vi /etc/resolv.conf
# This file was automatically generated by WSL. To stop automatic generation of this file, add the following entry to /etc/wsl.conf:
# [network]
#generateResolvConf = false
nameserver 192.168.1.254
#nameserver 172.28.80.1
И, как сказано в комментарии к этому файлу, вносим изменения в файл /etc/wsl.conf в текущей консоли Линукс:
[network]
generateResolvConf = false
Работа с клиентом SSH
Пытаюсь соединиться с роутером по SSH, но там нет публичных ключей и т.п.:
ssh -v -o "PubkeyAuthentication=no" -o "PreferredAuthentications=password" mgts@192.168.1.254
Получаю ошибку:
Unable to negotiate with 192.168.1.254 port 22: no matching host key type found. Their offer: ssh-rsa,ssh-dss
В этот раз помогло такое сочетание ключей:
ssh -oHostKeyAlgorithms=+ssh-dss mgts@192.168.1.254