Fampandehanana ny Enhanced Session Mode ho an'ny Arch Linux-vahiny ao amin'ny Hyper-V

Fampandehanana ny Enhanced Session Mode ho an'ny Arch Linux-vahiny ao amin'ny Hyper-V

Mampiasa milina virtoaly amin'ny Linux ao amin'ny Hyper-V out of the box dia traikefa tsy dia mahazo aina loatra raha oharina amin'ny vahiny Windows-машинами. ΠŸΡ€ΠΈΡ‡ΠΈΠ½ΠΎΠΉ Ρ‚ΠΎΠΌΡƒ являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Hyper-V всС ΠΆΠ΅ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Π½Π΅ прСдназначался для дСсктопного пользования; нСльзя просто Π²Π·ΡΡ‚ΡŒ, ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ гостСвых Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ работоспособноС графичСскоС ускорСниС, Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π°, ΠΎΠ±Ρ‰ΠΈΠ΅ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ радости ΠΆΠΈΠ·Π½ΠΈ, ΠΊΠ°ΠΊ это происходит Π² VirtualBox.

Hyper-V mihitsy no manome serivisy fampidirana maromaro - Noho izany, ny vahiny dia afaka mampiasa ny serivisy kopia alokaloka (VSS), ny vahiny dia afaka mandefa famantarana fanakatonana, ny vahiny dia afaka mampifanaraka ny fotoanan'ny rafitra miaraka amin'ny mpampiantrano virtoaly, ny rakitra dia azo takalon'ny mpampiantrano miaraka amin'ny milina virtoaly (Copy-VMFile Π² PowerShell). Для Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… гостСвых ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм, Π² числС ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ…, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, находится ΠΈ Windows, Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Virtual Machine Connection (vmconnect.exe) Misy ny Mode Session Enhanced, miasa amin'ny alΓ lan'ny protocol RDP ary mamela anao hamindra fitaovana kapila sy mpanonta amin'ny milina virtoaly, ary koa mampiasa takelaka ifampizarana.

Enhanced Session Mode ΠΈΠ· ΠΊΠΎΡ€ΠΎΠ±ΠΊΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² Windows Π² Hyper-V сразу послС установки. Π‘ гостями Π½Π° Linux Π½ΡƒΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ RDP-сСрвСр, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ vsock (ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ сСтСвоС адрСсноС пространство Π² Linux, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠ΅ для ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΈ с Π³ΠΈΠΏΠ΅Ρ€Π²ΠΈΠ·ΠΎΡ€ΠΎΠΌ). Если для Ubuntu Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ VMCreate, ΠΈΠ΄ΡƒΡ‰ΠΈΠΌ с Hyper-V Π½Π° Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ… рСдакциях Windows, Π΅ΡΡ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹ΠΉ шаблон Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ с vsock RDP-сСрвСр XRDP efa napetraka mialoha, dia miaraka amin'ny fizarana hafa dia tsy dia mazava loatra - ohatra, ny mpanoratra ity lahatsoratra ity ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ESM Π² Fedora. Π—Π΄Π΅ΡΡŒ ΠΆΠ΅ ΠΌΡ‹ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΡƒΠ΅ΠΌ Enhanced Session Mode для Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ с Arch Linux.

Fametrahana serivisy fampidirana

Ny zava-drehetra dia tsotra na tsy dia tsotra eto, mila mametraka ny fonosana fotsiny isika hyperv avy amin'ny tahiry fiaraha-monina:

% sudo pacman -S hyperv

Alefaso ny serivisy VSS sy fifanakalozana metadata ary fichier:

% for i in {vss,fcopy,kvp}; do sudo systemctl enable hv_${i}_daemon.service; done

Fametrahana XRDP

repository linux-vm-tools Π½Π° GitHub прСдоставляСт скрипты, Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ процСсс установки ΠΈ настройки XRDP, для Arch Linux ΠΈ Ubuntu. Установим Git, Ссли ΠΎΠ½ Π΅Ρ‰Π΅ Π½Π΅ установлСн, вмСстС с компилятором ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ софтом для Ρ€ΡƒΡ‡Π½Ρ‹Ρ… сборок, послС Ρ‡Π΅Π³ΠΎ склонируСм Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ:

% sudo pacman -S git base-devel
% git clone https://github.com/microsoft/linux-vm-tools.git
% cd linux-vm-tools/arch

