Como configurar um servidor SFTP no Windows usando o OpenSSH

Transferir dados sem fio pela rede local não é algo novo, as pessoas fazem isso há muito tempo. Você pode estar ciente do que estou falando: uma conexão FTP. Com um cliente FTP, você pode conectar um dispositivo a outro para transferir seus dados pela rede.

Mas como o protocolo FTP não é seguro em primeiro lugar, considere abandoná-lo em favor de algo melhor.

Para quem não sabe, existe um protocolo de transferência sem fio muito melhor e é chamado SFTP. OS no SFTP significa literalmente seguro. Ele criptografa as informações de login da conexão e os dados transferidos. Portanto, ninguém pode entrar e mexer na transferência de dados. O FTP, por outro lado, é seguro, pois quem escuta o tráfego da rede obtém as informações desprotegidas.

O bom do SFTP é que você pode usá-lo para tudo o que usou no FTP. Assim, você obtém melhor segurança gratuitamente. O que você tem a perder, certo?

Agora há apenas um problema. As versões do Windows anteriores ao Windows 10 não vêm com SSH, portanto, você precisará instalar o OpenSSH (ou algo semelhante). Esta é uma implementação de SSH de código aberto, e adivinha quem a recomenda? Microsoft O OpenSSH está incluído no Windows 10 e Windows Server 2019.

Este tutorial é baseado na documentação original do OpenSSH. O guia oficial pode parecer intimidador e é por isso que criamos um tão amigável quanto possível. Você pode seguir esse método em qualquer versão do Windows que testei no Windows 7.

Como configurar um servidor SFTP no Windows usando o OpenSSH

Esse processo consiste em duas partes: instalando o OpenSSH e abrindo uma porta SSH para o SFTP funcionar.

Instalando o OpenSSH (e ativando os serviços necessários)

  1. Faça o download do OpenSSH no GitHub.
  2. Extraia o arquivo morto para a pasta Arquivos de Programa.
  3. Abra o PowerShell como administrador e cole o seguinte comando na janela, para navegar para a pasta: cd "C: \ Arquivos de Programas \ OpenSSH-Win64".
  4. O SSH requer dois serviços para executar, sshd e ssh-agent. Para instalá-los, cole o seguinte comando na janela do PowerShell: powershell.exe -ExecutionPolicy Bypass -Arquivo install-sshd.ps1 . Você deverá ver uma mensagem que diz "serviços sshd e ssh-agent instalados com sucesso".
  5. Feche a janela do PowerShell.
  6. Você pode iniciar os serviços manualmente ou configurá-los para abrir automaticamente, usando Services.msc . Isso criará a pasta "C: \ ProgramData \ ssh" com a chave do host, que é crucial para o serviço funcionar.

Nota : Os serviços são nomeados OpenSSH Authentication Agent e OpenSSH SSH Server.

Abrindo a porta SSH no Firewall do Windows manualmente

  1. O SSH usa a porta 22 para transferência / autenticação, que é fechada no Windows porque o SSH não está incluído por padrão. Para abri-lo, abra o Firewall do Windows no Painel de Controle.
  2. Clique em Regras de entrada (no painel esquerdo).
  3. No painel direito, clique em nova regra, selecione Porta e clique em Avançar.
  4. Digite o número 22, na opção Portas locais específicas e clique em Avançar.
  5. Escolha "Permitir a conexão", clique em Avançar e selecione "Privado" para a opção de rede.
  6. Dê um nome à regra. Por exemplo, SSH ou OpenSSH.
  7. Clique em Concluir.

É isso aí, você está pronto para ir.

Testando o servidor SFTP

Vamos testar se funciona. Você precisa de um cliente SFTP para fazer isso. WinSCP é o que eu uso no Windows, mas você pode usar qualquer outro que suporte SFTP, por exemplo, FileZilla, FTP Rush ou um gerenciador de arquivos com suporte a SFTP, como Altap Salamander.

Para o Android, você tem muitas opções; O Total Commander e o Ghost Commander possuem plug-ins SFTP, enquanto alguns aplicativos como o Amaze File Manager ou o X-plore File Manager possuem o recurso incorporado.

janelas

Execute o WinSCP e selecione "SFTP" como o protocolo. No campo nome do host, digite "localhost" (se você estiver testando o PC em que instalou o OpenSSH). Você precisará digitar seu nome de usuário e senha do Windows para permitir que o programa se conecte ao servidor. Clique em salvar e selecione login.

Você verá uma janela pop-up como a abaixo, que pergunta se você confia no servidor ao qual está tentando se conectar. Como o servidor é seu próprio computador, você pode permitir. Basicamente, essa é a chave do host que autentica a conexão estabelecida pelo dispositivo. Você pode usar isso para transferir conteúdo de um computador para outro também.

Nota: Se sua conta de usuário do Windows não tiver uma senha, será necessário usar uma chave pública para autenticar o servidor SFTP, o que envolve um processo separado. Você pode criar uma conta diferente no sistema para acessar SFTP, mas pode precisar disponibilizar arquivos fora do diretório do usuário.

Android

Vamos usar o Amaze File Manager, que é de código aberto. Toque no botão + e selecione "Conexão na nuvem". Escolha a conexão SCP / SFTP e um pop-up deve aparecer. Encontre o endereço IP do seu computador usando o prompt de comando e o comando IP config. Por exemplo, meu PC tem o endereço 192.168.1.9

Digite-o no campo servidor, deixe o número da porta como 22 e digite seu nome de usuário e senha do Windows nos respectivos campos. Ele deve se conectar ao seu computador e você poderá acessar todo o conteúdo que pode ser acessado pela conta do Windows.

Palavras finais

Uma das principais vantagens da operação é que você pode acessar ou transferir arquivos através de uma rede facilmente; isso não é algo que todos os usuários precisam e certamente existem outras opções para atingir o mesmo objetivo, dependendo das necessidades individuais.

Agora você : Você já configurou o SSH no passado ou o usa ativamente?