Protegendo o Acesso ao Servidor com Gravitational Teleport

Assegurar o acesso SSH é fundamental para manter a integridade e segurança da infraestrutura do servidor. Se você está lutando para garantir o acesso ao servidor de forma eficaz, não se preocupe. O Gravitational Teleport surge como uma solução de ponta que revoluciona a forma como as equipes gerenciam e fortalecem a segurança do SSH.

Neste tutorial, você desvendará as complexidades do Teleport, equipando-se com o essencial para proteger sua infraestrutura de servidor. Desde a gestão de acesso sem falhas até recursos de segurança robustos, você explorará como o Teleport garante o acesso ao seu servidor.

Domine a segurança do servidor com o Gravitational Teleport e fortaleça sua infraestrutura!

Pré-requisitos

Iniciar este tutorial do Gravitational Teleport requer um certo conhecimento e recursos fundamentais. Portanto, certifique-se de que os pré-requisitos listados sejam atendidos para seguir este tutorial:

  • Dois servidores Linux: Um servidor (host) é usado como host bastião, e o outro é usado para restringir o acesso SSH com o Teleport – Este tutorial usa duas instâncias EC2 do Ubuntu 22.04.
  • Tráfego de entrada HTTPS permitido para o servidor hospedeiro (consulte a documentação do seu provedor de nuvem).

💡 Nota: Este tutorial utiliza instâncias AWS EC2. As alterações necessárias são feitas nas Regras de Entrada do Grupo de Segurança. Consulte a documentação da AWS sobre como configurar regras de entrada do grupo de segurança.

  • A registered domain name with DNS A record pointing to your host server’s IP address.
  • A multi-factor authenticator app such as Authy, Google Authenticator, or Microsoft Authenticator.

Instalando e Configurando Gravitational Teleport no Ubuntu

Com sua configuração de DNS pronta, você deve equipar seu servidor Ubuntu com recursos de segurança robustos — Gravitational Teleport. Como um castelo com portões abertos, sem as medidas de segurança adequadas, seu servidor está vulnerável a acessos não autorizados e possíveis violações.

O Gravitational Teleport garante uma fortificação robusta, permitindo apenas que indivíduos autorizados acessem a fortaleza do seu servidor.

Para instalar e configurar o Gravitational Teleport, siga estas etapas:

1. Faça SSH no servidor hospedeiro, execute o seguinte comando para atualizar o repositório para o gerenciador de pacotes e instale o Teleport. A versão mais recente é 15.1.9 no momento da redação deste texto, mas você sempre pode verificar todos os lançamentos.

curl https://goteleport.com/static/install.sh | bash -s 15.1.9

💡 Nota: Este tutorial utiliza o gerenciador de pacotes Advanced Package Tool (APT). Se o script de instalação do Teleport não funcionar corretamente, visite a documentação oficial do Teleport para obter instruções de instalação adaptadas ao seu gerenciador de pacotes.

Após executar o script de instalação acima, você deverá obter uma saída semelhante.

Installing Teleport on Ubuntu

2. Uma vez instalado, execute o seguinte comando systemctl para verificar o status do serviço teleport.

systemctl status teleport

Como mostrado abaixo, o Teleport está atualmente inativo e desativado.

Antes de habilitar e iniciar o serviço do Teleport, você deve configurar algumas configurações para o Teleport nos seguintes passos.

Checking the Teleport service status

3. Em seguida, execute este comando teleport para realizar o seguinte:

  • Gerar um arquivo de configuração chamado /etc/teleport.yaml para o Teleport. O serviço Systemd do Teleport, que foi configurado durante a instalação, requer este arquivo para iniciar o Teleport.
  • Especificar o endereço de e-mail (substitua <YOUR_EMAIL>) para registro e notificações de certificado ACME. A flag --acme diz ao Teleport para obter automaticamente certificados do Let’s Encrypt.
  • Especifique o Teleport --cluster-name, normalmente representado pelo URL do servidor proxy Teleport (substitua <YOUR_TELEPORT_PROXY_URL>).
sudo teleport configure -o /etc/teleport.yaml \--acme --acme-email=<YOUR_EMAIL> \--cluster-name=<YOUR_TELEPORT_PROXY_URL>

Se configurado corretamente, você verá a seguinte saída no terminal.

Configuring Teleport

4. Agora, execute cada comando abaixo para habilitar e iniciar o serviço Teleport.

Esses comandos não têm saída no terminal, mas você verificará as alterações na próxima etapa.

# Habilitar o serviço Teleport para iniciar automaticamente nas inicializaçõessudo systemctl enable teleport# Iniciar o serviço Teleportsudo systemctl start teleport

5. Por fim, execute o comando systemctl abaixo para confirmar o status do serviço Teleport.

systemctl status teleport

A saída abaixo confirma que o serviço Teleport está ativo e em execução, o que significa que você pode acessar a interface do usuário e realizar operações.

Verifying the Teleport service is active and running

