F5 방화벽 뒤에 있는 Discourse 인스턴스에서 "요청된 URL이 거부되었습니다." 오류 발생

community.subtchallenge.com은 사용자가 되고 싶은 3자 Discourse 설치 사이트입니다. 포럼에 글을 쓸 수 없는 이유를 디버깅하는 데 몇 시간을 보냈습니다. 다른 브라우저, 컴퓨터, 운영 체제, IP 주소, 대륙까지 시도해 보았습니다. 이전에 언급한 옵션과 관계없이 “Create Post” 버튼을 클릭하면 다음 중 하나의 결과가 나타났습니다.

  1. 게시물이 올바르게 대기열에 추가되어 대기열에 있는 내 게시물 수를 알려주는 알림을 받았습니다(짧은 테스트 메시지에만 발생했습니다).

  2. 게시물이 대기열에 추가되지 않았고(포럼 관리자에게 이메일로 확인했습니다), 존재하지 않는 페이지로 리다이렉트되었습니다. 네트워크 통신을 조사해 보니 /posts에 대한 POST 요청이 다음과 같은 결과를 반환했습니다:

     요청된 URL이 거부되었습니다. 관리자에게 문의하십시오.
     지원 ID: 18286718686107272025
    
  3. 게시물이 시각적으로 숨겨졌으며, 페이지 하단에 파란색 "바"만 표시되고 진행 상황 원형이 다른 동작 없이 무한히 회전했습니다. 몇 분간 기다려 보았지만 회전은 멈추지 않았습니다. 네트워크 로그에는 POST /posts 요청이 전송되었지만 응답이 수신되지 않는다고 표시되었습니다. 이 현상이 시작된 후 보통 더 큰 문제가 발생했는데, 다시 로그인할 수 없었습니다(로그인 페이지는 로드되었지만 로그인 양식이 전송되지 않았습니다). 내 IP 주소가 조용히 차단된 것 같은 인상을 주었습니다(IP 주소를 변경하면 보통 해결되었습니다).

게시물 내용을 주의하면 2번(그리고 아마도 3번도)을 피할 수 있다는 것을 알아냈습니다. 게시물에撇(아포스트로피), 인용부호, 줄바꿈이 포함된 경우 100%의 확률로 2번 에러가 발생했습니다. 게시물이 1000자를 초과할 때도 발생했습니다.

이러한 동작이 누군가에게 익숙한가요? 포럼 관리자에게 조언할 수 있는 것이 있을까요?

아이디어를 주셔서 감사합니다.

Discourse의 안전 모드에서 시도해 보셨나요? 웹 브라우저의 안전 모드에서도 시도해 보셨나요?

Discourse의 안전 모드에 대한 힌트 감사합니다. 이 기능에 대해 알지 못했습니다. 불행히도 이 포럼에서는 해당 기능이 어떻게든 깨져 있습니다. 미로그인 상태로 community.subtchallenge.com/safe-mode를 입력하면 로그인 페이지만 표시되고, 로그인된 상태로 URL을 입력하면 “Oops, this page was not found” 페이지가 나타납니다. 아마도 커스텀 .htaccess 설정이 기능을 방해하고 있는 것 같습니다.

브라우저의 안전 모드는 시도해 보지 않았지만, 새로 설치된 머신(VM, VPS)에서 여러 브라우저를 테스트해 봤기 때문에 브라우저 안전 모드로는 문제를 해결할 수 없을 것 같습니다. Firefox, Chromium, w3m(여기서는 게임이 아니지만), Palemoon, Opera를 시도해 보았습니다.

잘 설정되지 않은 애플리케이션 방화벽일 수 있습니다.

https://stackoverflow.com/questions/8892197/how-to-resolve-the-requested-url-was-rejected-please-consult-with-your-adminis

안내해 주셔서 감사합니다. 정말 그 문제일 수도 있겠네요. 하지만 이미 "문제를 IT 부서로 넘겼다"고 했었고, IT 담당자들은 자신들 쪽에서는 아무런 문제가 없다고 답했습니다. 결국 검증할 수 없는 주장만 남게 되는 셈이죠. :frowning: 방화벽 설정을 특히 확인해 달라고 요청할 예정입니다.

방화벽 설정 오류라는 관점에서 이 문제를 생각해보면 상당히 합리적으로 느껴집니다. 아마도 일종의 “AI” 분석을 시도하다가, 제 테스트가 아닌 게시글에서는 당연히 실패하는 것일 수도 있겠네요.

이것이 문제인 것 같습니다:

F5 Networks의 방화벽인 Application Security Manager(ASM)에 의해 HTTP가 차단되고 있습니다. 다음과 같은 메시지를 생성합니다:

관리자에게 문의하십시오.
지원 ID: xxxxxxxxxxxx

따라서 애플리케이션이 ASM이 위협으로 감지하는 데이터를 전송하고 있습니다. 구체적인 이유를 파악하려면 지원 ID를 네트워크 엔지니어에게 전달하십시오.

F5 문서에 따르면 이는 방화벽이 요청을 차단했음을 나타냅니다:

이 메시지는 ASM이 요청을 차단했음을 의미합니다. 로그 메시지(/var/log/asm)에서 지원 ID를 검색할 수 있습니다 - 일치하는 로그 메시지에 더 자세한 정보가 제공됩니다.