Tamin'ny fotoana nanoratana ity lahatsoratra ity, ny famoahana XRDP farany indrindra, izay napetraky ny script makepkg.shny soso-kevitra ao amin'ny tahiry dia 0.9.11, izay tapaka ny parsing vsock://-addresses, noho izany dia tsy maintsy mametraka XRDP avy amin'ny Git ianao ary ny mpamily Xorg ho azy avy amin'ny AUR. Ny patch XRDP atolotra ao amin'ny AUR dia somary lany andro ihany koa, noho izany dia mila manitsy ny PKGBUILD sy ny patch ianao.

Andao hanao clone repository miaraka amin'ny PKGBUILDs avy amin'ny AUR (matetika ity fomba fiasa ity, miaraka amin'ny fananganana, dia mandeha ho azy amin'ny programa toy ny yay, fa ny mpanoratra dia nanao izany fomba rehetra izany tamin'ny rafitra madio):

% git clone https://aur.archlinux.org/xrdp-devel-git.git
% git clone https://aur.archlinux.org/xorgxrdp-devel-git.git

Aleo apetraka aloha ny XRDP. Andao hanokatra ny rakitra PKGBUILD izay mpamoaka lahatsoratra.

Andao hanitsy ny masontsivana fananganana. Ny PKGBUILD amin'ny fananganana XRDP avy amin'ny Git dia tsy misy fanohanana vsock rehefa manorina, koa andao isika hanao izany:

 build() {
   cd $pkgname
   ./configure --prefix=/usr 
               --sysconfdir=/etc 
               --localstatedir=/var 
               --sbindir=/usr/bin 
               --with-systemdsystemdunitdir=/usr/lib/systemd/system 
               --enable-jpeg 
               --enable-tjpeg 
               --enable-fuse 
               --enable-opus 
               --enable-rfxcodec 
               --enable-mp3lame 
-              --enable-pixman
+              --enable-pixman 
+              --enable-vsock
   make V=0
 }

Ao amin'ny patch arch-config.diff, правящСм ΡŽΠ½ΠΈΡ‚Ρ‹ ΠΈ скрипты запуска XRDP ΠΏΠΎΠ΄ ΠΏΡƒΡ‚ΠΈ ΠΊ Ρ„Π°ΠΉΠ»Π°ΠΌ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΌ Π² Arch Linux, содСрТится Π² Ρ‚ΠΎΠΌ числС ΠΏΠ°Ρ‚Ρ‡ ΠΊ скрипту instfiles/xrdp.sh, izay tamin'ny fotoana nanoratana nesorina avy amin'ny fizarana XRDP, noho izany dia tsy maintsy ovaina amin'ny tanana ny patch:

  [Install]
  WantedBy=multi-user.target
-diff -up src/xrdp-devel-git/instfiles/xrdp.sh.orig src/xrdp-devel-git/instfiles/xrdp.sh
---- src/xrdp-devel-git/instfiles/xrdp.sh.orig  2017-08-30 00:27:28.000000000 -0600
-+++ src/xrdp-devel-git/instfiles/xrdp.sh   2017-08-30 00:28:00.000000000 -0600
-@@ -17,7 +17,7 @@
- # Description: starts xrdp
- ### END INIT INFO
- 
--SBINDIR=/usr/local/sbin
-+SBINDIR=/usr/bin
- LOG=/dev/null
- CFGDIR=/etc/xrdp
- 
 diff -up src/xrdp-devel-git/sesman/startwm.sh.orig src/xrdp-devel-git/sesman/startwm.sh
 --- src/xrdp-devel-git/sesman/startwm.sh.orig  2017-08-30 00:27:30.000000000 -0600

Andao hanangona sy hametraka ny fonosana miaraka amin'ny baiko % makepkg --skipchecksums -si (key --skipchecksums Ilaina ny manafoana ny fanamarinana checksum amin'ny rakitra loharano, satria nanova azy ireo tamin'ny tanana izahay).

Andeha ho any amin'ny lahatahiry xorgxrdp-devel-git, aorian'izay dia manangona fotsiny ny fonosana miaraka amin'ny baiko % makepkg -si.

Andeha ho any amin'ny lahatahiry linux-vm-tools/arch ary tanteraho ny script install-config.sh, izay mametraka ny XRDP, PolicyKit ary PAM:

% sudo ./install-config.sh

Mametraka fika lova ny script use_vsock, izay tsy noraharahiana hatramin'ny version 0.9.11, ka andeha hovaina ny fichier configuration /etc/xrdp/xrdp.ini amin'ny tanana:

 ;   port=vsock://<cid>:<port>
-port=3389
+port=vsock://-1:3389

 ; 'port' above should be connected to with vsock instead of tcp
 ; use this only with number alone in port above
 ; prefer use vsock://<cid>:<port> above
-use_vsock=true
+;use_vsock=true

 ; regulate if the listening socket use socket option tcp_nodelay

Ampio amin'ny rakitra ~/.xinitrc manomboka ny fikandrana fikandrana / tontolo desktop tianao indrindra, izay hotanterahina rehefa manomboka ny mpizara X:

% echo "exec i3" > ~/.xinitrc

Andeha hovonointsika ny milina virtoaly. Mampihetsi-po ny fitaterana vsock ho an'ny milina virtoaly amin'ny alΓ lan'ny fampandehanana ity baiko manaraka ity ao amin'ny PowerShell ho mpitantana:

PS Admin > Set-VM -VMName ΠΠΠ—Π’ΠΠΠ˜Π•_МАШИНЫ -EnhancedSessionTransportType HvSocket

Andao velomina indray ny milina virtoaly.

fifandraisana

Raha vantany vao manomboka ny serivisy XRDP taorian'ny nanombohan'ny rafitra dia ho hitan'ny fampiharana vmconnect izany ary ho hita ao amin'ny menio ilay entana. View -> Session Enhanced. Rehefa misafidy ity zavatra ity isika dia hasaina hametraka ny famaha ny efijery, ary eo amin'ny tabilao Harena eo an-toerana Ao amin'ny fifanakalozan-kevitra misokatra dia azonao atao ny misafidy fitaovana halefa any amin'ny fivoriana RDP.

Fampandehanana ny Enhanced Session Mode ho an'ny Arch Linux-vahiny ao amin'ny Hyper-V
Fampandehanana ny Enhanced Session Mode ho an'ny Arch Linux-vahiny ao amin'ny Hyper-V

Andao hifandray. Ho hitantsika ny varavarankely fidirana XRDP:

Fampandehanana ny Enhanced Session Mode ho an'ny Arch Linux-vahiny ao amin'ny Hyper-V

Ampidiro ny anaranao sy ny tenimiafinao.

ny fampiasana ny

Ny tombony azo avy amin'ireo fanodinkodinana ireo dia tsikaritra: ny fivoriana RDP dia miasa tsara kokoa noho ny rehefa miasa amin'ny fampisehoana virtoaly tsy misy Session Enhanced. Ny kapila latsaka ao anatin'ny VM amin'ny alΓ lan'ny RDP dia hita ao amin'ny lahatahiry ${HOME}/shared-drives:

Fampandehanana ny Enhanced Session Mode ho an'ny Arch Linux-vahiny ao amin'ny Hyper-V

Miasa tsara ny clipboard. Tsy afaka mandefa mpanonta ao anatiny ianao; manapaka ny fandefasana kapila. Tsy mandeha koa ny feo, saingy tsy nila izany ny mpanoratra. Mba hisintonana hitsin-dΓ lana toy ny Alt+Tab dia mila manitatra ny vmconnect amin'ny efijery feno ianao.

Если ΠΏΠΎ ΠΊΠ°ΠΊΠΈΠΌ-Π»ΠΈΠ±ΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌ Π΅ΡΡ‚ΡŒ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ вмСсто прилоТСния vmconnect встроСнный Π² Windows RDP-ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΈΠ»ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΊ этой машинС ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹, Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ Π² Ρ„Π°ΠΉΠ»Π΅ /etc/xrdp/xrdp.ini port amin'ny tcp://:3389. Raha toa ka mifandray amin'ny Switch Default ny milina virtoaly ary mahazo firafitry ny tambajotra amin'ny DHCP, dia azonao atao ny mifandray aminy amin'ny mpampiantrano amin'ny Π½Π°Π·Π²Π°Π½ΠΈΠ΅_ΠΌΠ°ΡˆΠΈΠ½Ρ‹.mshome.net. Afaka miditra amin'ny TTY avy amin'ny rindranasa vmconnect ianao amin'ny alΓ lan'ny famonoana ny Mode Enhanced.

Loharano nampiasaina:

  1. Hyper-V - Arch Wiki
  2. Tatitra momba ny bug ao amin'ny GitHub: 1, 2

Source: www.habr.com

Mividiana fampiantranoana azo antoka ho an'ny tranokala misy fiarovana DDoS, mpizara VPS VDS πŸ”₯ Mividiana fampiantranoana tranonkala azo antoka miaraka amin'ny fiarovana DDoS, mpizara VPS VDS | ProHoster