Configurando Acesso à Interface Web do Teleport e Credenciais de Administrador

O Teleport está ativo, mas como você gerencia o acesso do usuário, monitora sessões e supervisiona sua infraestrutura de servidor de forma tranquila? Você pode interagir com o Teleport confortavelmente pelo navegador da web com sua interface web, mas primeiro, você deve configurar o acesso à interface web e as credenciais do usuário administrador.

Para configurar o acesso à interface web do Teleport e as credenciais de administrador, siga estas etapas:

Visite o URL do proxy do Teleport que você configurou no passo três da seção “Instalando e Configurando o Gravitational Teleport no Ubuntu” (ou seja, https://teleport.example.com).

Se for bem-sucedido, você será recebido com a página de login do Teleport abaixo. Infelizmente, você ainda não pode entrar. Você deve configurar um usuário administrador e autenticação de dois fatores (passo dois).

Accessing the Teleport sign-in page

Execute o seguinte comando da ferramenta CLI do Teleport (tctl) em seu servidor host para realizar o seguinte:

  • Criar (add) um usuário admin dedicado do Teleport.
  • Permitir que o usuário admin faça login em hosts SSH com os logins designados: root, ec2-user e ubuntu.
  • Atribuir as funções access e editor ao usuário admin.
sudo tctl users add admin --roles=access,editor --logins=root,ec2-user,ubuntu 

Depois de adicionado, copie o link de convite gerado a partir da saída indicando a criação bem-sucedida do usuário admin.

Creating a dedicated Teleport admin user

Navegue até o link de convite que você copiou no passo três para uma nova aba do navegador e clique em Começar na página de boas-vindas, conforme mostrado abaixo. Essa ação permite que você comece a configurar o usuário admin.

Accessing the Teleport sign-in page

Em seguida, forneça e confirme uma senha forte para o usuário admin e clique em PRÓXIMO para prosseguir.

Setting the admin password

Abra o seu aplicativo autenticador, escaneie o código QR, digite o Código do Autenticador gerado no campo obrigatório e clique em ENVIAR.

Esse processo permite configurar autenticação de dois fatores em seu dispositivo para uma camada adicional de segurança.

Setting up two-factor authentication

6. Agora, clique em IR PARA O AGRUPAMENTO para acessar sua conta Teleport.

Accessing the Teleport dashboard

Seu navegador será redirecionado para o painel Teleport, semelhante ao mostrado abaixo, que exibe o servidor host onde o Teleport está em execução. Observe que seu servidor host é o único recurso disponível atualmente sendo gerenciado pelo Teleport.

Overviewing the Teleport dashboard

Adicionando e Gerenciando Recursos com Teleport

Agora você tem acesso ao painel Teleport, que possui apenas um recurso disponível. Mas uma plataforma centralizada realmente se destaca quando você pode gerenciar vários recursos dentro dela.

Com as poderosas capacidades de gerenciamento de recursos do Teleport, você pode facilmente integrar servidores adicionais, bancos de dados ou outros componentes de infraestrutura, tudo a partir de uma única interface.

Para gerenciar recursos com Teleport, siga estas etapas:

1. No painel Teleport, clique em Inscrever Novo Recurso (canto superior direito) para iniciar a inscrição de um novo recurso.

Enrolling a new resource

2. Escolha um dos muitos recursos que você pode potencialmente adicionar para acesso seguro usando Teleport. A escolha deste tutorial é o Ubuntu 14.04+ Server, conforme indicado abaixo.

Selecting a resource to add for access management

3. Copie o comando gerado pelo Teleport, que você executará na etapa seguinte.

Copying the generated command

4. Agora, abra um terminal no seu segundo servidor e execute o comando que você copiou na terceira etapa para adicionar o servidor ao gerenciamento de acesso.

Se bem-sucedido, você verá uma saída semelhante à captura de tela abaixo.

Adding a second server to Teleport

5. Uma vez adicionado, clique em PRÓXIMO e conclua as solicitações consecutivas clicando em PRÓXIMO e FINALIZAR.

Proceeding with configuring the new resource

Por último, navegue até o seu painel Teleport e você verá sua nova instância adicionada, conforme ilustrado abaixo.

Confirming the new Teleport instance is successfully added

Conclusão

Aí está—instalou e configurou com sucesso o Gravitational Teleport, configurou a interface web do Teleport e estabeleceu credenciais de administrador. Ao longo deste tutorial, você obteve uma visão valiosa sobre como garantir e gerenciar o acesso ao servidor de forma eficaz!

Agora, por que não levar esse conhecimento recém-adquirido para o próximo nível? Instale o Teleport CLI (tsh) especificamente em sua máquina local e conecte-se ao seu servidor Teleport via CLI em vez da interface de usuário.

Implemente o gerenciamento de acesso para mais recursos, como Clusters Kubernetes e muito mais!

Source:
https://adamtheautomator.com/gravitational-teleport/