Cloudflare를 사용하여 Discourse 사이트 보호하기

관리자분들께 여쭤볼게요. Cloudflare나 프록시를 사용해 디스커스(Discourse) 사이트를 보호하는 방법이 궁금해요.

안녕하세요 @Lee_Kris, Discourse Meta 커뮤니티에 오신 것을 환영합니다!

이것이 셀프 호스팅된 사이트에 대한 질문이라고 가정합니다. 만약 Discourse에서 호스팅하는 사이트라면 이미 보호되어 있으므로 Cloudflare나 프록시를 사용하여 사이트를 보호할 필요가 없습니다.

만약 사이트를 셀프 호스팅하고 있다면, 이 주기에 대한 이전 질문을 검색해 보는 것이 가치가 있을 것입니다. 특히 Cloudflare는 Discourse에서 일부 문제를 일으킬 수 있으며 추가적인 단계를 수행해야 합니다. 이에 대한 좋은 게시글은 다음과 같습니다: Using the CloudFlare template - #2 by Stephen.

해당 게시글에서는 Discourse의 app.yml 파일에 cloudflare.template.yml을 추가해야 하는 필요성이 언급되어 있습니다. 이에 대한 추가 세부 사항은 여기서 확인할 수 있습니다: Full site CDN acceleration for Discourse.

이 문제에 대한 더 많은 토론을 찾으려면 Search results for 'cloudflare에서' - Discourse Meta 검색해 보시길 권장합니다. 해당 주제 중 하나에 답글을 달거나, 궁금한 점이 있으면 여기로 다시 문의해 주세요.

시몬님,

네, 저는 셀프호스팅 사이트를 운영하고 있습니다. app.yml에 추가한 후 다시 빌드하면 된다는 걸 확인했습니다.

  • “templates/cloudflare.template.yml”

추가로 질문이 있는데, 아래 templates.yml 항목들도 app.yml에 활성화해야 하는지, 아니면 비활성화 상태로 두어야 하는지 궁금합니다.

  • “templates/web.ssl.template.yml”
  • “templates/web.letsencrypt.ssl.template.yml”

또한 Cloudflare 보호를 받는 Nginx 같은 프록시를 사용 중이라면, 아래처럼 기본 노출 포트를 변경한 후 nginx 설정 파일에 수동으로 작성하여 Cloudflare에서 가져온 SSL을 적용할 수 있을까요?
expose:
- “81:80”

- “443:443”

저는 방금 그 템플릿을 추가하고 Cloudflare SSL을 full로 설정한 후 클라우드를 활성화했는데, 그렇게 하니 잘 작동했습니다.

해당 템플릿도 활성화되어 있나요?

  • “templates/web.ssl.template.yml”
  • “templates/web.letsencrypt.ssl.template.yml”