웹사이트 검색

Debian 및 Ubuntu의 ISPConfig 3.1에서 Amavisd를 Rspamd로 교체


이 페이지에서

  1. 전제 조건
  2. 레디스 설치
  3. BIND가 설치되지 않은 경우 Unbound 설치
  4. Rspamd 설치 및 구성
  5. ISP 구성 업데이트
  6. ISPConfig에서 Rspamd 활성화\n
  7. Rspamd 대시보드를 외부에서 액세스 가능하게 만들기\n
    1. 아파치
    2. 엔진엑스
    3. Rspamd GUI

    이 튜토리얼은 ISPConfig 3.1 서버에서 amavis(amavisd-new) 스팸 스캐닝 소프트웨어를 Rspamd로 대체하는 단계를 설명합니다. 튜토리얼은 데비안과 우분투 리눅스용으로 작성되었습니다.

    전제 조건

    • 루트 액세스.
    • ISPConfig 3.1이 설치되어 있어야 합니다. 이 절차 후에 ISPConfig 버전은 3.1.15 이상이 됩니다.\n
    • 서버는 x86_64 프로세서(64Bit Linux)에서 Debian 9 - 10 또는 Ubuntu 18.04를 사용합니다. 이전 Debian 및 Ubuntu 버전도 작동할 수 있지만 테스트하지는 않았습니다.\n

    아래의 모든 명령은 루트 사용자로 실행됩니다. 이 가이드를 계속 진행하기 전에 루트 사용자로 로그인하거나 데비안의 경우 su - 또는 우분투의 경우 sudo -s를 사용하여 루트 사용자가 되십시오.

    참고: 이 절차는 모든 사서함과 별칭을 재구성하여 각 계정에 대한 Rspamd 구성을 작성합니다(ISPConfig 도구 > 재동기화 실행과 유사). 대형 메일 서버에서는 상당한 시간과 리소스가 소요될 수 있습니다.

    레디스 설치

    ISPConfig에 대한 Rspamd 설정에는 Redis가 필요하므로 먼저 설치하겠습니다.

    apt-get install redis-server lsb-release

    BIND가 설치되지 않은 경우 Unbound 설치

    서버에 로컬 DNS 서버가 설치되어 있지 않으면 unbound와 같은 로컬 DNS 확인자를 설치해야 합니다.

    먼저 다음 명령을 사용하여 BIND가 설치되어 있는지 확인합니다.

    which named

    명령이 명명된 바이너리의 경로를 반환하는 경우:

    :/tmp# which named
    /usr/sbin/named

    그러면 BIND가 설치되며 이 단계를 건너뛰어야 합니다. named에 대한 경로가 반환되지 않는 경우 언바운드를 설치합니다.

    apt-get install unbound

    Rspamd 설치 및 구성

    Rspamd를 설치하는 첫 번째 단계는 Rspamd Debian/Ubuntu 패키지 저장소를 추가하는 것입니다.

    CODENAME=`lsb_release -c -s` 
    wget -O- https://rspamd.com/apt-stable/gpg.key | apt-key add -
    echo "deb [arch=amd64] http://rspamd.com/apt-stable/ $CODENAME main" > /etc/apt/sources.list.d/rspamd.list
    echo "deb-src [arch=amd64] http://rspamd.com/apt-stable/ $CODENAME main" >> /etc/apt/sources.list.d/rspamd.list

    패키지 목록 업데이트:

    apt-get update

    그리고 apt를 사용하여 Rspamd를 설치합니다.

    apt-get install rspamd

    Rspamd 구성에서 Redis를 활성화합니다.

    echo 'servers = "127.0.0.1";' > /etc/rspamd/local.d/redis.conf

    Rspamd 기록을 늘리고 압축을 활성화하고 기록에 주제를 표시합니다. 이 단계는 선택 사항입니다.

    echo "nrows = 2500;" > /etc/rspamd/local.d/history_redis.conf 
    echo "compress = true;" >> /etc/rspamd/local.d/history_redis.conf
    echo "subject_privacy = false;" >> /etc/rspamd/local.d/history_redis.conf

    그런 다음 Rspamd를 다시 시작하십시오.

    systemctl restart rspamd

    ISPConfig 업데이트

    Rspamd 구성을 활성화하려면 ISPConfig를 업데이트해야 합니다. ISPConfig 업데이터가 서비스를 재구성할지 묻는 메시지가 표시되면 예를 선택합니다.

    cd /tmp
    wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
    tar xvfz ISPConfig-3-stable.tar.gz
    cd ispconfig3_install/install
    php -q update.php

    Rspamd가 감지되고 구성되면 업데이트 스크립트의 출력에 "Configuring Rspamd" 줄이 표시됩니다.

    ISPConfig에서 Rspamd 활성화

    마지막 단계에서는 관리자로 ISPConfig에 로그인해야 합니다.

    ISPConfig에서 시스템 > 서버 구성 > 메일으로 이동합니다.

    여기에서 콘텐츠 필터 필드의 값을 Amavisd에서 Rspamd로 변경하고 페이지 하단에 있는 저장 버튼을 누릅니다. ISPConfig는 이제 Rspamd에 대한 모든 사서함을 재구성하기 시작합니다.

    System > Server Config > Mail으로 돌아가면 Rspamd 비밀번호를 읽고 설정할 수 있는 몇 가지 새로운 필드를 볼 수 있습니다.

    외부에서 Rspamd 대시보드에 액세스할 수 있도록 합니다.

    Rspamd 대시보드는 localhost의 포트 11334에 있으므로 외부에서 액세스할 수 없습니다. 이 장에서는 ISPConfig에서 웹사이트를 만들고 프록시 구성을 추가합니다. 구성은 Apache와 Nginx 웹 서버 간에 다릅니다. 설치된 웹 서버 소프트웨어와 일치하는 장을 사용하십시오.

    아파치

    프록시 모듈을 활성화하고 아파치를 다시 시작하십시오.

    a2enmod proxy
    systemctl restart apache2

    그런 다음 ISPconfig에 로그인하고 Rspamd GUI에 액세스하는 데 사용할 웹 사이트를 만듭니다. 도메인 이름은 자유롭게 선택할 수 있습니다. 여기서는 rspamd.example.com을 사용하겠습니다. 해당 사이트에서 프로그래밍 언어나 기타 옵션을 활성화할 필요가 없으며 모든 것을 기본값으로 둡니다. SSL을 활성화하고 Lets encrypt를 사용하는 것이 좋습니다.

    웹 사이트의 옵션 탭으로 이동하여 Apache Directives 필드에 다음 구성을 입력합니다. Apache 2.2의 경우 다음을 사용합니다.

     <Location /rspamd>
    Order allow,deny
    Allow from all
    </Location>
    RewriteEngine On
    RewriteRule ^/rspamd$ /rspamd/ [R,L]
    RewriteRule ^/rspamd/(.*) http://127.0.0.1:11334/$1 [P]

    Apache 2.4의 경우 다음을 대신 사용하십시오.

    <Location /rspamd>
    Require all granted
    </Location>
    RewriteEngine On
    RewriteRule ^/rspamd$ /rspamd/ [R,L]
    RewriteRule ^/rspamd/(.*) http://127.0.0.1:11334/$1 [P]

    이제 웹 브라우저 https://rspamd.example.com/rspamd를 사용하여 Rspamd GUI에 액세스할 수 있습니다. 암호를 묻는 메시지가 표시되면 Rspamd 설치 중에 생성한 암호를 사용하십시오.

    엔진엑스

    ISPconfig에 로그인하고 Rspamd GUI에 액세스하는 데 사용할 웹사이트를 만듭니다. 도메인 이름은 자유롭게 선택할 수 있습니다. 여기서는 rspamd.example.com을 사용하겠습니다. 해당 사이트에서 프로그래밍 언어나 기타 옵션을 활성화할 필요가 없으며 모든 것을 기본값으로 둡니다. SSL을 활성화하고 Lets encrypt를 사용하는 것이 좋습니다.

    웹사이트의 옵션 탭으로 이동하여 Nginx 지시문 필드에 다음 구성을 입력합니다.

    location / {
    root /usr/share/rspamd/www/;
    try_files $uri @proxy;
    }

    location @proxy {
    proxy_pass http://127.0.0.1:11334;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    }

    이제 웹 브라우저 https://rspamd.example.com/에서 Rspamd GUI에 액세스할 수 있습니다. 암호를 묻는 메시지가 표시되면 ISPConfig에서 Rspamd에 대해 설정한 암호를 사용하십시오.

    Rspamd GUI

    이제 브라우저로 Rspamd GUI에 액세스하고 스팸 필터 속도 및 처리량에 대한 자세한 통계를 얻을 수 있습니다.

    스팸 이메일을 스캔하기 위해 Amavis 대신 Rspamd를 사용하도록 ISPConfig가 재구성되었습니다. Rspamd는 Dkim 서명에도 사용됩니다.

    Amavis 비활성화

    마지막으로 amavisd 서비스를 중지하고 비활성화합니다.

    systemctl stop amavisd-new
    systemctl disable amavisd-new

    결론

    Rspamd는 매우 정확한 필터 결과를 제공하는 Linux 서버용 최신 고성능 스팸 검사 소프트웨어입니다. ISPConfig는 버전 3.1.15부터 Rspamd를 스팸 검사 단위로 지원합니다. 이 튜토리얼은 ISPConfig 3.1 서버에서 amavisd.new를 Rspamd로 대체하는 방법을 보여줍니다.