웹사이트 검색

Debian 11에 CSF 방화벽을 설치하는 방법


이 페이지에서

  1. 전제 조건
  2. 시스템 업데이트
  3. Debian 11에 CSF 방화벽 설치\n
  4. Debian 11에서 CSF 방화벽 구성\n
  5. 결론

CSF(ConfigServer Firewall)는 인바운드 및 아웃바운드 트래픽을 제어하기 위한 Linux 서버 및 BSD 시스템용 방화벽입니다. CSF에 대한 구체적인 세부 사항을 살펴보기 전에 방화벽이 무엇이며 어떻게 작동하는지 이해하겠습니다.

방화벽은 외부 공격으로부터 시스템을 보호하는 방패 역할을 합니다. 그 중 일부는 상태 저장 방화벽, 회로 수준 게이트웨이, UDP/ICMP 필터링 방화벽 또는 애플리케이션 계층 필터입니다.

방화벽에는 들어오고 나가는 트래픽을 필터링하는 일련의 규칙이 있습니다. 그리고 사용 중인 방화벽의 종류에 따라 IP가 네트워크에 액세스할 수 있는지 여부가 결정됩니다. 규칙 목록은 특정 시스템에 대해 정의되며 방화벽은 규칙에 따라 트래픽을 필터링합니다.

CSF(ConfigServer Firewall)는 Linux 서버에서 가장 널리 사용되는 오픈 소스 방화벽 중 하나입니다. CSF는 규칙을 구성하는 데 사용할 수 있는 기능 목록과 함께 제공됩니다. 따라서 매우 강력하고 동시에 사용하기 쉽습니다.

전제 조건

Debian 11에서 CSF를 설치 및 구성하려면 다음이 있어야 합니다.

  • Debian 11을 실행하는 서버와 시스템이 인터넷에 연결되어 있어야 합니다.\n
  • 서버에 대한 루트 액세스.\n

시스템 업데이트

ConfigServer Firewall을 설치하기 전에 시스템을 업데이트해야 합니다. 아래 명령을 실행하여 시스템을 업데이트하십시오.

sudo apt update

업데이트가 완료되면 다음 명령어를 실행하여 필요한 종속성을 설치합니다.

sudo apt install libio-socket-inet6-perl libsocket6-perl -y
sudo apt install sendmail dnsutils unzip libio-socket-ssl-perl -y
sudo apt install libcrypt-ssleay-perl git perl iptables libnet-libidn-perl -y

시스템에 이전 버전의 CSF가 설치되어 있는 경우 다음 명령을 실행하여 먼저 제거합니다. Debian 11은 새 버전의 Perl을 사용하므로 CSF 설치는 기존 CSF 설치와 충돌을 일으킬 수 있습니다.

cd /etc/csf &&  sh uninstall.sh 

UFW와 같은 다른 방화벽 구성 스크립트를 사용하는 경우 계속하기 전에 꺼야 합니다.

sudo ufw disable

Debian 11에 CSF 방화벽 설치

이제 필수 구성 요소를 모두 설치했으므로 CSF 방화벽을 다운로드하여 설치해 보겠습니다.

Debian 11 리포지토리에는 CSF 패키지가 포함되어 있지 않습니다. 따라서 공식 사이트에서 최신 버전의 ConfigServer 방화벽을 다운로드해야 합니다.

그렇게 하려면 다음 명령을 실행하십시오.

wget http://download.configserver.com/csf.tgz

이제 아래 명령을 실행하여 다운로드한 파일의 압축을 풉니다.

sudo tar -xvzf csf.tgz

파일을 추출했으면 다음 명령을 사용하여 CSF를 설치합니다.

cd csf && sh install.sh

설치가 완료되면 이제 방화벽을 설치해야 합니다. CSF 방화벽을 시작하려면 다음 명령을 실행하십시오.

sudo systemctl start csf

아래 명령을 실행하여 모든 것이 정상인지 확인하십시오.

perl /usr/local/csf/bin/csftest.pl

아래와 같이 출력됩니다. 이 출력은 CSF가 실행 중임을 확인합니다.

부팅 시 CSF 방화벽을 시작하려면 다음 명령을 실행합니다.

sudo systemctl enable csf

아래 명령을 사용하여 CSF의 상태를 확인할 수 있습니다.

sudo systemctl status csf

이 출력은 CSF가 실행 중임을 확인합니다. 이제 이 방화벽을 구성하겠습니다.

샘플 출력:

Debian 11에서 CSF 방화벽 구성

CSF 방화벽을 설치하면 /etc/csf/csf.conf 구성 파일과 함께 제공되는 기본 규칙이 활성화됩니다.

이 구성 파일을 검토하여 필요에 따라 구성되었는지 확인해야 합니다. 이 파일에서 시스템 관점에서 활성화된 모든 기본 규칙을 볼 수 있습니다. 그들 중 일부를 자세히 살펴 보겠습니다.

