Portas bloqueadas (servidor cloud Hetzner)

Olá,

Estou tentando instalar o Discourse em um servidor na nuvem da Hetzner, mas ao executar ./discourse-setup recebo a mensagem de que as portas estão bloqueadas (discourse.domain.de, obviamente, não é o domínio real):

AVISO: A porta 443 do computador não parece acessível usando o nome do host: discourse.domain.de.
AVISO: A conexão com http://discourse.domain.de (porta 80) também falha.

Conforme sugerido pela ferramenta de configuração, agora quero verificar se discourse.domain.de resolve para o endereço IP do servidor na nuvem. Ao executar dig discourse.domain.de, obtenho a seguinte saída:

; <<>> DiG 9.16.1-Ubuntu <<>> discourse.domain.de
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 28839
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;discourse.domain.de.	IN	A

;; ANSWER SECTION:
discourse.domain.de. 4134	IN	A	XXX.XXX.XXX.XXX (endereço IP correto)

;; Query time: 0 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Sun Apr 24 10:14:44 UTC 2022
;; MSG SIZE  rcvd: 70

O que me parece bom.
A próxima sugestão é que pode ser um problema de firewall. Tenho um firewall com as seguintes portas abertas:


Portanto, acho que o firewall não é o motivo da mensagem acima. É possível que haja algo mais bloqueando as portas? Li que o Apache poderia causar tal problema, mas ele não está instalado no servidor na nuvem.
Tentei telnet discourse.domain.de 443 para ver se as portas estavam abertas e recebi:

telnet: Unable to connect to remote host: Network is unreachable

Alguém tem alguma ideia de como resolver este problema?
Obrigado!

EDIT: É o mesmo com o firewall desativado.

Você já consultou o DNS usando um serviço externo?

Ou seja, um que não esteja roteando através do seu provedor de hospedagem em nuvem?

2 curtidas

Eu nunca fiz isso antes, obrigado pela dica. Ele mostra o endereço IPv4 correto.

Você está recebendo essa mensagem porque essas portas estão sendo bloqueadas pela Hetzner.

5 curtidas

Fora de tópico, mas você sabe por que a Hetzner bloquearia portas tão importantes e, ainda assim, triviais?

Ok, obrigado. Entrarei em contato com o suporte da Hetzner.

1 curtida

Para evitar abusos. https://docs.hetzner.com/cloud/servers/faq/

Infelizmente, spammers e golpistas de e-mail gostam de usar provedores de hospedagem em nuvem. E nós, na Hetzner, naturalmente queremos evitar isso. É por isso que bloqueamos as portas 25 e 465 por padrão em todos os servidores em nuvem. Esta é uma prática muito comum na indústria de hospedagem em nuvem porque evita abusos. Queremos construir confiança com nossos novos clientes antes de desbloquear essas portas de e-mail. Assim que você estiver conosco há um mês e tiver pago sua primeira fatura, poderá criar uma solicitação de limite para desbloquear essas portas para um caso de uso válido. Em sua solicitação, você pode nos contar detalhes sobre seu caso de uso. Tomamos decisões caso a caso.

Como alternativa, você também pode usar a porta 587 para enviar e-mails por meio de serviços externos de entrega de e-mail. A porta 587 não é bloqueada e pode ser usada sem enviar uma solicitação de limite.

3 curtidas

Essa é uma solução comum e um dos motivos pelos quais um servidor de e-mail auto-hospedado é quase impossível.

Mas o OP teve problemas com as portas 80 e 443. Ou eu perdi alguma coisa?

3 curtidas

Você está certo. Eu confundi duas questões diferentes. Peço desculpas pela confusão.

2 curtidas

Tive uma pesquisa no fórum para ver se mais alguém havia encontrado um problema semelhante e encontrei isto, embora infelizmente não seja uma “solução real” como tal:

Configurar o app.yml manualmente poderia ser uma opção para você?

1 curtida

Ainda estou confuso, mas no Digital Ocean o firewall deve ser configurado. Uma instalação limpa não tem nenhuma porta aberta (exceto SSH, mas isso é outra coisa). Não sei como o Hetzner funciona. E se o VPS estiver atrás de portas fechadas, não importa o que tenhamos no app.yml.

Ou estou perdendo alguma coisa de novo?

A configuração manual do app.yml é a solução para o problema para mim também. Obrigado!
Também encontrei este tópico, mas acho que não o li com atenção suficiente… :see_no_evil:

1 curtida

Eu hospedo três fóruns na Hetzner e nunca encontrei esse problema :thinking:

Então a Hetzner abrirá portas para o servidor web quando um VPS for iniciado? Ou eles instalam nginx ou apache por padrão?

Isso é… estranho.

1 curtida

Eu acho que sim. Quando eu inicio um VPS (Ubuntu 20), o nginx não é instalado por padrão: o discourse-setup o instala.
Eu instalei o Discourse inúmeras vezes em VPS da Hetzner sem nenhum problema por anos (a última vez foi em fevereiro).
É por isso que estou intrigado com este tópico.


edit: por algumas razões meu cérebro misturou docker e nginx :sweat_smile:

1 curtida

Isso não é bem verdade. Ele não instala o nginx no SO, mas o contêiner Docker do Discourse o inclui.

Essa não é a minha experiência. O Ubuntu LTS padrão não inclui um firewall e todas as portas estão abertas.

1 curtida

Existem duas opções: usar o firewall do Digital Ocean ou instalar o UFW (ou similar) após a criação do VPS. Nenhuma das minhas instalações usa o deles, então todas as portas estão fechadas até que eu as abra pelo UFW.

De qualquer forma, agora sabemos quando, onde e como o Nginx é instalado. Todo dia algo novo (quando você/eu/alguém não entende como o docker funciona :smile: )

1 curtida

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.