웹사이트 검색

CSF 방화벽 설치 및 사용 가이드


이 페이지에서

  1. 2 다운로드 및 설치
  2. 3 다른 방화벽 제거\n
  3. 4 CSF 및 LFD 제거
  4. 5 구성
  5. 6 CSF를 사용하여 IP 주소 감시\n
  6. 7 IP 주소에 대한 허용/거부 필터 허용\n
    1. 7.1 IP 주소 허용\n
    2. 7.2 IP 주소 차단
    3. 7.3 IP 주소 무시

    CSF는 구성 서버 보안 및 방화벽을 나타냅니다. CSF는 서버에 더 나은 보안을 제공하기 위해 구축된 구성 스크립트이며 동시에 원활한 작동을 보장하기 위해 추가 검사를 통해 구성하고 보호할 수 있는 많은 구성 옵션과 기능을 제공합니다. 공개 액세스를 잠그고 전자 메일이나 웹 사이트만 액세스할 수 있는 항목을 제한하는 데 도움이 됩니다. 여기에 더 많은 권한을 추가하기 위해 항상 실행되는 LFD(로그인 실패 데몬) 스크립트와 함께 제공됩니다. 무차별 대입 공격을 감지하기 위해 서버에 로그인하려는 시도가 실패했습니다. lfd가 수행할 수 있는 광범위한 검사는 서버 관리자에게 서버 변경 사항, 잠재적인 문제 및 가능한 손상을 알리는 데 도움이 됩니다.

    또한 LFD는 해당 IP에서 엄청난 수의 로그인 실패가 나타날 경우 해당 IP를 차단합니다. 차단은 일시적입니다. 또한 관리자는 이메일 알림 서비스를 활성화하여 차단된 IP를 볼 수 있습니다. 일부 기능은 다음과 같습니다.

    • 로그인 추적
    • 프로세스 추적\n
    • 디렉토리 감상
    • 고급 허용/거부 기능\n
    • 차단 보고
    • 포트 홍수 방지\n

    그리고 더 많은. 이 게시물은 모든 기능을 다루지 않으므로 각 기능에 대한 자세한 정보는 다운로드할 csf 폴더에서 "readme.txt" 파일을 읽으십시오.

    2 다운로드 및 설치

    첫 번째 단계는 다운로드되었을 수 있는 csf의 이전 버전을 제거한 다음 최신 버전을 다운로드하는 것입니다. 이를 수행하려면 다음 두 명령을 사용하십시오.

    rm -fv csf.tgz
    wget http://www.configserver.com/free/csf.tgz

    이제 홈 디렉토리에서 tar 파일을 추출하고 csf 디렉토리로 이동합니다.

    tar -xzf csf.tgz
    cd csf

    여기까지의 단계는 아래 이미지에 나와 있습니다.

    이제 우리는 설치할 준비가 되었지만 설치하기 전에 루트 권한이 있어야 합니다. 그렇지 않으면 설치할 수 없습니다. 따라서 다음 명령을 사용하여 루트 권한을 얻고 요청 시 비밀번호를 입력하십시오.

    sudo su

    다음 명령을 사용하여 CSF를 설치합니다.

    sh install.sh

    설치가 성공적으로 완료되면 출력은 아래 이미지와 유사하게 나타납니다.

    설치가 완료되면 검증을 수행할 수 있습니다. 이를 위해 시스템에 필요한 모든 iptables 모듈이 있는지 테스트합니다. 이제 이것이 실행될 때 모든 기능을 실행할 수 없다는 것을 나타낼 수 있지만 괜찮습니다. 이 테스트는 스크립트가 치명적인 오류를 보고하지 않는 한 통과로 간주될 수 있습니다. 테스트하려면 다음 명령을 사용하십시오.

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

    이 테스트를 실행한 결과는 아래 이미지에 나와 있습니다.

    3 다른 방화벽 제거

    서버를 보호하려면 오래된 방화벽이나 다른 방화벽 설정을 제거하는 것이 중요합니다. 방화벽의 충돌로 인해 장애나 액세스 불가능이 발생할 수 있기 때문입니다. 다른 iptables 방화벽도 설치해서는 안 되며 이미 존재하는 경우 이 단계에서 제거해야 합니다. 대부분의 시스템에는 APF+BFD 방화벽이 있을 가능성이 높으므로 제거해야 합니다. 따라서 다음 명령을 사용하여 존재하는 경우 이를 감지하고 제거하십시오.

    sh /usr/local/csf/bin/remove_apf_bfd.sh

    미리 설치하지 않았으므로 내 시스템의 명령 출력은 아래 이미지와 같습니다.

    4 CSF 및 LFD 제거하기

    CSF를 완전히 제거하려면 다음 두 명령을 사용하십시오.

    cd /etc/csf
    sh uninstall.sh

    5 구성

    CSF는 cPanel 및 DirectAdmin에 대해 자동으로 사전 구성되며 모든 표준 포트가 열린 상태에서 작동합니다. CSF는 또한 설치 시 비표준 포트에서 실행되는 SSH 포트를 자동 구성합니다. CSF는 또한 설치 시 가능한 경우 연결된 IP 주소를 자동 화이트리스트에 추가합니다. 그러나 관리자가 모든 권한을 가질 수 있으며 서버 유형의 요구 사항에 맞게 csf를 수동으로 구성할 수 있습니다.

    CSF는 "/etc/csf" 디렉터리에 설치되며 사용자가 디렉터리에 액세스하려면 루트 권한이 필요합니다. 이 디렉토리는 csf를 구성하고 실행하는 데 필요한 모든 파일로 구성됩니다. 첫째, "csf.conf"는 csf의 가능한 모든 사용 및 기능을 활성화/비활성화하고 관리하는 데 도움이 되는 파일입니다. 모든 구성을 처리합니다. 디렉토리에는 또한 로그 파일이 보관될 위치를 포함하는 "csf.syslog", 방화벽을 통해 IP 주소를 허용하는 데 사용되는 "csf.allow" 파일 등과 같은 다양한 파일이 포함되어 있습니다.

    6 CSF를 사용하여 IP 주소 보기

    "-w" 또는 "--watch" 옵션을 사용하여 지정된 소스에서 iptables 체인을 통과할 때 패킷을 감시하고 기록할 수 있습니다. 이 기능은 해당 IP 주소가 삭제되거나 iptables에서 허용되는 위치를 추적할 때 매우 유용합니다. 언제든지 짧은 시간 동안 몇 개의 IP 주소만 감시해야 하며 그렇지 않으면 로그 파일이 이러한 항목으로 가득 차게 됩니다. 시계를 종료하려면 csf를 다시 시작해야 합니다. 시계는 다시 시작해도 살아남지 못하기 때문입니다.

    관찰할 단계는 다음과 같습니다.

    • Go to the config file present in /etc/csf called "csf.conf" this is the config file. Search for "WATCH_MODE" and make the value "1". This enables it.
    • restart the csf and lfd
    • use the following command to watch the ip. Make sure you change the IP shown below to what you want.
      csf -w 11.22.33.44
    • Watch the kernel iptables log for hits from the watched IP address

    완료되면 WATCH_MODE를 비활성화하고 csf 및 lfd를 다시 시작합니다. 다음은 포트 22에 연결하는 192.168.254.4의 축소된 예제 로그 감시입니다.

    Firewall: I:INPUT SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22
    Firewall: I:LOCALINPUT SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22
    Firewall: I:GDENYIN SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22
    Firewall: O:GDENYIN SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22
    Firewall: I:DSHIELD SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22
    Firewall: O:DSHIELD SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22
    Firewall: I:SPAMHAUS SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22
    Firewall: O:SPAMHAUS SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22
    Firewall: O:LOCALINPUT SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22
    Firewall: I:INVALID SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22
    Firewall: O:INVALID SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22
    Firewall: I:LOGACCEPT SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22

    7 IP 주소에 대한 허용/거부 필터 허용

    csf는 다음을 사용하여 고급 허용 및 거부 필터를 추가하는 데 사용할 수 있습니다.

    이 형식의 분석은 다음과 같습니다.

    tcp/udp  : EITHER tcp OR udp OR icmp protocol
    in/out   : EITHER incoming OR outgoing connections
    s/d=port : EITHER source OR destination port number (or ICMP type)
               (use a _ for a port range, e.g. 2000_3000)
    s/d=ip   : EITHER source OR destination IP address
    u/g=UID  : EITHER UID or GID of source packet, implies outgoing  
               connections, s/d=IP value is ignored
    

    7.1 IP 주소 허용

    IP 주소는 csf.allow 파일에 추가하여 개별적으로 또는 범위에서 제외할 수 있습니다. 여기서 2.3.*.* 범위를 추가한다고 가정하고 이것이 CIDR 표기법임을 나타내고 IP 192.168.3.215 를 허용하려고 합니다. 이렇게 하려면 다음 명령을 사용하십시오.

    nano /etc/csf/csf.allow

    다음 줄을 추가하십시오 (원하는 IP가 다른 경우 변경하십시오.)

    2.3.0.0/16
    192.168.3.215
    

    7.2 IP 주소 차단

    허용과 마찬가지로 IP 또는 IP 범위를 차단할 수 있습니다. 그러나 csf.allow 파일에 있는 IP는 차단 파일에 있더라도 허용된다는 점을 기억하십시오. IP를 차단하려면 허용과 동일한 프로세스를 사용하지만 "csf.allow" 파일 대신 /etc/csf 디렉터리에 있는 "csf.deny" 파일에 IP를 입력합니다.

    7.3 IP 주소 무시

    IP 주소를 무시하는 것도 가능합니다. 즉, "csf.ignore" 파일에 제공된 IP는 방화벽을 우회하지만 csf.deny 파일에 나열된 경우에만 차단할 수 있습니다.

    8 결론

    위는 CSF가 제공하는 많은 기능 중 일부에 불과합니다. 이것은 매우 유용하고 공격으로부터 서버에 매우 우수한 보안을 제공하며 서버가 원활하게 실행될 수 있도록 구성에 대한 전체 제어를 제공합니다. CSF의 다른 많은 기능을 배우고 사용하려면 추출된 폴더의 readme.txt 파일을 참조하십시오. 여기에는 모든 기능에 대한 간략한 설명과 관리자가 이를 사용할 수 있는 방법이 나와 있습니다.