{"id":1452,"date":"2014-09-19T07:30:20","date_gmt":"2014-09-19T05:30:20","guid":{"rendered":"http:\/\/vm.piszki.pl\/?p=1452"},"modified":"2014-09-19T07:51:01","modified_gmt":"2014-09-19T05:51:01","slug":"dostep-do-systemu-windows-przez-przegladarke-internetowa","status":"publish","type":"post","link":"https:\/\/vm.piszki.pl\/?p=1452","title":{"rendered":"Dost\u0119p do systemu Windows przez przegl\u0105dark\u0119 internetow\u0105."},"content":{"rendered":"<p align=\"justify\">Przed przyst\u0105pieniem do napisania tego posta zrobi\u0142em ma\u0142y risercz. I wysz\u0142o mi, \u017ce nie tak \u0142atwo jest zorganizowa\u0107 dost\u0119p zdalny przez przegl\u0105dark\u0119 do w\u0142asnej stacji roboczej. Istniej\u0105 r\u00f3\u017cne rozwi\u0105zania, w wi\u0119kszo\u015bci wymagaj\u0105ce instalacji serwera i klienta. Najbli\u017cszym rozwi\u0105zaniem do tego kt\u00f3re tutaj opisz\u0119 jest chyba \u201cMicrosoft Remote Desktop Web Access\u201d, jednak jest to funkcja Microsoft Server. Tak si\u0119 jednak z\u0142o\u017cy\u0142o, \u017ce niedawno mia\u0142 premier\u0119 VMware Horizon 6 with View, a wraz z nim nowa ods\u0142ona dodatku Direct Connect (o kt\u00f3rym marudzi\u0142em <a href=\"https:\/\/vm.piszki.pl\/s%c5%82w-kilka-o-horizon-view-direct-connect\/\">tutaj<\/a>). Jednak tym razem pojawi\u0142a si\u0119 te\u017c nowo\u015b\u0107, Horizon View HTML Access. Pod t\u0105 nazw\u0105 kryje si\u0119 protok\u00f3\u0142 BLAST, kt\u00f3ry do tej pory by\u0142 cz\u0119\u015bci\u0105 Horizon View Connection Server i kt\u00f3ry to umo\u017cliwia\u0142 posiadaczom infrastruktury View komfortow\u0105 prac\u0119 na stacjach roboczych z dowolnego miejsca poprzez przegl\u0105dark\u0119 internetow\u0105. Dzi\u015b zosta\u0142o to wydzielone na zewn\u0105trz (budowa View sta\u0142a si\u0119 bardziej modularna), instalacja i konfiguracja nie jest prosta (ale te\u017c bez przesady), ale jej uko\u0144czenie pozwoli nam, za darmo, cieszy\u0107 si\u0119 zdalnym dost\u0119pem do desktopa. Pisz\u0119 \u017ce za darmo, oczywi\u015bcie najpierw trzeba \u015bci\u0105gn\u0105\u0107 Horizon 6 with View z <a href=\"http:\/\/vmware.com\/download\">60<\/a> dniow\u0105 licencj\u0105, jednak sam dodatek do dzia\u0142ania nie wymaga zainstalowanej i wa\u017cnej licencji (czyli mo\u017cna troch\u0119 \u201cprzed\u0142u\u017cy\u0107\u201d jego u\u017cywanie bez kombinowania). Poza tym VMware ma bardzo liberalny stosunek do \u201cHome Lab\u201d i nie czyni problem\u00f3w osobom zdobywaj\u0105cym wiedz\u0119 z zakresu ich produkt\u00f3w.<\/p>\n<p align=\"justify\"><a href=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/unnamed.png\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; float: none; padding-top: 0px; padding-left: 0px; margin-left: auto; display: block; padding-right: 0px; margin-right: auto; border-width: 0px;\" title=\"unnamed\" src=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/unnamed_thumb.png\" alt=\"unnamed\" width=\"240\" height=\"240\" border=\"0\" \/><\/a><\/p>\n<p align=\"justify\">\n<p><!--more--><\/p>\n<p align=\"justify\">Ca\u0142a procedura zawiera si\u0119 w trzech krokach i przedstawia si\u0119 nast\u0119puj\u0105co:<\/p>\n<p align=\"justify\">W kroku pierwszym musimy \u015bci\u0105gn\u0105\u0107 i zainstalowa\u0107 Horizon View Agent w wersji <a href=\"http:\/\/nas.piszki.pl\/webalizer\/VMware-viewagent-6.0.1-2089044.exe\">32<\/a> lub <a href=\"http:\/\/nas.piszki.pl\/webalizer\/VMware-viewagent-x86_64-6.0.1-2089044.exe\">64<\/a> bit (zale\u017cnie od waszego systemu). \u015aci\u0105gamy te\u017c oczywi\u015bcie dodatek <a href=\"http:\/\/nas.piszki.pl\/webalizer\/VMware-Horizon-View-HTML-Access-2.5.0-2080967.zip\">Horizon View HTML Access<\/a> (dla u\u0142atwienia linki prowadz\u0105 bezpo\u015brednio na m\u00f3j serwer) i sam View Agent Direct Connect (<a href=\"http:\/\/nas.piszki.pl\/webalizer\/VMware-viewagent-direct-connection-6.0.1-2088845.exe\">32<\/a> lub <a href=\"http:\/\/nas.piszki.pl\/webalizer\/VMware-viewagent-direct-connection-x86_64-6.0.1-2088845.exe\">64<\/a> bit). Agenta nale\u017cy zainstalowa\u0107 z linii komend (jako Administrator) z parametrem VDM_SKIP_BROKER_REGISTRATION=1\u00a0 (Uwaga: nie u\u017cyjemy tej maszyny z View Connection Server):<\/p>\n<p align=\"justify\"><a href=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/web7.png\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; float: none; padding-top: 0px; padding-left: 0px; margin-left: auto; display: block; padding-right: 0px; margin-right: auto; border-width: 0px;\" title=\"web7\" src=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/web7_thumb.png\" alt=\"web7\" width=\"465\" height=\"93\" border=\"0\" \/><\/a><\/p>\n<p align=\"justify\">Dodatek View Agent Direct Connect instalujemy jako Administrator bez parametr\u00f3w na domy\u015blnym porcie 443 (nie jest to obligatoryjne). W kroku kolejnym musimy zainstalowa\u0107 i skonfigurowa\u0107 IIS, robi si\u0119 to bardzo prosto. W panelu sterowania wybieramy \u201cProgramy i funkcje\u201d, dalej \u201cW\u0142\u0105cz lub wy\u0142\u0105cz funkcje systemu Windows\u201d (zale\u017cnie oczywi\u015bcie czy to jest Windows 7 czy 8, tutaj przyk\u0142ad pochodzi z Windows 7 32-bit):<\/p>\n<p><a href=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/web1.png\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; float: none; padding-top: 0px; padding-left: 0px; margin-left: auto; display: block; padding-right: 0px; margin-right: auto; border-width: 0px;\" title=\"web1\" src=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/web1_thumb.png\" alt=\"web1\" width=\"458\" height=\"507\" border=\"0\" \/><\/a><\/p>\n<p align=\"justify\">Teraz musimy sprawdzi\u0107, czy mamy w systemie jakikolwiek certyfikat wystawiony dla komputera. Mo\u017cemy to zrobi\u0107 poprzez uruchomienie konsoli przystawek mmc (w menu start uruchom: mmc) i oddania przystawki obs\u0142uguj\u0105cej certyfikaty:<\/p>\n<p><a href=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/web2.png\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; float: none; padding-top: 0px; padding-left: 0px; margin-left: auto; display: block; padding-right: 0px; margin-right: auto; border-width: 0px;\" title=\"web2\" src=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/web2_thumb.png\" alt=\"web2\" width=\"450\" height=\"424\" border=\"0\" \/><\/a><\/p>\n<p align=\"justify\">Certyfikat SSL mo\u017ce by\u0107 dowolny, byle wspiera\u0142 rozszerzenie \u201cuwierzytelnianie serwera\u201d i mia\u0142 przyjazn\u0105 nazw\u0119 vdm (dodajemy j\u0105 sami). Certyfikat ten b\u0119dzie u\u017cyty przez serwer WWW do wy\u015bwietlania konsoli naszego komputera po protokole HTTPS. W przypadku braku certyfikatu, nale\u017cy go sobie wygenerowa\u0107 i zaimportowa\u0107. Mog\u0119 tutaj jedynie poleci\u0107 m\u00f3j skrypt <a href=\"https:\/\/vm.piszki.pl\/vmware-lab-cz%c4%99%c5%9b%c4%87-3-certyfikaty-ssl-w-vcenter-z-naciskiem-na-vcsa\/\">CA<\/a> (wymaga linuxa) lub odpowiedni <a href=\"https:\/\/www.netiq.com\/pl-pl\/documentation\/imanager\/imanager_install\/data\/bu3uiv1.html\">poradnik<\/a> (lub zakup w np. RapidSSL).<\/p>\n<p><a href=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/web3.png\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; float: none; padding-top: 0px; padding-left: 0px; margin-left: auto; display: block; padding-right: 0px; margin-right: auto; border-width: 0px;\" title=\"web3\" src=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/web3_thumb.png\" alt=\"web3\" width=\"448\" height=\"377\" border=\"0\" \/><\/a><\/p>\n<p align=\"justify\">W ostatnim kroku rozpakowujemy plik Horizon View HTML Access, w \u015brodku jest plik portal.war. Zmieniamy jego nazw\u0119 na portal.zip i jego zawarto\u015b\u0107 rozpakowujemy do katalogu c:\\inetpub\\wwwroot\\portal (katalog portal nale\u017cy utworzy\u0107 sobie samemu). Za pomoc\u0105 np. Notatnika tworzymy plik c:\\inetpub\\wwwroot\\Default.htm z zawarto\u015bci\u0105 (adres lub IP = dok\u0142adnie taki po jakim b\u0119dziemy go wywo\u0142ywa\u0107):<\/p>\n<p>&lt;HEAD&gt;<\/p>\n<p>&lt;meta HTTP-EQUIV=&#8221;REFRESH&#8221; content=&#8221;0; url=https:\/\/<strong><span style=\"color: #ff0000;\">adres IP lub nazwa DNS naszego komputera<\/span><\/strong>\/portal\/webclient\/index.html&#8221;&gt;<\/p>\n<p>&lt;\/HEAD&gt;<\/p>\n<div align=\"justify\"><span style=\"font-family: Calibri;\">Teraz musimy przej\u015b\u0107 do konsoli IIS (Panel sterowania \u2013&gt; Narz\u0119dzia administracyjne \u2013&gt; Mened\u017cer internetowych us\u0142ug\u2026 lub to samo w \u201cZarz\u0105dzanie komputerem\u201d):<\/span><\/div>\n<p><a href=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/web4.png\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; float: none; padding-top: 0px; padding-left: 0px; margin-left: auto; display: block; padding-right: 0px; margin-right: auto; border-width: 0px;\" title=\"web4\" src=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/web4_thumb.png\" alt=\"web4\" width=\"253\" height=\"232\" border=\"0\" \/><\/a><\/p>\n<p align=\"justify\">Klikamy w \u201cDefault Web Site\u201d i po prawej w \u201cPowi\u0105zania\u201d. Robimy nowe wi\u0105zanie, port 443 do adresu IP naszego komputera (mo\u017cna go sprawdzi\u0107 w linii polece\u0144 ipconfig) z naszym certyfikatem vdm. Proponuj\u0119 aby od razu usun\u0105\u0107 domy\u015blne powi\u0105zanie na porcie 80:<\/p>\n<p><a href=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/web5.png\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; float: none; padding-top: 0px; padding-left: 0px; margin-left: auto; display: block; padding-right: 0px; margin-right: auto; border-width: 0px;\" title=\"web5\" src=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/web5_thumb.png\" alt=\"web5\" width=\"431\" height=\"230\" border=\"0\" \/><\/a><\/p>\n<p align=\"justify\">Nast\u0119pnie dodajemy (je\u015bli nie mamy), nowy typ MIME:<\/p>\n<p><a href=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/web6.png\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; float: none; padding-top: 0px; padding-left: 0px; margin-left: auto; display: block; padding-right: 0px; margin-right: auto; border-width: 0px;\" title=\"web6\" src=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/web6_thumb.png\" alt=\"web6\" width=\"426\" height=\"332\" border=\"0\" \/><\/a><\/p>\n<p align=\"justify\">I to w zasadzie wszystko. Pami\u0119tajmy tylko, \u017ce je\u015bli na naszym komputerze w\u0142\u0105czona jest \u201cZapora systemu Windows\u201d to o ile View Agent i Direct Connect utworz\u0105 i w\u0142\u0105cz\u0105 odpowiednie regu\u0142y, o tyle port 443 jest domy\u015blnie wy\u0142\u0105czony (regu\u0142a \u201cUs\u0142ugi Sieci World Wide Web\u201d) i nale\u017cy go r\u0119cznie w\u0142\u0105czy\u0107.\u00a0 Przy wystawianiu portalu do Internetu nale\u017cy te\u017c zrobi\u0107 odpowiedni\u0105 konfiguracj\u0119 na w\u0142asnym routerze (przekierowanie). Na koniec o kwestiach bezpiecze\u0144stwa. Po pierwsze port mo\u017ce by\u0107 dowolny, byle by\u0142 sp\u00f3jny na IIS i w trakcie instalacji Direct Connect (np. 8443). Do portalu nale\u017cy zalogowa\u0107 si\u0119 loginem i has\u0142em lokalnego u\u017cytkownika na kt\u00f3rego pulpit chcemy si\u0119 dosta\u0107:<\/p>\n<p><a href=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/web10.png\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; float: none; padding-top: 0px; padding-left: 0px; margin-left: auto; display: block; padding-right: 0px; margin-right: auto; border-width: 0px;\" title=\"web10\" src=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/web10_thumb.png\" alt=\"web10\" width=\"407\" height=\"302\" border=\"0\" \/><\/a><\/p>\n<p align=\"justify\">Po zalogowaniu wybieramy nasz komputer i przechodzimy na konsol\u0119 (ekran g\u0142\u00f3wny zostanie zablokowany tak jak to ma miejsce np. przy RDP). Po\u0142\u0105czenie jest szyfrowane, IIS i portal odpowiadaj\u0105 jedynie za autentykacj\u0119 i przekierowanie na port na kt\u00f3rym dzia\u0142a serwer BLAST. Je\u015bli aktualizujemy regularnie nasz komputer, takie rozwi\u0105zanie jest w miar\u0119 bezpieczne. Jednak wiadomo, z\u0142y zawsze czyha i lepiej pobawi\u0107 si\u0119 w zabezpieczenia na firewallu typu dozwolone po\u0142\u0105czenie jedynie z wybranego IP (np. z pracy). W ostatecznym rachunku liczy si\u0119 jednak efekt ko\u0144cowy, a wygl\u0105da on tak (wielko\u015b\u0107 ekranu jest dynamicznie dostosowywana do wielko\u015bci okna przegl\u0105darki):<\/p>\n<p align=\"justify\"><a href=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/web11.png\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; float: none; padding-top: 0px; padding-left: 0px; margin-left: auto; display: block; padding-right: 0px; margin-right: auto; border-width: 0px;\" title=\"web11\" src=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/web11_thumb.png\" alt=\"web11\" width=\"465\" height=\"345\" border=\"0\" \/><\/a><\/p>\n<p align=\"justify\">Szybko\u015b\u0107 dzia\u0142ania jest por\u00f3wnywalna z RDP (czyli bez zaci\u0119\u0107 etc.). Jako dodatek opisz\u0119 co zrobi\u0107 gdy np. mamy w\u0142asn\u0105 domen\u0119 i wygenerowany dla niej certyfikat podpisany przez CA (nasz lub np. RapidSSL). Podmiana certyfikatu w IIS odbywa si\u0119 na tej samej zasadzie, importujemy certyfikat (uwaga: opcja \u201coznacz klucz jako eksportowalny\u201d powinna by\u0107 zaznaczona), nadajemy mu przyjazn\u0105 nazw\u0119 vdm i wi\u0105\u017cemy go na porcie 443 w konsoli IIS. Serwer BLAST realizuj\u0105cy prawdziwe po\u0142\u0105czenie jest ca\u0142kowicie oddzielny od IIS i podmiana certyfikatu wygl\u0105da inaczej. W tej samej konsolce przystawek (lub w Panel sterowania\u2014&gt;Opcje internetowe\u2014&gt;Zawarto\u015b\u0107\u2014&gt;Certyfikaty SSL) we w\u0142a\u015bciwo\u015bciach naszego certyfikatu wy\u015bwietlamy i zapami\u0119tujemy Thumbprint (odcisk palca):<\/p>\n<p align=\"justify\"><a href=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/web8.png\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; float: none; padding-top: 0px; padding-left: 0px; margin-left: auto; display: block; padding-right: 0px; margin-right: auto; border-width: 0px;\" title=\"web8\" src=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/web8_thumb.png\" alt=\"web8\" width=\"425\" height=\"324\" border=\"0\" \/><\/a><\/p>\n<p align=\"justify\">Nast\u0119pnie uruchamiamy edytor rejestru (regedit) i w kluczu HKEY_LOCAL_MACHINE\\SOFTWARE\\VMware, Inc.\\VMware Blast\\Config w parametrze SslHash wklejamy nasz odcisk:<\/p>\n<p align=\"justify\"><a href=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/web9.png\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; float: none; padding-top: 0px; padding-left: 0px; margin-left: auto; display: block; padding-right: 0px; margin-right: auto; border-width: 0px;\" title=\"web9\" src=\"https:\/\/vm.piszki.pl\/wp-content\/uploads\/2014\/09\/web9_thumb.png\" alt=\"web9\" width=\"430\" height=\"197\" border=\"0\" \/><\/a><\/p>\n<p align=\"justify\">Nast\u0119pnie restartujemy us\u0142ug\u0119 VMware Blast (lub ca\u0142y komputer jak kto woli). Je\u015bli po restarcie SslHash uleg\u0142 zmianie (a w logu c:\\ProgramData\\VMware Blast\\Blast-Worker.log widzimy komunikat: Unable to load private key from the certificate) to oznacza, \u017ce nie oznaczyli\u015bmy klucza prywatnego jako eksportowalnego! Je\u015bli wszystko si\u0119 uda\u0142o, mamy sp\u00f3jne certyfikaty w IIS i BLAST. Je\u015bli s\u0105 jakie\u015b dodatkowe pytania to ch\u0119tnie odpowiem.<\/p>\n<div style='text-align:left' class='yasr-auto-insert-visitor'><\/div>","protected":false},"excerpt":{"rendered":"<p>Przed przyst\u0105pieniem do napisania tego posta zrobi\u0142em ma\u0142y risercz. I wysz\u0142o mi, \u017ce nie tak \u0142atwo jest zorganizowa\u0107 dost\u0119p zdalny przez przegl\u0105dark\u0119 do w\u0142asnej stacji roboczej. Istniej\u0105 r\u00f3\u017cne rozwi\u0105zania, w wi\u0119kszo\u015bci wymagaj\u0105ce instalacji serwera i klienta. Najbli\u017cszym rozwi\u0105zaniem do tego &hellip; <a href=\"https:\/\/vm.piszki.pl\/?p=1452\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":1464,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"yasr_overall_rating":0,"yasr_post_is_review":"","yasr_auto_insert_disabled":"","yasr_review_type":"","footnotes":""},"categories":[45],"tags":[67,68,4],"class_list":["post-1452","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-poradniki","tag-blast","tag-direct-connect","tag-horizon-view"],"yasr_visitor_votes":{"stars_attributes":{"read_only":false,"span_bottom":false},"number_of_votes":1,"sum_votes":3},"_links":{"self":[{"href":"https:\/\/vm.piszki.pl\/index.php?rest_route=\/wp\/v2\/posts\/1452"}],"collection":[{"href":"https:\/\/vm.piszki.pl\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/vm.piszki.pl\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/vm.piszki.pl\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/vm.piszki.pl\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1452"}],"version-history":[{"count":8,"href":"https:\/\/vm.piszki.pl\/index.php?rest_route=\/wp\/v2\/posts\/1452\/revisions"}],"predecessor-version":[{"id":1470,"href":"https:\/\/vm.piszki.pl\/index.php?rest_route=\/wp\/v2\/posts\/1452\/revisions\/1470"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/vm.piszki.pl\/index.php?rest_route=\/wp\/v2\/media\/1464"}],"wp:attachment":[{"href":"https:\/\/vm.piszki.pl\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1452"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vm.piszki.pl\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1452"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vm.piszki.pl\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1452"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}