나는 노드 j를 사용하여 매우 확장 가능한 브라우저 기반 웹 채팅 서버를 작성하는 중입니다. 관련된 개념은 간단합니다. 먼저 브라우저에서 웹 소켓 지원을 확인합니다. 지원되지 않거나 서버 사양과 호환되지 않으면 정상적으로 긴 폴링으로 정상적으로 다운 그레이드됩니다.DOSJ 공격에 대한 nodejs 서버
매우 높은 I/O 모델을 이용하여, 이처럼 일하기 위해 nodejs와 같이 잘 맞는 다른 프레임 워크를 찾을 수 없었습니다. 그러나 나는 간단한 해결책을 내놓기로 결정한 DOS 공격과 관련된 문제가 있습니다. 그러나, 나는 그 엄청난 홍수 발작들과 싸울 수있는 가장 이상적인 방법 일지 잘 모르겠습니다.
내가 할 계획은 - 하나의 IP 주소에서 시작된 50 개 이상의 요청이 특정 시간 (예 : 1 초) 내에 서버에 도달 한 다음 해당 IP에서 이후의 모든 요청을 거부 할 경우 해당 특정 시간 간격이 경과되면서 계속됩니다.
괜찮습니까?
+1 - 아마 나는 보지 않았지만 아무도 노드 DoS 공격의 문제에 많은 관심을 보이지 않는 것 같습니다. – Bojangles
내가 알아 낸 한 가지 사실은 setTimeout 함수를 사용하여 모든 들어오고 나가는 연결의 시간 제한을 낮추는 것입니다. 기본값은 2 분입니다. 무언가 잘못되면, 그냥 두 버려야 할 때 주변에 연결 리소스를 두어야합니다. 10-20 초가 훨씬 효과적입니다. – download