linux - Udførelse af exe eller bat-fil på fjernvinduer fra * nix

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg forsøger at udføre en flagermusfil på fjernvinduer på skyen fra min Linux. Batfilerne starter selenserveren og derefter køres mine selenprøver. Jeg kan ikke starte selen RC-server på den pågældende maskine. Jeg forsøgte med Telnet, men problemet med det er, når telnet-session er lukket, er RC-serverporten også lukket. Som min kode skal min kode starte serveren, så jeg forsøgte med ANT telnetopgave og også udført shell script af telnet på begge måder porten blev lukket.


Jeg læste om Open SSH, psexec til linux og cygwin. Men jeg får ikke, hvordan man bruger disse og vil de løse mit problem.


Jeg har forsøgt at starte en tjeneste, der starter serveren, men i denne metode får jeg ikke browseren synlig, alle tests kører i baggrunden, da mit script tager skærmbillede, browserens synlighed er et must.


Nu er mit spørgsmål hvad du skal bruge, og som vil være at foretrække for mit job.
og hvad jeg vælger, skal udføres med kode, det kan være med shell, ant eller php.


Tak på forhånd.

Bedste reference


Jeg foretrækker at bruge cygwin og bruge SSH til derefter at logge ind på Windows-maskinen for at udføre kommandoer. Vær opmærksom på, at cygwin som standard ikke har OpenSSH installeret.


Når du har SSH, der arbejder på Windows-maskinen, kan du køre en kommando på den fra Linux-maskinen som denne:


ssh user@windowsmachine 'mycommand.exe'


Du kan også oprette ssh-godkendelsestaster, så du ikke behøver at indtaste en adgangskode hver gang. [2]

Andre referencer 1


Lad os gå gennem de forskellige muligheder du nævnte:



  • psexec : Dette er stort set en eneste pc. Plus, du skal sørge for, at nyere Windows-maskiner kan komme igennem UAC'en, som er konfigureret som standard. UAC er den ting, du ser hele tiden på Vista og Windows 7, når du forsøger at gøre noget, der kræver administratorens privilegier. Du kan prøve noget, der hedder winexe, hvilket er et Linux-program, der kan gøre psexec protokollen, men jeg har haft problemer med at få det til at fungere.

  • OpenSSH : Der er to vigtigste smag af SSH, og Open SSH er den, der bruges af de aller fleste websteder. SSH har flere fordele i forhold til andre metoder:


    • SSH er sikker : Din netværkstrafik er krypteret.

    • SSH kan være uafhængigt af adgangskode : Du kan konfigurere SSH til at bruge private/offentlige nøgler. På denne måde behøver du ikke engang at kende adgangskoden på den eksterne server. Det gør det mere sikkert, da du ikke har adgangskoder gemt på forskellige systemer. Og på mange Windows-websteder skal adgangskoderne ændres hver måned eller så eller kontoen er låst.

    • SSH kan gøre mere end blot at udføre fjernkommandoer : Der er to subprotokoller på SSH kaldet SCP og SFTP. Disse giver dig mulighed for at overføre filer mellem to maskiner. Da de arbejder over SSH , får du alle fordelene ved SSH , herunder krypterede pakker og offentlig/privat nøglebeskyttelse.

    • SSH er godt implementeret i Unix World : Du finder SSH klienter indbygget i Ant, Maven og andre byggeværktøjer. Programmer som CVS, Subversion og Git kan også arbejde over SSH-forbindelser . Desværre arbejder Windows World i en anden rumtidsdimension. Hvis du vil bruge SSH på et Windows-system, kræves tredjeparts software som Cygwin.


  • Cygwin : Cygwin er et mærkeligt dyr. Det er et lag oven på Windows, der gør det muligt for mange Unix/GNU-biblioteker at fungere over Windows. Det blev oprindeligt udviklet til at give Unix-udviklere mulighed for at køre deres software på Windows DOS-systemer. Men Cygwin nu indeholder et komplet Unix-lignende system, herunder værktøjer som Perl og Python, BASH shell og mange værktøjer såsom en SSH-server. Da Cygwin er open source, kan du downloade det gratis og køre SSH-server. Desværre har jeg haft problemer med Cygwins SSH-server. Et andet problem: Hvis du 'kører programmer fjernt, vil du sikkert køre dem i et Windows-miljø og ikke Cygwin-miljøet.



Jeg anbefaler at du kigger på WinSSHD fra Bitvise. Det er en OpenSSH implementering af SSH Server, men det er ikke open source. Det er omkring $ 100 per licens, og du har brug for en licens på hver server. Det er dog en robust implementering og har alle de funktioner, som SSH har at tilbyde. [3] [4] [5] [[[6]


Du kan se på CoSSH, som er en pakke af Cygwin utilities og OpenSSH server. Dette er gratis og alle åbne kilder, men hvis du vil have en nem måde at konfigurere det på, skal du betale for den avancerede administratorkonsol. Du behøver ikke den avancerede administratorkonsol, da du kan bruge Cygwin til at indstille alt, og det kommer med en grundlæggende konsol til at hjælpe. [7] [8]

Andre referencer 2


Ikke en meget sikker måde, men hvis du har en kørende webserver, kan du bruge PHP eller ASP til at udløse en systemkommando. Bare skjul thgat script under www.myserver.com/02124309c9867a7616972f52a55db1b4.php eller noget. Og sørg for, at kommandoen er fast skrevet i koden, ikke åben via parameter ...