Discourse 인스턴스에서 DDoS 공격을 방지하는 방법?

안녕하세요.

지난달에 제 디스코ourse 포럼이 DDoS 공격을 받아 거의 마비되었습니다. (이 포럼은 기본적으로 뉴스 커뮤니티인데, 한 달 전 에콰도르 시위에 관한 뉴스를 올렸다가 DDoS 공격을 당했습니다. 정말 눈을 뜨게 된 경험이었죠.) 어쨌든, 이 포럼은 제 취미에 가까워 전문가 도움을 받거나 비싼 서버를 쓸 돈이 없습니다. 디스코ourse 전용으로 쓰이는 꽤 저렴한 표준 VPS 하나만 쓰고 있습니다.

그래서, 디스코ourse의 보안을 강화하는 데 도움이 될 좋은 팁이 있다면 알려주실 수 있을까요?

UFW를 구성하고, 필요할 경우 Cloudflare 뒤에 배치하여 페이지 규칙으로 "성능 비활성화"를 설정하세요. 이렇게 하면 코드가 방해받지 않습니다.

감사합니다. 두 가지 아이디어에 대해 더 자세히 설명해 주시겠어요?

  1. discourse를 위한 ufw의 좋은 구성은 무엇일까요? 포트 80도 허용해야 하나요, 아니면 224만 허용하면 될까요?

  2. 그 페이지 규칙은 어떤 모습일까요?

클라우드플레어의 유일한 장점은 바로 이 점입니다. 하지만 IP 주소를 유출하지 않도록 극도로 주의해야 합니다. 유출되면 게임 오버이기 때문입니다.

그렇다면 이 경우, 페이지 규칙으로 성능이 비활성화되면 클라우드 아이콘이 주황색으로 바뀌는 건가요?

즉, 포럼에서 "모든 것"에 Cloudflare를 사용한다는 뜻인가요?

저는 Cloudflare를 거의 표준 설정으로 사용 중이며, 잘 작동하고 있습니다. 하지만 여기 일부 게시글에서는 "이것은 활성화하고, 저것은 비활성화하라"고 권장하는데, 이 때문에 정확히 그런 일이 생길까 봐 걱정됩니다: IP 유출.

Cloudflare에서 “Rocket” 관련 항목과 "최소화(Minification)"를 비활성화했는데, 그게 전부입니다. 이렇게 하면 괜찮을까요?

다음과 같이 보이는 페이지 규칙을 생성하세요:

이 규칙은 현재와 미래에 코드를 변조할 수 있는 모든 기능을 비활성화합니다.

서버 전송량을 절약하기 위해 /uploads/에 대한 캐싱 규칙을 생성하는 것도 좋습니다.

@Stephen 님이 위에서 언급한 것 외에도 IP 유출을 방지하기 위해 추가로 해야 할 일이 있나요?

이 내용을 다루는 좀 더 최근의 주제들이 몇 가지 있습니다.

Cloudflare와 같은 서비스를 거치지 않으면, Discourse가 기본적으로 IP 주소를 어떤 형태로도 유출하지 않는다고 생각하는데 맞나요?