-
Amavisd-new w CentOS 6 i nie tylko
Chciałbym Was zainteresować narzędziem o nazwie Amavisd-new, który jest pośrednikiem pomiędzy serwerem pocztowym (MTA), a oprogramowaniem pomocniczym, np. antywirusem, czy antyspamem. Poniżej przedstawię podstawowe informacje dotyczące instalacji i wstępnej konfiguracji z Postfix-em. Zaczynajmy.
rpm -ivh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-5.noarch.rpm
Instalujemy paczkę konfiguracyjną repozytorium EPEL jeśli nie mamy go skonfigurowanego w naszym systemie.
yum install amavisd-new clamd clamav spamassassin
Zmieniamy użytkownika z którego uruchamiany jest demon antywirusowy- clamd. Edytujemy w tym celu plik „/etc/clamd.conf”. Standardowym użytkownikiem jest clam lub clamav, w zależności z którego repozytorium zainstalowaliśmy antywirusa. Zmiana usera jest koniecznie, ponieważ Amavis nie byłby w stanie uruchomić skanowania naszej poczty, ponieważ nie miałby uprawnień. Ustawiamy:
User amavis
Następnie ustawiamy uprawnienia:
chown amavis:amavis /var/run/clamav/Restartujemy usługę poleceniem:
service clamd restart
Przystępujemy do konfiguracji amavis-a. Edytujemy plik „/etc/amavisd/amavisd.conf”:
$mydomain = 'domena_którą_będzie_identyfikował_się_serwer’;
$inet_socket_port = 10024; # określamy port lokalny TCP na którym będzie nasłuchiwał deamon amavisa, standardowo jest nim 10024
$sa_tag_level_deflt = 2.0; # poziom po którego osiągnięciu dodawane są headery informujące o prawdopodobieństwie spamu
$sa_tag2_level_deflt = 6.2; # poziom po którego osiągnięciu dodawane są headery informujące o wykrytym spamie (X-Spam-Status: Yes) oraz informacja w temacie
$sa_kill_level_deflt = 6.9; # po osiągnięciu tego poziomu, zastosowanie ma akcja ustawiona w „$final_spam_destiny” – domyślnie jest to kwarantanna
$enable_dkim_verification = 1; # włączanie weryfikacji DKIM //tutorial niebawem\\
$enable_dkim_signing = 1; # włączanie podpisywanie wiadomości (1- on, 0- off)
Poniżej prezentuje domyślną konfigurację Amavisd-new dla ClamAV-clamd:
[’ClamAV-clamd’,
\&ask_daemon, [„CONTSCAN {}\n”, „/var/spool/amavisd/clamd.sock”],
qr/\bOK$/m, qr/\bFOUND$/m,
qr/^.*?: (?!Infected Archive)(.*) FOUND$/m ],
Należy zamienić w niej „/var/spool/amavisd/clamd.sock” na „/var/run/clamav/clamd.sock”.
Amavisd-new ma wiele opcji antyspamowych i antywirusowych. W tym tutorialu wspomnę tylko o kilku:
– blokada wybranych typów załączników np. exe, zip$banned_filename_re = new_RE(
qr’.\.(exe|vbs|pif|scr|zip|cpl)$’i,
);
– białe i czarne listy nadawców oraz tematów wiadomości konfigurowane na podstawie punktacji (odpowiednio poprzez wartości ujemne i dodatnie)
@score_sender_maps = ({
’.’ =>
new_RE(
[qr’^(viagra|price|watch)@’i => 5.0],
[qr’^(inkjetplanet|marketopt|MakeMoney)\d*@’i => 5.0],
),
{
’returns.groups.yahoo.com’ => -3.0,
’clusternews@linuxnetworx.com’ => -3.0,
’sender@example.net’ => 3.0,
’.example.net’ => 1.0,
},
],
});
Uruchamiamy nasz kombajn „antywirusowo-antyspamowy”:
service amavisd start
Podłączamy amavis-a do Postfix-a. Wpierw edytujemy plik „master.cf”.
vim /etc/postfix/master.cf
Następnie edytujemy plik „/etc/postfix/main.cf” i dopisujemy następującą linię:
content_filter=amavis:[127.0.0.1]:10024
Zapisujemy i restartujemy postfix-a poleceniem:
service postfix restart
W razie problemów, proszę pisać w komentarzach lub na forum.
Hmm.. fajnie, ale coś tu nie gra już na wstępie. Przy istalacji wg powyższego opisu (na CentOS 6.2) mam błąd – amavisd-new-2.6.4-2.el6.noarch (epel) Requires /etc/clamd.d, bo Installed clamd-0.97.3-1.el6.x86_64 (rpmforge) nie ma czegoś takiego jak clamd.d. Ręczne mkdir /etc/clamd.d nie pomaga, więc instalacja kończy się komunikatem processing dependency: /etc/clamd.d for package: amavisd-new-2.6.4-2.el6.noarch.