fbpixel
Etiquetas:
0
(0)

O protocolo SSH (Secure Socket Shell) é amplamente utilizado para estabelecer ligação a um servidor remoto ou a uma máquina ligada a uma rede. Permite a troca de ficheiros e a criação, modificação ou execução de scripts em máquinas remotas.

O SSH é geralmente instalado como padrão em distribuições Linux ou Windows.

Descrição do protocolo SSH

O protocolo SSH (Secure Shell) é um protocolo de comunicação criptográfico utilizado para estabelecer ligações seguras e confidenciais entre dois sistemas informáticos através de uma rede. O seu princípio baseia-se na utilização de métodos de cifragem assimétricos e simétricos para proteger os dados que passam entre sistemas. Os utilizadores são geralmente autenticados através de pares de chaves criptográficas, constituídos por uma chave pública e uma chave privada, que garantem a verificação segura da identidade do utilizador. A principal utilidade do SSH reside no seu papel na segurança do acesso remoto a servidores, na transferência de ficheiros seguros e na gestão de sistemas à distância, oferecendo uma proteção robusta contra potenciais ameaças, incluindo ataques man-in-the-middle e interceção de dados sensíveis.

Abrir uma sessão SSH

Para ligar a um dispositivo

ssh <host>@<serveur>

exemplo para um raspberry pi

ssh pi@192.168.1.2

Uma vez estabelecida a ligação, o monitor pedir-lhe-á a palavra-passe para aceder ao terminal remoto.

Se a sua máquina remota o permitir, a etiqueta -X pode ser usada para mostrar as janelas na sua máquina

ssh -X <host>@<serveur>

Copiar um ficheiro remoto utilizando o protocolo SSH

La commande à utiliser pour copier un fichier d’une machine distante à une autre est la commande scp

scp <source> <destination>

scp root@192.168.1.33:script.py C:\Users\ADMIN

Será pedida uma palavra-passe para validar a cópia.

Iniciar sessão com uma palavra-passe

No Linux, pode instalar e utilizar o SSH

sudo apt-get install sshpass
sshpass -p {password} ssh {user}@{ipaddress}

No Windows, o Putty pode tratar da gestão de palavras-passe

Instale o PuTTy e adicione a pasta executável à variável de ambiente Path (C:\Program Files\PuTTY)

putty -ssh "root@192.168.1.32" -pw root #pour ouvrir une connexion en directe

Para enviar encomendas em direto, utilizamos o plink

plink -ssh <username>@<host> -pw <password> <command>

Exemplo

plink -ssh root@192.168.1.32 -pw root uname -a

Usando Python para enviar comandos SSH

Utilizamos a biblioteca de subprocessos para executar comandos de terminal

import subprocess

subprocess.Popen(f"ssh {user}@{host} {cmd}", shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE).communicate()

Enviando comandos SSH que requerem uma senha via Python

python3 -m pip install paramiko
ssh = paramiko.SSHClient()
#ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) #if missing
ssh.connect(server, username=username, password=password)
ssh_stdin, ssh_stdout, ssh_stderr = ssh.exec_command("uname -a")
print("connected via SSH")
print(ssh_stdout.read().decode())
ssh.close()

Aplicações

Fontes

How useful was this post?

Click on a star to rate it!

Average rating 0 / 5. Vote count: 0

No votes so far! Be the first to rate this post.

As you found this post useful...

Follow us on social media!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?