Skip to content

bitforgebr/RemoteAgent

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Instalador de um ssh Windows standalone

O instalador do server do sincronismo de arquivos é apenas um executável com todas suas dependências embutidas, incluindo o Cygwin (e seus módulos necessários, rsync e openssh) e o NSIS, o gerador de instalador que será usado no server para gerar o instalador da versão client.

ATENÇÃO: Para que a geração do instalador na máquina do desenvolvedor funcione corretamente será necessário o uso das ferramentas Psexec e o instalador do NSIS.

ATENÇÃO: O arquivo cygwinfiles.exe necessário para a geração do instalador server é um SFX gerado pelo 7zip da pasta de download de uma instalação default do Cygwin camada de cygwinfiles mais os módulos rsync e openssh. Após a geração dessa pasta, no mesmo diretório deve ser copiado o executável de setup (setup-x86_64.exe). O servidor do cygwin usado para download não é relevante, mas é relevante que as dependências rsync e openssh estejam devidamente baixados.

A geração do instalador-server pode ser feita direto do projeto do Visual Studio localizado na pasta Install, RemoteAgentInstaller, RemoteAgentInstaller.sln. É nesta pasta que deve se encontrar o arquivo cygwinfiles.exe, necessário para a instalação do Cygwin na máquina servidora.

Ao executar o instalador server, existirão três módulos selecionados: Cygwin, Server e NSIS. Se o Cygwin já estiver instalado nesta máquina sua reinstalação será desnecessária. Se o NSIS já estiver instalado ou não for usado este modelo de instalador client para o rsync, não será necessário instalar. O Server é o conjunto de passos necessários para configurar ou reconfigurar o serviço server de ssh que irá receber as requisições de sincronismo de arquivos, além da montagem dos binários necessários para a construção do instalador cliente.

Ao clicar em instalar deixe o processo prosseguir. Serão instalados os módulos escolhidos automaticamente. Os arquivos do cygwin estão compactados em um SFX que será extraído e iniciada sua instalação. Os scripts do cygwin necessários, ssh-host-config e ssh-user-config, serão instalados em seguida.

Apenas a parte de instalação do NSIS está no manual, o usuário devendo seguir a instalação com seus valores default, exceto a última tela, onde ele poderá desclicar as opções de executar a ferramenta e abrir o README da instalação.

Após a conclusão do instalador, na pasta de instalação (c:\remoteagent) existirão as pastas rsync, com as dependências do cygwin no cliente, home, com as chaves de criptografia do cliente, e uploads, para o teste de envio de arquivos no cliente.

Dentro da pasta-raiz há a batch GenerateRemoteAgentClientInstaller.bat que executa o NSIS gerando o instalador cliente baseado no projeto (na mesma pasta) RemoteAgentInstallerClient.nsi. O executável gerado pode ser usado para instalar a versão cliente nas máquinas onde se deseja fazer o teste de sincronismo.

As pastas geradas no client refletem as do server, com a rsync e home sendo réplicas.

ATENÇÃO: O SSH não executa corretamente a não ser que as chaves do cliente estejam fechadas apenas para ele. Essa é uma medida de segurança aplicada by design. Cada conta do cliente deverá fechar sua chave usando os comandos abaixo (em conta elevada):

ssh\chgrp Users ~/.ssh/id_rsa
ssh\chmod 600 ~/.ssh/id_rsa

Fonte: https://stackoverflow.com/questions/9270734/ssh-permissions-are-too-open-error

Com a instalação cliente concluída, rode um prompt de comando na conta do usuário ssh_client e execute a batch TestClient.bat dentro da pasta ssh.

Após a conclusão da execução, se estiver tudo correto, uma pasta com o nome da máquina-cliente terá sido criada no servidor dentro da pasta uploads, e dentro dela uma cópia do próprio script que foi executado.

Para testar uma sessão remota basta executar o comando ssh.exe em sua forma mais comum:

No servidor é possível ver que tanto a sessão quanto os processos criados pela sessão remota pertencem ao usuário especificado:

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages