Aqui vamos falar sobre as filtragens que vamos fazer. Como no esquema abaixo:
Instalando os pacotes necessários, lembrando que todos eles estão dentro de /usr/ports. Basta entrar no diretório e digitar "make install clean", Como no exemplo abaixo:
# cd /usr/ports/archivers/p5-Compress-Raw-Zlib/
# make install clean
archivers/p5-Compress-Raw-Zlib/
archivers/p5-IO-Compress-Base/
archivers/p5-IO-Compress-Zlib/
archivers/p5-Compress-Zlib/
archivers/p5-IO-Zlib/
archivers/p5-Archive-Tar/
archives/arc
archives/lha
archives/unzip
archives/zoo
archives/unarj
archives/unrar
archives/cabextract
archives/freeze 
archives/lzo 
archives/lzop
archives/p5-Archive-Zip
archives/ripole
converters/p5-Convert-BinHex
converters/p5-Convert-TNEF
converters/p5-Convert-UUlib
converters/rpm2cpio
devel/re2c
devel/p5-IO-String/
devel/p5-Algorithm-Diff/
devel/libidn
devel/gmp
textproc/p5-Text-Diff
net/p5-Net-CIDR
net/p5-Net-IP
net/p5-Net-DNS
security/p5-Digest-SHA1
net/p5-Sys-Hostname-Long/
www/p5-URI
mail/p5-Mail-SPF-Query
net/p5-Socket6
net/p5-IO-INET6
net/curl
security/gnupg
security/p5-Crypt-SSLeay
security/p5-Net_SSLeay
security/p5-IO-Socket-SSL
www/p5-HTML-Parser
www/p5-HTML-Tagset
www/libghttp
www/p5-HTTP-GHTTP/
www/p5-libwww
mail/p5-Mail-SpamAssassin
security/clamav
devel/p5-Net-Server
sysutils/p5-Unix-Syslog
mail/amavisd-new
Bom, depois de todos esses pacotes instalados, vamos agora para a melhor parte, configurar os aplicativos.
Spamassassin
Edite o arquivo 
/etc/mail/spamassassin/local.cf e altere pra ficar da seguinte forma:
rewrite_header	Subject	***** SPAM *****
report_safe	1
lock_method	flock
required_score	5.0
 
ClamAV
Nele vamos editar o arquivo 
freshclam.conf para atualização correr sempre bem, edite o arquivo /etc/freshclam.conf para ficar assim (Comente a linha que tenha escrito Example):
DatabaseDirectory	/var/db/clamav
DatabaseOwner		_clamav
DNSDatabaseInfo		current.cvd.clamav.net
DatabaseMirror		db.it.clamav.net
DatabaseMirror		database.clamav.net
MaxAttempts		3
checks			24
 
Salve e saia, depois crie o arquivo de log:
# touch /var/log/freshclam.log
# chow _clamav /var/log/freshclam.log
E agora faça a atualização:
# freshclam
Adicione no crontab com o comando "crontab -e" a seguinte linha:
* 23 * * * /usr/local/bin/freshclam >/dev/null 2>&1
Assim todos os dias as 23 horas ele vai executar o programa de atualização das assinaturas de vírus e tudo mais. Então assim vai se manter atualizado.
Agora edite o arquivo 
/etc/clamd.conf para ficar da seguinte forma:
DatabaseDirectory	/var/db/clamav
LocalSocket		/var/clamav/clamd.socket
User			_clamav
 
Faça o mesmo procedimento para a criação do arquivo de log do clamd que foi feito com o freshclam:
# touch /var/log/clamd.log
# chow _clamav /var/log/clamd.log
Adicione as seguintes linhas ao arquivo /etc/rc.local para que o clamd seja inicializado no boot do servidor:
if [ -x /usr/local/sbin/clamd ]; then
    echo -n ' clamd'
    [ -S /var/clamav/clamd.socket ] && rm -f /var/clamav/clamd.socket
    /usr/local/sbin/clamd >/dev/null 2>&1
fi
Amavisd-new
Vamos editar o arquivo 
/etc/amavisd.conf descomentando os seguintes "pedaços":
$max_servers = 2;
$daemon_user  = '_clamav'; # Run under the same user as ClamAV
$daemon_group = '_clamav'; # Run under the same group as ClamAV
$mydomain = 'exemplo.com.br';
$MYHOME   = '/var/amavisd';
$TEMPBASE = "$MYHOME/tmp";   # Working directory, needs to be created manually
$ENV{TMPDIR} = $TEMPBASE;
$QUARANTINEDIR = '/var/clamav/quarantine';
E mais embaixo no arquivo você vai encontrar informações a respeito do clamav, pode descomentar também. Como a linha abaixo (não esqueça de alterar a parte do socket):
@av_scanners = (
  ['ClamAV-clamd',
    \&ask_daemon, ["CONTSCAN {}\n", "/var/clamav/clamd.socket"],
    qr/\bOK$/, qr/\bFOUND$/,
    qr/^.*?: (?!Infected Archive)(.*) FOUND$/ ],
);
Mude as permissões:
# chown -R _clamav._clamav /var/amavisd/
Agora adicione ao arquivo /etc/rc.local as seguintes linhas para que ele seja iniciado no boot:
if [ -x /usr/local/sbin/amavisd ]; then
    echo -n ' amavisd'
    /usr/local/sbin/amavisd >/dev/null 2>&1
fi
Agora adicione ao arquivo /etc/postfix/master.cf as seguintes linhas:
smtp-amavis unix -   -   -   -   2  smtp
    -o smtp_data_done_timeout=1200
    -o smtp_send_xforward_command=yes
    -o disable_dns_lookups=yes
    -o max_use=20
127.0.0.1:10025 inet n   -   -   -   -  smtpd
    -o content_filter=
    -o local_recipient_maps=
    -o relay_recipient_maps=
    -o smtpd_restriction_classes=
    -o smtpd_delay_reject=no
    -o smtpd_client_restrictions=permit_mynetworks,reject
    -o smtpd_helo_restrictions=
    -o smtpd_sender_restrictions=
    -o smtpd_recipient_restrictions=permit_mynetworks,reject
    -o mynetworks_style=host
    -o mynetworks=127.0.0.0/8
    -o strict_rfc821_envelopes=yes
    -o smtpd_error_sleep_time=0
    -o smtpd_soft_error_limit=1001
    -o smtpd_hard_error_limit=1000
    -o smtpd_client_connection_count_limit=0
    -o smtpd_client_connection_rate_limit=0
    -o receive_override_options=no_header_body_checks,no_unknown_recipient_checks
Agora recarregue o postfix:
# postconf -e 'content_filter=smtp-amavis:[127.0.0.1]:10024'
# postfix reload