O desenvolvimento ou a manutenção de sites são demandas comuns em qualquer empresa que trabalhe com esses serviços. Manter a segurança dos processos é uma das obrigações dos profissionais e, para isso, é necessário usar os recursos principais.
O protocolo SSH é um dos parâmetros de trabalho que garantem que as informações estarão devidamente protegidas.
A comunicação de um computador com um servidor é uma atividade recorrente durante essas demandas de gestão de um site. Transferir dados é parte integrante da tarefa e, quando ela chega a esse estágio, é fundamental garantir que o processo seja seguro e, principalmente, protegido.
Neste post falaremos mais sobre o protocolo SSH e como ele se torna fundamental. Confira um conteúdo detalhado, de acordo com os seguintes tópicos:
- O que é o protocolo SSH?
- Quando o SSH precisa ser acessado?
- Quais são as criptografias usadas pelo SSH?
- Como acessar o protocolo SSH?
Continue a leitura e confira!
O que é o protocolo SSH?
SSH é uma sigla, ou acrônimo, para o termo secure shell, que significa cápsula segura. Na prática, o protocolo SSH é um mecanismo de segurança oferecido pelos serviços de hospedagem.
A função dele é garantir que haja uma conexão segura entre o computador e o servidor remoto, o que garante a transferência de dados sem nenhuma perda de informação.
O SSH tem a função de permitir aos usuários e desenvolvedores realizarem qualquer modificação em sites e servidores utilizando uma conexão simples. Dessa forma, por meio de um computador ligado à internet, essa pessoa consegue configurar, modificar arquivos ou até mesmo trabalhar no desenvolvimento de uma página da web.
A proposta desse protocolo é justamente criar um método seguro e que garanta que não haverá nenhuma invasão desses arquivos e de seus códigos. Por isso, são usadas criptografias que garantem que somente dois pontos acessem as informações: o servidor e o computador que enviou os dados para esse local remoto.
O funcionamento do protocolo
Na prática, o SSH fornece o mecanismo para que haja a autenticação desse usuário remoto, garantindo que essa pessoa tenha autorização para se comunicar com o servidor. Dessa maneira, é criada a conexão por meio do protocolo e as informações são transportadas nesse modelo de secure shell, com a criptografia que protege os dados.
O SSH é acessado via terminal, independentemente do sistema operacional usado, e então é desenvolvida a criptografia que vai proteger as informações. Por meio da janela é feita a conexão com o servidor remoto, e então o processo se desenvolve.
Quando o SSH precisa ser acessado?
O SSH é um recurso utilizado em momentos específicos e para trabalhos que são rotineiros para os programadores e desenvolvedores. Dos testes às alterações quando o site já está pronto, há diversas etapas em que é necessário criar uma conexão segura entre o ponto de acesso e o servidor remoto.
A seguir, entenda melhor quando o protocolo é utilizado e veja de que maneira ele se faz relevante em cada uma dessas ocasiões.
Programação
A programação é uma etapa de trabalho que está relacionada com a criação de um site. Programadores desenvolvem códigos, fazem alterações e precisam testar de que maneira todo esse desenvolvimento se comporta com a aplicação no ar.
Para isso, é necessário transferir os dados para o servidor e então analisar o comportamento das páginas online. Esse procedimento pode ser feito até mesmo na instalação de um CMS, como o WordPress. Assim, é possível visualizar se os comandos enviados do painel são ativados corretamente.
Durante todo o processo, por várias vezes, a troca de informações com o servidor remoto deverá ser feita, o que justifica a necessidade de assegurar a segurança dos códigos. Proteger essa informação é a garantia de que a estrutura construída para aquele site não será indevidamente desviada. Isso protege a propriedade intelectual do profissional e o investimento do cliente.
Deploy
O deploy é um processo muito comum na rotina de desenvolvedores e se trata de um trabalho de atualização do site, que geralmente é composta por mudanças ou por novas aplicações implementadas nele. O deploy é um trabalho mais longo e que envolve, na maioria das vezes, a transferência de um alto nível de arquivos, o que também requer um método seguro.
Por isso, o uso do SSH é a melhor maneira de conduzir esse trabalho. O protocolo costuma ser uma opção recorrente dos profissionais responsáveis por cuidar dessas tarefas. Por meio do secure shell, há a garantia de que a transferência das novas aplicações e das alterações seja feita no tempo adequado, sem falhas e sem a perda de qualquer informação.
Quais são as criptografias usadas pelo SSH?
A criptografia é o que garante, além da segurança do site, também a proteção dessa tarefa de conexão entre o cliente e o servidor remoto. No entanto, há diferentes estruturas de criptografia que podem ser aplicadas na hora de usar o protocolo SSH nessa demanda. São, basicamente, três alternativas: simétrica, assimétrica e hashing. Confira mais sobre elas a seguir.
Criptografia simétrica
Essa é uma forma de criptografia que é realizada por meio de uma chave secreta, essa que é compartilhada apenas entre o servidor e o usuário. Seu papel é criptografar ou descriptografar a mensagem que é transferida nesse processo, no entanto, o secure shell só oferece a leitura do conteúdo mediante a apresentação dessa chave.
A nomenclatura de referência à simetria é originada do processo utilizado para gerar essa chave. Ela é criada por um algoritmo que, automaticamente, envia a chave para as duas partes envolvidas: cliente e servidor. No entanto, não há a transferência dessa informação entre as duas partes, cabendo ao algoritmo enviar a cada uma separadamente.
Cada vez que uma sessão SSH é criada, uma nova chave de criptografia é gerada no momento anterior à autenticação. Assim, na hora de transferir o arquivo, o usuário já tem a senha utilizada para criptografar o conteúdo e então realizar esse envio ao servidor.
Segurança de hospedagem: como garantir a do seu site
Criptografia assimétrica
Esse modelo é o oposto do anterior: são usadas duas chaves, uma para o cliente e outra para o servidor, para que haja a criptografia dos dados transferidos. As chaves são chamadas de pública e privada, formando então a combinação necessária para gerar o SSH e seu protocolo de segurança.
Nesse modelo, a chave pública é distribuída de forma aberta e compartilhada. No entanto, a partir dela não é possível descobrir qual é a chave privada. Isso acontece graças a um processo que funciona da seguinte maneira: mensagens criptografadas por chaves públicas só podem ser descriptografadas pela chave privada da mesma máquina.
A chave privada, em meio a esse processo, deve permanecer inacessível a terceiros, sendo de posse e uso somente do cliente. Isso é fundamental, uma vez que seu uso possibilita descriptografar as chaves públicas, e assim acessar o conteúdo transferido.
Hashing
O hashing é um método unidirecional de criptografia usado no SSH. Essa prática consiste em criar um hash, por meio de um algoritmo, para garantir que a mensagem será protegida em uma forma específica de criptografia e códigos de autenticação. O processo é feito usando HMACs (Hash-based Message Authentication Codes), garantindo que não haja violação nos códigos que serão recebidos pelo servidor remoto.
Como acessar o protocolo SSH?
O protocolo SSH pode ser acessado de forma segura por meio de duas metodologias principais: um acesso simples com login e senha ou com um par de chaves. A seguir, entenda como cada um deles é executado e quais são os processos que garantem a segurança das transferências.
Com login e senha
É necessário, primeiramente, se conectar ao servidor da hospedagem do site. Lá você precisa inserir o endereço, que geralmente é o domínio do site ou até mesmo o IP, e a sua senha de acesso. Você terá essas informações claras, uma vez que a hospedagem informar de maneira simples nessa relação com o cliente.
Após isso, o terminal será acessado normalmente. Então é necessário inserir o seguinte comando, incluindo o nome do site após o “@”: “$ ssh [email protected]“.
Você também pode utilizar o IP do site. Para isso, use o mesmo comando, apenas substituindo o endereço pelo número após o “@”.
Após digitar o comando e pressionar “enter”, você verá a seguinte mensagem: “Are you sure you want to continue? (yes/no)“.
Você precisará digitar “yes” e apertar “enter”. Em seguida, sua senha de acesso será solicitada, bastando digitá-la e pressionar “enter” novamente. Isso fará com que você visualize todos os arquivos do servidor, incluindo as pastas. É justamente o arquivo “public_html/” que será o diretório a receber todas essas mudanças.
Com o par de chaves
O acesso por chaves é ainda mais seguro e simples: o servidor tem uma chave pública e o usuário tem uma chave privada. Elas, quando cruzadas, geram uma combinação de texto que garante a autenticidade das informações de acesso que o cliente tem para transferir os arquivos.
A chave pública fica armazenada no servidor, enquanto a privada fica no computador do usuário. Quando a solicitação de acesso é feita, as informações são cruzadas e, se tudo estiver certo, a descriptografia acontece normalmente.
O protocolo SSH é uma possibilidade segura, dinâmica e que garante que o servidor estará sempre à disposição do cliente. Garantir a segurança de informações estratégicas se faz fundamental para que a atualização de sites não gere riscos.
Gostou das informações que trouxemos neste artigo? Aproveitando o assunto, saiba tudo sobre como realizar uma auditoria em seu site!