5.6. DoS 공격을 방지하기 위해 사용자 세션 및 메모리 제한

인증서 인증은 다른 사용자를 가장하려는 공격자로부터 cockpit-ws 웹 서버의 인스턴스를 분리하여 격리하여 보호됩니다. 그러나 이로 인해 잠재적인 서비스 거부(DoS) 공격이 발생합니다. 원격 공격자는 다수의 인증서를 생성하고 서로 다른 인증서를 사용하여 각각 cockpit-ws 에 다수의 HTTPS 요청을 보낼 수 있습니다.

이 DoS를 방지하기 위해 이러한 웹 서버 인스턴스의 집합적 리소스는 제한됩니다. 기본적으로 연결 수 및 메모리 사용량에 대한 제한은 200개의 스레드와 75%(소프트) / 90%(하드) 메모리 제한으로 설정됩니다.

다음 절차에서는 연결 및 메모리 수를 제한하여 리소스 보호를 설명합니다.

절차

  1. 터미널에서 system-cockpithttps.slice 구성 파일을 엽니다.

    # systemctl edit system-cockpithttps.slice
  2. TasksMax100 으로 제한하고 CPUQuota30% 로 제한합니다.

    [Slice]
    # change existing value
    TasksMax=100
    # add new restriction
    CPUQuota=30%
  3. 변경 사항을 적용하려면 시스템을 다시 시작하십시오.

    # systemctl daemon-reload
    # systemctl stop cockpit

이제 새로운 메모리 및 사용자 세션 제한으로 cockpit-ws 웹 서버를 DoS 공격으로부터 보호합니다.