Pular para o conteúdo principal

💂 Configurando o BungeeGuard+

Neste tutorial, você aprenderá como configurar o BungeeGuard+ no seu servidor.

Download

⬇️ Clique aqui para baixar (fonte: github.com/@nickuc-com)

Introdução

As instalações BungeeCord são inseguras por padrão, e requerem regras de firewall adicionais a serem configuradas (usando iptables ou de outra forma) para evitar que usuários maliciosos contornem o proxy e se conectem usando qualquer uuid/nome de usuário que escolherem.

Este é um problema bem conhecido, e ao longo dos anos muitos servidores (mesmo grandes) têm sido direcionados com sucesso usando este ataque.

A solução convencional

A solução convencional recomendada pelo autor do BungeeCord é configurar uma regra de firewall usando iptables ou ufw para evitar conexões externas com os servidores backend.

No entanto, há dois problemas principais com isso:

  1. A configuração dessas regras de firewall é complicada, especialmente para usuários inexperientes.

    • Mesmo usuários experientes às vezes cometem erros ou ignoram as coisas. A menos que a configuração seja absolutamente perfeita, as regras são propensas a serem quebradas durante mudanças posteriores, ou reiniciadas no reinício do sistema.
  2. Os usuários em "hospedagem compartilhada" não têm acesso ao sistema operacional e muito provavelmente não podem configurar suas próprias regras de firewall.

A solução BungeeGuard

Os administradores dos servidores instalam o BungeeGuard+ (apenas um plugin comum!) em seus proxies e servidores backend.

  • No proxy, o BungeeGuard+ adiciona um "token de autenticação" secreto ao handshake de login.
  • No backend (servidor Spigot, Paper, etc.), o BungeeGuard+ verifica os handshakes de login para garantir que eles contenham um token de autenticação permitido.

Instalação

Se você tiver acesso ao sistema operacional e for capaz de configurar regras de firewall usando iptables (ou não), é recomendável fortemente que o faça. Então, instale também o BungeeGuard.

Em seu servidor proxy...

Se você estiver usando BungeeCord:

  1. Certifique-se de que o ip_forward está configurado para true no config.yml do BungeeCord.
  2. Adicione o BungeeGuard.jar na pasta de plugins. Em seguida, reinicie o proxy. Se você tiver vários proxies em sua rede, faça isso para cada um deles.
  3. Navegue até /plugins/BungeeGuard/token.yml e tome nota do token.

Se você estiver usando Velocity:

  1. Certifique-se de que você está usando Velocity 1.1.0 ou mais recente. (Não há necessidade de instalar o BungeeGuard.jar - ele já está embutido no Velocity!)
  2. Defina o modo player-info-forwarding-mode para "bungeeguard" em velocity.toml, e anote o modo forwarding-secret. Este é o valor usado para o token BungeeGuard. Se você tiver vários proxies em sua rede, faça isso para cada um deles.
  3. Reinicie o proxy.

Em cada um de seus servidores backend...

  1. Certifique-se de que você está usando Paper 1.9.4+ ou tenha o ProtocolLib instalado.
  2. Certifique-se de que a configuração do bungeecord está ajustada para true no spigot.yml.
  3. Adicione o BungeeGuard.jar na pasta plugins. Em seguida, reinicie o servidor.
  4. Navegue até /plugins/BungeeGuard/config.yml. Adicione o(s) token(s) gerado(s) pelo(s) proxy(s) à lista de tokens permitidos (allowed-tokens), assim como o exemplo abaixo:
    # Allowed authentication tokens.  
    allowed-tokens:
    - "SEU TOKEN AQUI"
  5. Execute bungeeguard reload do console.

Código-fonte

O projeto original do BungeeGuard foi criado por lucko. Não confundir o BungeeGuard com o BungeeGuard+.

Suporte

Precisa de ajuda? Entre em contato com o nosso suporte caso não tenha conseguido resolver o seu problema.