Ligar o PowerShell através do SSH
Com o PowerShell SSH, pode aceder e gerir sistemas remotos a partir de praticamente qualquer lugar. O SSH também oferece funcionalidades de registo detalhadas que permitem uma supervisão e um acompanhamento exaustivos das atividades no servidor.
Requisitos para utilizar o PowerShell SSH
A integração do SSH no Windows PowerShell permite-lhe estabelecer ligações SSH a sistemas remotos e executar comandos SSH num script do PowerShell. Isto facilita a gestão e a automatização de tarefas em infraestruturas de TI distribuídas, especialmente num ambiente heterogéneo onde coexistem sistemas Windows e não Windows.
Para utilizar o PowerShell SSH, é necessário cumprir os seguintes requisitos:
- Instalar o PowerShell: certifique-se de que o PowerShell v6+ está instalado no seu computador local. O PowerShell geralmente vem pré-instalado no Windows, mas deve verificar se está a utilizar uma versão compatível com SSH.
- Cliente SSH: necessita de um cliente SSH no seu ambiente PowerShell para estabelecer ligações SSH. No Windows 10/11 e no Windows Server 2019, o OpenSSH está disponível por predefinição. Se utilizar uma versão anterior do Windows, poderá ter de instalar o OpenSSH manualmente.
- Servidor SSH: o servidor SSH é o servidor de destino ao qual se deve ligar. Pode ser um servidor Linux, um dispositivo de rede ou outro host com capacidade SSH.
- Acesso à rede: o seu computador local deve ter acesso à rede e ser capaz de alcançar o servidor SSH remoto. A porta 22 deve estar aberta para SSH nas regras da firewall.
- Módulos PowerShell: existem módulos do PowerShell que foram desenvolvidos especificamente para a utilização do SSH, como o módulo “PSSession” ou “Posh-SSH”. Deve verificar se o módulo correspondente está instalado no seu sistema para poder utilizar a funcionalidade SSH no PowerShell.
- Direitos: necessita de direitos de administrador ou permissões alargadas e de uma palavra-passe ou chave SSH para estabelecer ligações SSH a partir do seu computador local e aceder ao servidor remoto.
Como utilizar o PowerShell SSH passo a passo
Antes de poder utilizar o Secure Shell (SSH) no PowerShell, é necessário configurar o servidor OpenSSH. Depois, poderá iniciar a sessão SSH no PowerShell e executar comandos no sistema remoto.
Passo 1. Instale o OpenSSH
Clique no menu Iniciar ou digite «PowerShell» na barra de pesquisa. Selecione «Executar como administrador». O Windows PowerShell será aberto. Pode utilizar o seguinte comando do PowerShell para instalar o OpenSSH no seu computador Windows:
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0powershellPasso 2. Inicie o serviço OpenSSH
Assim que a instalação estiver concluída, poderá iniciar o serviço OpenSSH:
Start-Service sshdpowershellPodes verificar se o serviço OpenSSH está a ser executado:
Get-Service sshdpowershellO estado «Running» indica que o sshd está a ser executado corretamente.

Passo 3. Inicie automaticamente o serviço do servidor SSH
Para ativar o serviço do servidor OpenSSH sempre que o Windows for iniciado, pode introduzir o seguinte comando:
Set-Service -Name sshd -StartupType 'Automatic'powershellPasso 4. Configure o firewall
Se o firewall do Windows estiver ativo, deve adicionar uma regra para permitir o tráfego SSH na porta 22 (a porta SSH predefinida).
New-NetFirewallRule -Name 'OpenSSH-Server' -DisplayName 'OpenSSH Server' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22powershellPasso 5. Estabeleça uma ligação SSH
Agora poderá iniciar sessão no seu servidor SSH a partir de outro dispositivo. Para tal, abra o PowerShell no seu computador cliente e introduza o comando SSH com o nome de utilizador e o endereço do servidor.
ssh username@servernamepowershellSubstitua «username» pelo seu nome de utilizador SSH e «servername» pelo endereço IP ou nome de host do servidor remoto. Ao executar o comando, ser-lhe-á pedido que introduza a sua palavra-passe SSH, a menos que esteja a utilizar uma chave SSH para a autenticação.

Passo 6. Trabalhe na sessão SSH
Depois de estabelecer uma ligação SSH, poderá executar comandos no servidor remoto como se estivesse fisicamente ligado ao servidor. Para encerrar a sessão SSH e regressar ao PowerShell local, pode utilizar o comando exit.
Existe uma série de comandos SSH no PowerShell. O comando pwd significa «print working directory» e mostra o diretório de trabalho atual, por exemplo:

Aqui está uma lista de comandos que podes utilizar no PowerShell SSH:
ls/dir: mostra o conteúdo de um diretóriocd: muda o diretório no servidor remototouch/New-Item: cria um novo ficheirorm/Remove-Item: elimina ficheiros ou diretóriosmv/Move-Item: move ou renomeia ficheiros e diretóriosuseradd: adiciona um utilizadorscp: transfere ficheiros entre o cliente e o servidor
Encontrará mais comandos no nosso artigo sobre comandos do PowerShell.