4Aug

Como obter acesso de linha de comando SSH ao Windows 7 usando Cygwin

Você está confortável com o Linux / Unix e quer acesso SSH à sua máquina do Windows 7?O Cygwin fornece essa funcionalidade e oferece um ambiente familiar para trabalhar com algumas simples etapas.

Estamos supondo que você tenha o Cygwin instalado e configurado. Caso contrário, consulte o nosso artigo, Como usar comandos Linux no Windows com o Cygwin para começar.

Instalando o OpenSSH

O OpenSSH é o que usaremos, portanto, se você não tiver instalado, encontre o arquivo setup.exe da Cygwin e execute-o.

Você pode manter todos os mesmos padrões que quando você configurou originalmente o Cygwin. Na tela de seleção de pacotes, procure "abrir" e veja no menu "Net".

Você verá um pacote chamado "openssh".Clique na coluna "Novo", onde diz "Saltar" até ver um X aparecer na coluna "Bin?".Olhe para a captura de tela anterior para onde clicar se você estiver confuso. Acerte "Next" e termine o resto do processo de configuração, assim como você fez a última vez.

Configurando o OpenSSH no Cygwin

Ao contrário da maioria das distribuições do Linux, o OpenSSH não se configurará automaticamente para ser executado e apenas funcionar. Precisamos executar algumas etapas fáceis. Primeiro, clique com o botão direito do mouse no seu atalho Cygwin e clique em "Executar como administrador":

Isso garantirá que possamos os privilégios apropriados para tudo. Você verá uma janela Cygwin vazia aparecer.

Digite o seguinte comando:

ssh-host-config

Você verá o script gerar alguns arquivos padrão e, em seguida, você será solicitado a ativar ou não a opção "Privilege Separation". Ele está ativado por padrão no padrãoinstalações do OpenSSH em outros sistemas, então vá em frente e diga "sim" ao prompt.

Você será solicitado a criar uma nova conta com privilégios especiais. Selecione "sim" e o script continuará.

Em seguida, você será perguntado se deseja que o sshd seja executado como um serviço. Isso permitirá que você obtenha acesso SSH independentemente de o Cygwin estar atualmente em execução, ou seja, o que queremos. Vá em frente e pressione "sim" para continuar.

Em seguida, você será solicitado a inserir um valor para o daemon. Digite o seguinte:

ntsec

Você verá o script fornecer algumas informações no seu sistema e, em seguida, solicitará que você crie uma conta privilegiada com o nome de usuário padrão "cyg_server".O padrão funciona bem, então digite "não" quando ele pergunta se você deseja usar um nome de conta diferente, embora você possa mudar isso se você realmente gosta.

Claro, você terá que inserir uma senha para esta conta também.

Cygwin mostrará sua senha em texto simples para verificação, então fique certo de estar em um lugar seguro. Você verá algumas informações extras surgir e se tudo estiver bem, você receberá uma mensagem que diz que ela foi concluída com sucesso.

Você pode reiniciar ou digitar o seguinte comando para iniciar o serviço sshd:

net start sshd

Agora, você pode digitar "sair" para fechar esta instância Cygwin.

Configuração do usuário do SSH

Em seguida, criaremos as chaves SSH apropriadas para sua conta de usuário. Abra o Cygwin normalmente e digite o seguinte comando:

ssh-user-config

Você será solicitado a criar chaves específicas para sua conta de usuário, então use o que precisa. Eu segui adiante e disse "não" para a primeira pergunta, e "sim" para o segundo.

SSH2 é mais seguro, então é o que eu recomendo para você.Depois de inserir uma senha, você será perguntado se você deseja usar essa ID para acessar sua máquina. Digite "sim".

Em seguida, você será solicitado a criar um arquivo IDH SSH2 DSA, se você quiser usar o acesso sem senha. Eu declinou nesta etapa.

É isso! Você está tudo configurado. Se você quiser testar sua configuração muito rapidamente, digite o seguinte comando na sua janela Cygwin:

ssh -v localhost

A opção -v significa "detalhado" e fornece todos os detalhes do processo. Você será perguntado se você deseja continuar se conectando, então digite "sim" e, em seguida, insira sua senha no prompt. Lembre-se de que, quando você inserir seu nome de usuário, é sensível a maiúsculas e minúsculas.

Se tudo funcionou bem, você verá um prompt normal de bash.

Problemas menores

Se você estiver preso em qualquer uma das etapas de configuração, verifique se a Conta de usuário do Windows que você está executando possui acesso administrativo. Você pode obter erros esquisitos se você tentar executar a configuração do host como um usuário normal, então certifique-se de executar Cygwin com privilégios de administrador durante essa etapa. Se, quando você sair, você recebe um prompt sobre como deixar seus trabalhos em lote em execução, você pode pressionar "não" para terminá-los.

Finalmente, se você testar o acesso SSH de outra máquina e obter um erro, verifique se o seu firewall não está bloqueando o acesso à porta 22( ou 23 se você estiver usando SFTP).

Isso funciona muito bem se você gosta da capacidade de obter acesso SSH / SFTP aos seus arquivos em uma máquina do Windows 7 e você também quer um shell familiar para fazer isso. Cygwin monta unidades do Windows para "/cygdrive/ driveletter" caso você quisesse saber.;-)