Zdalna instalacja programu

0

Witam
Mam taki problem. Piszę aplikację klient-server. Chciałbym, aby na każdym sieciowym komputerze był agent, który łączy się z Serwerem i wysyła jakieś tam dane do niego. Ale chciałbym wykombinować tak, aby instalacja agenta na każdym komputerze odbywała się automatyczne poprzez sieć. Wiem, że należy mieć konto administratora na zdalnym komputerze i podejrzewam, że należy tu wykorzystać protokół smb albo potoki . Cała sprawa ma odbywać się na systemach Windows.

Za ewentualną pomoc dziękuję

0

Właściwie należy rozpatrzyć dwa osobne konteksty tego problemu:

  1. Nie masz na komputerze klienta żadnej aplikacji, zdolnej do pobrania agenta,
  2. Masz już tam jakiś updater.

W przypadku (1.) ktoś/coś musi zainicjować instalację agenta lub aplikacji do jego pobrania. Zależnie od uprawnień wymaganych dla danego systemu, zalecane jest podłączenie się na prawach administratora. Może to zrobić użytkownik (i gdzie tu automatyzacja :) ), może to zrobić zdalny użytkownik (wcześniej wymagane włączenie zdalnego pulpitu lub innej aplikacji VNC) lub inna, zainstalowana aplikacja (najlepiej usługa systemowa).

Gdy masz już zainstalowane jakieś oprogramowania, sprawa staje się banalnie prosta: na serwerze jakimś protokołem udostępniasz plik wykonywalny agenta, a updater [może na przykład co jakiś czas, czy po włączeniu systemu] sprawdza wersję instalatora agenta, jak nowsza to pobiera i instaluje.
Protokół udostępniający nie ma znaczenia: jak SMB to skopiujesz z dysku sieciowego, jak HTTP czy FTP to z użyciem gniazd lub gotowych komponentów (na ogół wtedy wymagane pojedyncze linie kodu).

Podstawowa rzecz, musisz pamiętać, że samo z siebie nic się nie zainstaluje - jakoś ten proces musisz zacząć: albo jako użytkownik, albo dzięki innemu programowi.

0

Dzięki za odpowiedz

http://www.pckurier.pl/archiwum/art0.asp?ID=5643

Witam, to jest link do strony, na którym jest opisany między innymi AntiVirenKit. Jego funkcja to między innymi zdalna instalacja antyvira na komputerze sieciowym. Admin serwera wprowadza tylko nazwę konta administratora i hasło, jakie występuje na kliencie i cyk agent antywirusowy jest zainstalowany. To musi być jakaś funkcja, którą udostępnia Windows. Mam zamiar sprawdzić za pomocą ethernela co jest wysyłane pomiędzy klientem i serwerem ale na razie nie mam możliwości, więc tak zapytałem się na forum.

0

Pewnie dane zdalnego pulpitu..

0

Komputer kliencki musi jakoś być przystosowany do nadejścia połączenia i wykonywania tego, co mu serwer powie. Może to być zdalny pulpit (który domyślnie jest wyłączony i też trzeba go skonfigurować) lub jakiś mini instalator ręcznie odpalony.

0

Z Windowsa to jeszcze przez WMI mozna probowac. Pozwala odpalac polecenia na kompie-kliencie. Po uprzednim zalogowaniu sie na konto uzytkownika z uprawnieniami oczywiscie.

0

Witam ponownie
Po dłuższych poszukiwaniach doszedłem do takich wniosków, w jaki sposób można byłoby to zrobić. Otóż jak się w pisze w oknie konsoli polecenie „net share” wyświetli się miedzy innymi taki udział


ADMIN$ G:\WINDOWS Administracja zdalna

Jest to standardowy zasób, który tworzy system Windows. I jak widać prowadzi on do systemowego folderu.

I jak wpiszemy \nazwa_netbios_komputera\ADMIN$ w zależności zostaniemy poproszeni o nazwę i hasło do konta który ma uprawnienia między innymi do zapisu. Czyli admina. Możemy w tedy skopiować instalator agenta i odpalić go, co zainstaluje program. No oczywiście musi to wszystko zostać wykonane programowo przy jakimś tam Winapi w raz podaniem parametrów konta. Wiem, że udostępnianie plików i folderów używa protokołu smb. Spróbuję poszukać jakiś gotowych funkcji w C#. A może macie jakieś gotowe rozwiązania?

0

Tak jak mowilem - WMI. Umozliwia zalogowanie sie na kompa i taki scenariusz jaki mniej wiecej podales. Do tego jak chcesz C#, to .NET umozliwia klasy dostepowe do WMI. Sprawdz sobie tylko czy usluga wlaczona jest domyslnie, czy nie (o ile pamietam, to nie). Kiedys pisalem taki instalator zdalny i takie bylo zastosowane rozwiazanie wlasnie (swoja droga tez korzystalismy z net share).

0

jeśli program będzie instalowany w sieci domenowej to instalację na komputerach podłączonych do domeny załatwia jedna Group Policy.

1 użytkowników online, w tym zalogowanych: 0, gości: 1