sudo nano /etc/csf/csf.conf

열린 포트 수가 적을수록 시스템이 더 안전합니다. 그러나 일부 공통 포트는 항상 열어 두어야 합니다. 아래와 같이 csf.conf 파일에서 기본적으로 열려 있는 모든 포트를 볼 수 있습니다.

구성 파일에서 볼 수 있듯이 포트를 허용/차단하려면 각각 목록에서 포트 번호를 추가/제거해야 합니다.

예를 들어 포트 80을 차단하려면 아래와 같이 목록에서 제거해야 합니다.

IPv6를 사용하는 경우 오늘날 대부분의 공격이 IPv6 프로토콜을 통해 이루어지므로 구성 파일에서 업데이트해야 합니다. 위에서 IPv4 포트에 대해 구성한 것과 유사하게 TCP6_IN, TCP6_OUT을 구성해야 합니다.

샘플 출력:

이제 CONNLIMIT 설정을 구성하겠습니다. CONNLIMIT은 특정 포트에서 원격 연결이 가질 수 있는 동시 연결 수를 제한할 수 있는 CSF의 보안 기능입니다. 이는 DoS/DDoS 공격의 위험을 완화하는 데 도움이 됩니다.

예를 들어 동시 연결이 3개 이하인 IP를 제한하려면 아래와 같이 업데이트해야 합니다. 이 설정은 포트 22에서 3개의 동시 연결과 포트 443에서 3개의 동시 연결만 허용합니다.

다음으로 PORTFLOOD 설정을 구성하겠습니다. 이 옵션을 사용하면 특정 시간 프레임 내에서 포트에 허용되는 최대 연결 요청 수를 구성할 수 있습니다.

예를 들어 60초 이내에 TCP 프로토콜을 사용하여 포트 443에 3개 이상의 연결이 설정된 경우 임의의 IP를 차단하려면 아래와 같이 업데이트해야 합니다. 마지막 연결 이후 60초의 시간 프레임이 지나면 차단이 자동으로 제거됩니다.

모든 방화벽의 가장 기본적인 기능은 IP 주소를 차단하고 허용하는 것입니다. 차단하려는 IP 주소를 csf.deny 파일에 수동으로 추가하거나 csf.deny 파일에 전체 IP 범위를 추가할 수 있습니다.

예를 들어 모든 192.168.1.0/24 IP 범위를 차단할 수 있습니다.

또는

아래와 같이 csf.deny 파일에 추가하여 192.168.2.0의 단일 IP를 차단할 수 있습니다.

다음 명령을 사용하여 csf.deny 파일을 엽니다.

sudo nano /etc/csf/csf.deny

파일 맨 아래에 다음 행을 추가하십시오. 한 번에 한 줄.

192.168.2.0
192.168.1.0/24

샘플 출력:

완료되면 CTRL+X, Y 및 Enter 키를 눌러 파일을 저장하고 닫습니다.

csf.deny 파일과 반대인 csf.allow 파일은 모든 필터에서 IP 또는 IP 범위를 제외하는 데 사용됩니다. 이미 csf.deny 파일에 IP를 추가했더라도 csf.allow 파일에 추가하면 차단된 IP 주소가 여전히 서버에 액세스할 수 있습니다.

sudo nano /etc/csf/csf.allow

CSF는 자체 방화벽을 설정할 수 있는 다양한 옵션을 제공하며 이는 이 가이드의 범위를 벗어납니다. 설정 및 작동 방식에 대한 ConfigServer 설명서를 참조할 수 있습니다.

필요한 모든 설정 업데이트를 마치면 CTRL+X, Y, Enter 키를 눌러 csf.conf 파일을 저장하고 닫습니다.

CSF는 또한 모든 필터에서 IP 주소를 무시하는 기능을 제공합니다. csf.allow 파일에서 IP 주소를 허용하는 것과 달리 csf.deny 파일에 나열된 IP 주소는 무시할 수 없습니다.

sudo nano /etc/csf/csf.ignore

이제 csf.conf 파일의 모든 설정을 구성했으므로 변경 사항을 적용하도록 규칙 세트를 업데이트할 차례입니다.

그렇게 하려면 다음 명령을 실행하십시오.

sudo csf -r

위 명령의 실행이 완료되면 다음 스크린샷과 같은 메시지를 볼 수 있습니다. 오류 메시지가 표시되지 않으면 축하합니다! 이제 서버 방화벽 구성이 업데이트되어 사용할 준비가 되었습니다.

결론

이 자습서에서는 Debian 11 서버에 ConfigServer Security & Firewall(CSF)을 설치하는 방법을 배웠습니다. 또한 방화벽 규칙을 만들고 CSF 구성 파일을 사용하여 허용 목록과 차단 목록 모두에 IP를 추가하는 방법을 배웠습니다.

문제가 발생하면 언제든지 ConfigServer Firewall 설명서에서 자세한 내용을 참조할 수 있습니다.