Prevenir domínios não autorizados de apontar para nossa instância do Discourse

Estamos executando uma instância do Discourse em nosso servidor, mas encontramos um problema em que qualquer pessoa pode pegar o IP público do nosso servidor e criar um registro A em seu próprio domínio, efetivamente apontando seu domínio para o nosso fórum.

Queremos garantir que apenas nosso domínio autorizado possa ser usado para acessar o fórum e impedir que domínios não autorizados funcionem.

Quais são as maneiras recomendadas de impor restrições de domínio no Discourse? Existe alguma configuração, configuração do Nginx ou outro método para conseguir isso?

Qualquer orientação seria apreciada.

1 curtida

Você está usando uma instalação padrão? Por padrão, o Discourse redireciona para o nome do host.

4 curtidas

Como isso faria alguma diferença? O OP sugere agora que todos podem estragar praticamente todos os serviços web do mundo.

Deixe pra lá. É por isso que temos que configurar hosts para serviços web. Em todo lugar, o tempo todo, incluindo o Discourse.

Portanto, tal sequestro é inútil, porque o serviço certo, o servidor web, o que quer que seja, responderá de qualquer maneira.

1 curtida

Obrigado @Jagster e @pfaffman - estou trabalhando com @Abdelrahman_MoHamed nisso.

Para meu próprio entendimento, se este for o nosso domínio do discourse:

forum.get.it que aponta para –\u003e 34.170.141.119

E alguém configurar, digamos…

hijack.get.it e apontá-lo para –\u003e 34.170.141.119

O comportamento esperado é que, quando alguém digitar:

hijack.get.it ele redirecionará para forum.get.it

Isso está correto?

Sim. Esse é o comportamento esperado e parece ser o comportamento real. Pelo que pude apurar, você não tem um problema. E a maioria dos navegadores usará https: por padrão e https://hijackeddomain.com gerará um erro de certificado.

1 curtida

Sim, mas nada acontece. Exatamente a mesma coisa que você tem agora, alguém batendo usando SSH, bots, etc.

Se você configurar um site/fórum assim, então sim, eles enviarão visitantes que verão o que quer que você tenha começado a usar com esse domínio. Mas eles não podem sequestrar seu domínio, porque você está dizendo ao mundo qual nameserver esse domínio usa e para qual IP ele está apontando. E há um servidor web permitindo a entrada de visitantes, se eles estiverem solicitando um site assim, você está configurado para esse domínio. Se o domínio solicitado não receber nada, as portas permanecem fechadas.

1 curtida

Entendo que foi apenas um exemplo, mas essa situação específica é impossível, porque você é o proprietário do domínio get.it e seus nameservers não conhecem tal DNS que apontaria para hijack.get.it :smirking_face:

1 curtida

Sim, @Jagster está certo. Se você possui get.it (aliás, uau, $$$$$) outra pessoa não pode usar seu domínio apenas com outro subdomínio.

1 curtida