Configure a autenticação Tailscale SSH
Antes de começar
Ative Tailscale SSH em um servidor compatível, configure as permissões de rede e de sessão e confira o acesso com uma identidade autorizada da tailnet.
- Servidor Linux ou variante macOS com CLI compatível com Tailscale SSH.
- Usuário local existente no destino e permissão para alterar a política.
- Console ou conexão alternativa disponível durante a ativação.
Tailscale SSH usa a identidade da tailnet e a política SSH para autorizar sessões. O servidor deve executar Linux ou a variante open source com CLI no macOS, conforme a documentação atual.
Preserve o acesso de recuperação
Mantenha o console da VPS disponível e uma sessão alternativa. Confira se o usuário local que você quer utilizar já existe. No exemplo abaixo, o usuário se chama aluno e o dispositivo pertence ao próprio usuário da tailnet.
A política precisa permitir a conexão de rede à porta 22 e a sessão SSH. O fragmento abaixo ilustra as duas partes. Integre-o à política existente, sem apagar outras permissões:
{ "grants": [ { "src": ["autogroup:member"], "dst": ["autogroup:self"], "ip": ["tcp:22"] } ], "ssh": [ { "action": "check", "src": ["autogroup:member"], "dst": ["autogroup:self"], "users": ["aluno"] } ]}Ajuste o usuário local e valide o arquivo no editor do painel. Esse exemplo atende dispositivos pessoais do próprio usuário. Servidores com tags precisam de destinos e permissões correspondentes.
Ative no servidor
sudo tailscale set --sshNo cliente, abra ssh aluno@nome-do-servidor. Siga a autenticação adicional apresentada pelo modo check. Confirme o usuário local após entrar.
Confira o alcance
Teste uma identidade autorizada e outra que não deve entrar. Revise o acesso de rede e a autorização SSH separadamente. Os grants de rede são aditivos: uma permissão restrita não retira outra mais ampla. A política SSH também considera o modo de autenticação aplicável à sessão.
Evite liberar todos os usuários locais quando você precisa de um usuário específico. A permissão para um usuário privilegiado precisa ser intencional.
Entenda a confirmação de identidade
No modo check, a conexão pode exigir nova confirmação no provedor de identidade. Essa exigência é controlada pela política SSH e pelo período de confirmação configurado. Se uma autorização check e outra accept corresponderem à mesma sessão, check tem precedência.
A identidade da tailnet e o usuário local cumprem funções diferentes. A primeira autoriza a entrada. O segundo define a sessão no sistema operacional. Escrever o nome aluno na política não cria esse usuário no Linux. Confira sua existência antes de investigar uma falha de autorização.
O exemplo utiliza a porta 22 atendida por Tailscale SSH no endereço Tailscale. Uma instalação de SSH convencional em outra porta continua sendo uma configuração distinta. Ao planejar manutenção, considere que reiniciar o daemon Tailscale pode encerrar as sessões gerenciadas por ele.
Se a sessão falhar, registre qual identidade iniciou a conexão, qual usuário local foi solicitado e qual destino foi selecionado. Compare esses três valores com a seção ssh da política antes de ampliar permissões.
Desative se necessário
No servidor, sudo tailscale set –ssh=false desativa Tailscale SSH. Confira se o SSH convencional continua configurado antes de depender dele para reconectar. Teste o retorno por uma nova sessão, mantendo o console disponível.
Confira o resultado
A identidade autorizada abre uma sessão no usuário local previsto e cumpre a autenticação check. A identidade não autorizada não consegue entrar.
Fontes e conferência
Procedimento revisado a partir da documentação oficial em 2 de novembro de 2026. Não executado em uma tailnet de laboratório nesta edição.
