برای فعال کردن Spam assassin بروی سرور خود ابتدا لازم است که این افزونه را بروی سرور نصب نمایید و سپس برای هر اکانت در پکیج های دایرکت ادمین آنرا فعال کنید.
قبل از اقدام به نصب این افزونه لازم است که دو بسته perl و cpan را بروی سرور نصب نمایید، معمولا بروی سرور های ایران سرور این دو بسته نصب می باشد اما شما می توانید آن ها را با استفاده از نرم افزار مدیریت پکیج مثل yum نصب نمایید. بدین منظور می توانید از دستور زیر استفاده نمایید:
yum install perl cpanl –y
حال نوبت نصب افزونه spam assassin بروی سرور می باشد، برای نصب این افزونه 2 راه پیشنهاد می شود، استفاده از yum و یا استفاده از custom build در directadmin:
1- نصب با استفاده از yum:
بدین منظور می توانید دستورات زیر را در شل وارد نمایید.
بدین منظور می توانید دستورات زیر را در شل وارد نمایید.
yum -y install perl-ExtUtils-MakeMaker perl-Digest-SHA perl-Net-DNS perl-NetAddr-IP perl-Archive-Tar perl-IO-Zlib perl-Digest-SHA perl-Mail-SPF \
perl-IP-Country perl-Razor2 perl-Net-Ident perl-IO-Socket-INET6 perl-IO-Socket-SSL perl-Mail-DKIM perl-DBI perl-Encode-Detect perl-HTML-Parser \
perl-HTML-Tagset perl-Time-HiRes perl-libwww-perl perl-Sys-Syslog
2- نصب از طریق Custom build:
می توانید به راحتی از طریق custom build مطابق آموزش زیر اقدام به نصب نمایید.
با استفاده از دستور زیر وارد مسیر مورد نظر می شوید.
cd /usr/local/directadmin/custombuild
اینک لازم است که بدانید نسخه Custom build شما چند می باشد، بدین منظور از دستور زیر استفاده نمایید.
./build version
سپس می توانید با دستورات زیر این افزونه را نصب نمایید:
cd /usr/local/directadmin/custombuild
./build set spamassassin yes
./build spamassassin
در صورتی که نسخه Custom build شما 1.2 و یا پایین تر می باشد، لازم که است که تغییری در فایل کانفیگ exim ایجاد نمایید، برای این کار ابتدا با استفاده از از یک ویرایشگر مثل nano و یا vi فایل متنی کانفیگ را باز نمایید.
nano /etc/exim.conf
و عبارت
. #include_if_exists /etc/exim.spamassassin.conf
را به عبارت
.include_if_exists /etc/exim.spamassassin.conf
تغییر دهید و فایل را ذخیره نمایید.
پس از آن دستور زیر را برای ایجاد فایل کانفیگ spam assassin وارد نمایید.
wget -O /etc/exim.spamassassin.confhttp://files.directadmin.com/services/exim.spamassassin.conf
در صورتی که از نسخه custom build 2 استفاده می کنید نیازی به انجام تغییرات در فایل exmin.con نیست.
برای بررسی صحت عملکرد سرویس spmd از دستور زیر استفاده کنید:
ps -ax | grep spamd
که خروجی آن به صورت زیر می باشد:
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
12669 ? Ss 0:01 /usr/bin/spamd -d -c -m 15
12670 ? S 0:00 spamd child
12671 ? S 0:00 spamd child
14714 pts/0 S+ 0:00 grep spamd
حال مطابق عکس زیر مطمئن شوید که این قابلیت در پکیج کاربران فعال می باشد.

پس از آن هر کاربر می تواند از طریق کنترل پنل بروی افزونه spamassasin setup کلیک و موارد دلخواه خود را تنظیم کند.


به طور پیشفرض دایرکت ادمین Spam assassin را برای هر کاربر فعال نمی کند و گزینه ای برای فعال کردن آن توسط کاربر قرار داده است، برای فعال کردن آن برای اکانت های تازه ایجاد شده می توانید از اسکریپت زیر استفاده نمایید:
فایل زیر را ایجاد نمایید:
nano /usr/local/directadmin/scripts/custom/user_create_post.sh
و مقادیر زیر را در آن وارد کنید:
#!/bin/sh
if [ "$spam" = "ON" ]; then
DIR=/home/$username/.spamassassin
mkdir $DIR
touch $DIR/user_prefs #or this is where you'd copy the default user_prefs you want them to have, instead of "touch".
chown ${username}:mail $DIR
chmod 771 $DIR
chown $username:$username $DIR/user_prefs
chmod 755 $DIR/user_prefs
touch $DIR/spam
chown mail:$username $DIR/spam
chmod 660 $DIR/spam
fi
exit 0;
سپس دسترسی اجرایی با دستور زیر به آن بدهید:
chmod 755 /usr/local/directadmin/scripts/custom/user_create_post.sh
اسکریپت بالا را می توان برای فعال کردن اکانت های فعلی نیز استفاده کرد، کافی است یک فایل به عنوان مثال spam.sh ایجاد نمایید و کدهای زیر را در آن قرار دهید:
nano spam.sh
#!/bin/sh
for i in `ls /usr/local/directadmin/data/users`; do
{
username=$i spam=ON /usr/local/directadmin/scripts/custom/user_create_post.sh
};
done;
exit 0;
پس از آن با دستور chmod 755 spam.sh دسترسی اجرایی به آن بدهید.
حال برای فعال کردن این قابلیت کافیست که این اسکریپت را اجرا کنید.
sh spam.sh