Este site é traduzido automaticamente para vários idiomas usando software desenvolvido por Kohei Koyanagi. Consulte o original em inglês para maior precisão.

Por que a Splync Usa SSH — A Chave Invisível por Trás de Servidores Seguros

O Que o SSH Realmente Faz

Enquanto a Splync usa HTTPS para proteger o caminho entre seu smartphone e nosso servidor, ainda precisamos proteger o próprio servidor para garantir a segurança dos dados do usuário. Desenvolvedores de aplicativos e administradores de sistemas precisam de uma forma de acessar esse servidor para manter e implantar atualizações de forma segura. É aí que entra o SSH (Secure Shell). É um protocolo que permite que usuários autorizados façam login em computadores remotos de forma segura, mesmo em redes não confiáveis. O SSH substitui métodos antigos e inseguros como o Telnet, que enviava nomes de usuário e senhas em texto simples.

A Ideia por Trás das “Chaves”

O SSH não depende de uma senha típica. Em vez disso, utiliza chaves criptográficas — um par correspondente de uma chave pública e uma chave privada. Pense nelas como uma fechadura e uma chave que só se encaixam mutuamente. A chave pública reside no servidor, e a chave privada fica com o usuário. Ao se conectar, o servidor desafia você a provar que possui a chave privada, sem nunca revelá-la. Isso torna quase impossível para qualquer um que esteja ouvindo se passar por você. Enquanto senhas convencionais podem ser adivinhadas, vazadas ou reutilizadas, as chaves SSH são sequências criptográficas longas e aleatórias — praticamente impossíveis de adivinhar. Mesmo que alguém consiga interceptar a conexão, tudo o que verá é ruído criptografado. E como as chaves SSH nunca são enviadas pela rede, não há nada a ser roubado em trânsito.

Como é Realmente uma Chave SSH

Se você nunca viu uma chave SSH antes, pode parecer abstrata - mas é na verdade apenas um longo bloco de texto codificado. Uma chave pública geralmente tem algumas centenas de caracteres de comprimento, enquanto uma chave privada pode ultrapassar mil. Ambas são armazenadas como arquivos de texto, mas seus conteúdos parecem ruído aleatório — uma mistura de letras, números e símbolos. A chave pública é segura para compartilhar; é como colocar sua fechadura no servidor. A chave privada, por outro lado, é sua identidade digital única e nunca deve ser compartilhada. É armazenada localmente no seu computador e usada apenas para provar quem você é — sem jamais revelar a própria chave.

Chave Pública e Chave Privada

Uma chave pública é como uma fechadura que você coloca em sua casa. Qualquer um pode vê-la da rua, assim como a fechadura da sua porta da frente. Mas olhar para a fechadura não diz a ninguém como abri-la. Em outras palavras, qualquer um pode vê-la, mas apenas a chave certa pode destrancá-la. Por outro lado, a chave privada é a chave que abre a fechadura — e fica em segurança com você. Se alguém conseguir sua chave privada, pode entrar em sua casa como se fosse você. Por isso deve sempre ser mantida em segredo.

Mecanismo SSH

Cada chave pública e chave privada formam um par único um-para-um. Elas são geradas juntas por um processo matemático para que apenas essa chave privada específica possa corresponder à sua chave pública correspondente. Você pode pensar nelas como uma fechadura e uma chave feitas sob medida — forjadas juntas, e nenhuma outra chave no mundo se encaixa nessa fechadura. Mesmo que você gere outro par usando o mesmo algoritmo (como RSA ou Ed25519), os números internos serão completamente diferentes. A matemática que liga os dois é unilateral: você pode facilmente derivar a chave pública da chave privada, mas é praticamente impossível reverter o processo e encontrar a chave privada a partir da pública. É por isso que cada par de chaves SSH é único e seguro.

Como o SSH Prova Quem Você É

Quando você faz login em um servidor com SSH, sua chave privada nunca sai do seu computador. Em vez disso, o servidor envia um desafio aleatório — como um quebra-cabeça único — que apenas sua chave privada pode resolver. Seu computador assina esse desafio matematicamente, produzindo uma breve resposta que o servidor pode verificar usando sua chave pública. Se a resposta encaixar, o servidor sabe que você possui a chave privada correta — sem nunca vê-la. Essa é a magia da criptografia moderna: você pode provar sua identidade sem revelar seu segredo. A autenticação SSH funciona porque sua chave privada contém todas as informações para derivar a chave pública, mas o inverso é praticamente impossível.

Como Desenvolvedores Usam SSH na Prática

Sempre que desenvolvedores implantam código, atualizam um banco de dados ou reiniciam um serviço, muitas vezes se conectam a seus servidores remotos via SSH. Após a autenticação, eles obtêm uma conexão segura de linha de comando com o servidor. A partir daí, podem gerenciar arquivos, reiniciar serviços ou inspecionar logs — tudo criptografado de ponta a ponta. No caso da Splync, o SSH é como gerenciamos com segurança nosso servidor em nuvem. Toda ação administrativa — implantando atualizações, verificando logs, fazendo backup de dados — é feita por meio de conexões SSH protegidas por chaves criptográficas. Ninguém pode acessar o servidor sem a chave privada correta. Mesmo que alguém conheça nosso endereço IP, sem essa chave, a porta simplesmente não se abrirá.

A Seguir: Criptografia Dentro do Servidor

O SSH protege a entrada do servidor, e o HTTPS protege os dados em trânsito. Mas uma vez que os dados chegam ao banco de dados, como mantê-los seguros? É aí que entram o hashing e a criptografia — a camada final de defesa.