Ochrana serveru před spamem
Spamování je pro vaši firmu vážným problémem a může si vybrat daň z vašeho času a prostředků na nápravu. Nejlepší způsob, jak tento problém vyřešit, je samozřejmě nikdy ho mít na prvním místě. Prvním způsobem, jak zabránit spamu, je zajistit, aby všechny CMS (jako WordPress, Joomla a Drupal) včetně témat a pluginů byly na vašem serveru VPS nebo na vyhrazeném serveru aktuální. Může to znít příliš jednoduše, ale existuje nespočet případů, kdy zastaralý plugin umožňuje hackerům zničit jinak zabezpečenou doménu.
Dalším způsobem, jak se můžete zabezpečit proti spamu, je vynutit si silná hesla buď ručním dotazem, nebo nastavením konfigurace, která nutí uživatele mít v hesle velké a malé písmeno, symbol a číslo. Ve WHM můžete vynutit sílu hesla v Centru zabezpečení>> Konfigurace síly hesla . Zde můžete požadovat, aby uživatelé měli alespoň určitou sílu pro všechna jejich hesla cPanel.
Pokud jste zákazníkem Liquid Web, možná budete chtít zvážit naše balíčky ochrany serveru.
Sledování toho, kdo posílá spam
Ale řekněme, že to nejhorší se už stalo. Jak postupujete při sledování toho, kdo spamuje a jak je spam rozesílán?
První nástroj, který máte, je ve WHM pod E-mail>> Mail Queue Manager .
Mail Queue Manager vám umožňuje vidět e-mailovou frontu a rozeznat, jaké e-maily se odesílají. Budete v pokušení okamžitě smazat všechny spamové e-maily, ale počkejte s tím. Nejprve chcete zjistit, kdo to posílá a jaký druh spamu se děje:kompromitace hesla nebo spamování skriptů. I když existují další způsoby, jak může spamovat, toto jsou dva nejlepší způsoby, které vidíme u serverů spamování.
Chcete-li začít, měli byste zkontrolovat, odkud e-maily přicházejí, prostřednictvím Správce fronty pošty. Chcete-li zkontrolovat odeslané e-maily, budete chtít vybrat krátké nedávné časové období. Jakmile budete mít tyto výsledky, budete se chtít podívat na předmět e-mailu. Zeptejte se sami sebe:
- Zní to jako spam?
- Komu se to posílá?
- Znáte příjemce?
Jakmile zjistíte, že e-mail je spam, budete se chtít podívat na záhlaví e-mailu. I když mohou záhlaví vypadat matoucí, jsme zde, abychom rozebrali důležité části:
Následuje příklad záhlaví, jak může vypadat spamový e-mail:
1g8rz7-1001y8-3K-H username 609 500 <[email protected]> 1538853089 2 -received_time_usec .072187 -ident username -received_protocol local -body_linecount 241 -max_received_linelength 499 -auth_id username -auth_sender [email protected] -allow_unqualified_recipient -allow_unqualified_sender -local XX 1 [email protected] 209P Received: from username by domain.com with local (Exim 4.91) (envelope-from <[email protected]>) id 1g8rz7-0001y8-2K for [email protected]; Sat, 06 Oct 2018 15:11:29 -0400 030T To: [email protected] 033 Subject: NEW SUBJECT 058 X-PHP-Script: domain.com/index.php for xxx.xxx.xxx.xxx 050 X-PHP-Originating-Script: 609:class-phpmailer.php 037 Date: Sat, 6 Oct 2018 10:11:23 +0000 041F From: username <[email protected]> 035R Reply-To: [email protected] 063I Message-ID: <[email protected]> 068 X-Mailer: PHPMailer 5.2.22 (https://github.com/PHPMailer/PHPMailer) 018 MIME-Version: 1.0 039 Content-Type: text/html; charset=UTF-8
Důležité části jsou zvýrazněny modře:
-auth_id username -auth_sender [email protected]
a
058 X-PHP-Script: domain.com/index.php for xxx.xxx.xxx.xxx 050 X-PHP-Originating-Script: 609:class-phpmailer.php
Prolomený e-mailový účet
První dva zvýrazněné řádky označují, že byl odeslán prostřednictvím ověřeného odesílatele „[email protected]“. Pokud auth_sender byl prázdný, přeskočili byste na další sekci Skriptové spamování . Pokud je toto vyplněno, budete chtít změnit heslo pro tento e-mailový účet. Měli by také spustit místní skenování malwaru na jakémkoli zařízení, které má přístup k e-mailovému účtu, protože mohou mít v počítači malware, který ukradl heslo. Po dokončení můžete přejít k další části nazvané Vymazání spamu ve frontě .
Skriptové spamování
Řádky níže označují doménu odesílatele a skript (class-phpmailer.php ) vygeneroval e-mail.
058 X-PHP-Script: domain.com/index.php for xxx.xxx.xxx.xxx 050 X-PHP-Originating-Script: 609:class-phpmailer.php
Od této chvíle budete chtít skript najít hledáním názvu souboru v kořenovém adresáři dokumentu.
Nejprve budete muset SSH na server jako root.
K nalezení souboru spustíte následující příkaz, který nahradí „phpmailer.php ” s názvem skriptu, který jste našli, a přidejte kořenový adresář dokumentu pro doménu (obvykle je to pod /home/{username}/public_html ).
find /doc/root/for/the/domain -name “phpmailer.php” -type f
Jakmile najdete umístění škodlivého souboru, budete jej chtít deaktivovat nebo odstranit. Chcete-li soubor zakázat, spusťte následující příkaz.
Důležité:Může to narušit funkčnost webu, ale zastaví se tím spamování a je důležité, abyste tak učinili, aby se vaše IP nedostala na černou listinu.
chmod 000 /name/of/file/to/be/disabled
Budete také chtít zkontrolovat, zda na účtu není další malware. Jedním z nejlepších nástrojů k tomu je Maldet. Zde je odkaz na recenzi Jak nastavit skener Maldet.
Jakmile nainstalujete software a správně jej nakonfigurujete, budete chtít spustit ruční skenování adresáře. Chcete-li to provést, zadejte SSH na server a po jeho úpravě spusťte následující příkaz, aby se zobrazil skutečný kořen dokumentu domény (obvykle je to pod /home/{username}/public_html ).
maldet -b -a /document/root/for/the/domain
Poté, co to uděláte, můžete zkontrolovat průběh kontroly spuštěním následujícího příkazu
tail /usr/local/maldetect/event_log
Po dokončení můžete zprávu zobrazit spuštěním následujícího nahrazení x číslem zprávy:
maldet --report xxxxx-xxxxx.xxxx
Odtud můžete jednotlivé soubory zakázat stejně jako dříve:
chmod 000 /name/of/file/to/be/disabled
Smazání spamu ve frontě
Poté, co zastavíte spamování buď změnou hesla k účtu, nebo deaktivací spamovacího skriptu, budete chtít vymazat frontu. První věc, kterou musíte udělat, je vymazat spamové e-maily. Následující příkaz budete chtít použít k odstranění potenciálně spamových e-mailů nahrazujících {email_address} s e-mailovou adresou, která rozeslala spam, nebo doménou, která tyto e-maily rozesílala.
Důležité:Tímto smažete všechny e-maily související s e-mailovou adresou nebo doménou.
grep -R --include='*-H' 'auth_id' /var/spool/exim/input | grep {email_address} | cut -d: -f1 | cut -d/ -f7 | cut -d- -f1-3 | xargs -n 1 exim -Mrm
Po dokončení budete chtít vymazat všechny e-maily, které se vrátily zpět na server, pomocí následujícího příkazu.
exim -bpr | grep '<>' | awk '{print $3}' | xargs -I % exim -Mrm %
Nakonec pokračujte ve sledování serveru, abyste se ujistili, že zde nebyly dva zdroje spamu, ale kromě toho jste server úspěšně zastavili od spamu.