ďťż
 
 
   Postfix - instalacja i konfiguracja
 
 

Tematy

 
    
 

 

 

 

Postfix - instalacja i konfiguracja





ruun - 04-04-2008 10:56
Witam w zbiorczym temacie dotyczącym instalacji i konfiguracji Postfixa oraz niezbędnych dodatków.

:arrow: Wstęp
:arrow: Dokumentacja
:arrow: Gotowe poradniki
masz coś do dodania, pisz przez PW



vikus - 04-04-2008 20:11
Blokowanie wybranych załączników

Do pliku /etc/postfix/main.cf dodać
mime_header_checks = regexp:/etc/postfix/mime_header_checks.regexp plik mime_header_checks.regexp
/^\s*Content-(Disposition|Type).*name\s*=\s*"?(.+\.(lnk|asd|hlp|ocx|reg|bat|c[ho]m|cmd|exe|dll|vxd|pif|scr|hta|jse?|sh[mbs]|vb[esx]|ws[fh]|wav|mov|wmf|xl))"?\s*$/
  REJECT Attachment type not allowed. File "$2" has the unacceptable extension "$3" lub wersja krótka:
/name=[^>]*\.(pdf|zip)/ REJECT Attachment type not allowed! Blokowanie wybranych słów w mailu (body)
Do pliku /etc/postfix/main.cf dodać
body_checks = regexp:/etc/postfix/body_checks /etc/postfix/body_checks

/lol/ REJECT Body Spam Rule - Spadaj Dziadu!
/dupa/ REJECT Body Spam Rule - Spadaj Dziadu!
Blokowanie wybranych słów w mailu (head Subject)
Do pliku /etc/postfix/main.cf dodać
header_checks = regexp:/etc/postfix/header_checks /etc/postfix/header_checks
/^Subject: .*ass*./ REJECT Head Spam Rule - Spadaj dziadu!
/^Subject: .*dick*./ REJECT Head Spam Rule - Spadaj dziadu!
Blacklist dla postfixa

do pliku /etc/postfix/main.cf dodaj

# Restrykcje - Sprawdzanie poczty na podstawie adresu odbiorcy listu (MAIL FROM):
smtpd_sender_restrictions =
    hash:/etc/postfix/sender_checks,
    permit_sasl_authenticated,
    reject_unknown_sender_domain,
    reject_non_fqdn_sender,
    reject_unknown_address Najważniejsza jest ta linia hash:/etc/postfix/sender_checks,
w tym pliku trzymasz adresy których nie lubisz;)
przykład pliku:
test@op.pl REJECT a idz w...
gmail.com REJECT a idz w... potem generujesz plik .db poleceniem

postmap /etc/postfix/sender_checks I teraz po restarcie postfixa każdy mail z pliku sender_checks będzie odrzucany:)



vikus - 04-04-2008 20:25
Blokowanie spamu w obrazkach i pdfach uzywajac sygnatur SaneSecurity do Clamav.

Pobieramy odpowiedni skrypcik ze strony autora
cd /etc/clamav/
wget http://www.sanesecurity.com/clamav/ss-msrbl.txt
mv ss-msrbl.txt ss-msrbl.sh
chmod +x ss-msrbl.sh Teraz musimy poprawić kilka zmiennych w skrypcie
ÂŚcieżka do pliku pid (możesz to sprawdzić poleceniem grep ^PidFile /etc/clamav/clamd.conf)

clamd_pid=/var/run/clamd/clamd.pid zmieniamy na
clamd_pid=/var/run/clamav/clamd.pid usera na jakim pracuje clamav (możesz to sprawdzić poleceniem grep ^User /etc/clamav/clamd.conf)
# Set ClamD user and group accounts.
clam_user="clamav"
clam_group="clamav" zmieniamy na
# Set ClamD user and group accounts.
clam_user="amavis"
clam_group="clamav" Do uruchomienia skrypu będą nam potrzebne te pakiet wiec zainstalujmy je
aptitude install rsync curl i sprawdzy czy działa:
# /etc/clamav/ss-msrbl.sh Wynik wykonania powyższego skryptu
============================================
SaneSecurity phish.ndb Signature File Update
============================================

  % Total    % Received % Xferd  Average Speed  Time    Time    Time  Current
                                Dload  Upload  Total  Spent    Left  Speed
  0    0    0    0    0    0      0      0 --:--:--  0:00:01 --:--:--    0

============================================
SaneSecurity scam.ndb Signature File Update
============================================

  % Total    % Received % Xferd  Average Speed  Time    Time    Time  Current
                                Dload  Upload  Total  Spent    Left  Speed
  0    0    0    0    0    0      0      0 --:--:--  0:00:02 --:--:--    0

============================================
MSRBL MSRBL-Images.hdb Signature File Update
============================================

Number of files: 1
Number of files transferred: 0
Total file size: 34648 bytes
Total transferred file size: 0 bytes
Literal data: 0 bytes
Matched data: 0 bytes
File list size: 35
File list generation time: 0.001 seconds
File list transfer time: 0.000 seconds
Total bytes sent: 34
Total bytes received: 77

sent 34 bytes  received 77 bytes  44.40 bytes/sec
total size is 34648  speedup is 312.14

============================================
MSRBL MSRBL-SPAM.ndb Signature File Update
============================================

Number of files: 1
Number of files transferred: 0
Total file size: 235520 bytes
Total transferred file size: 0 bytes
Literal data: 0 bytes
Matched data: 0 bytes
File list size: 33
File list generation time: 0.001 seconds
File list transfer time: 0.000 seconds
Total bytes sent: 34
Total bytes received: 75

sent 34 bytes  received 75 bytes  43.60 bytes/sec
total size is 235520  speedup is 2160.73
Teraz sprawdzamy czy nowe sygnatury są na miejscu
#ls -l /var/lib/clamav
razem 17935
drwxr-xr-x 2 amavis clamav      504 2008-04-04 19:40 daily.inc
-rw-r--r-- 1 amavis clamav 11347852 2008-01-27 21:28 main.cvd
-rw------- 1 amavis clamav      364 2008-04-04 19:34 mirrors.dat
-rw-r--r-- 1 amavis clamav    34648 2008-04-04 19:25 MSRBL-Images.hdb
-rw-r--r-- 1 amavis clamav    31765 2008-04-04 19:40 MSRBL-Images.hdb-bak
-rw-r--r-- 1 amavis clamav  235520 2008-03-28 15:42 MSRBL-SPAM.ndb
-rw-r--r-- 1 amavis clamav  235359 2008-03-29 02:30 MSRBL-SPAM.ndb-bak
-rw-r--r-- 1 amavis clamav  1453797 2008-04-04 19:40 phish.ndb
-rw-r--r-- 1 amavis clamav  1453604 2008-04-04 19:40 phish.ndb-bak
-rw-r--r-- 1 amavis clamav  241303 2008-04-04 18:33 phish.ndb.gz
-rw-r--r-- 1 amavis clamav  1505443 2008-04-04 19:40 scam.ndb
-rw-r--r-- 1 amavis clamav  1504524 2008-04-04 19:40 scam.ndb-bak
-rw-r--r-- 1 amavis clamav  286650 2008-04-04 18:33 scam.ndb.gz Dodajmy jeszcze skrypcik do cron żeby bazy aktualizowały się automatycznie np o 4 w nocy:
do pliku /etc/crontab dodaj poniższy wpisz
0 4    * * *  root    /etc/clamav/ss-msrbl.sh &>/dev/null End



vikus - 13-04-2008 21:22
Automatyczne dodawanie stopki do wyslanego maila

Krótki opis jak wykorzystać narzędzie alterMIME aby dodawać stopkę do wszystkich wysłanych maili z naszego serwera.

Instalujemy alterMIME
aptitude install altermime Następnie tworzymy usera ‘filter’ z katalogiem domowym w /var/spool/filter (alterMIME będzie uruchamiany pod tym userem)
useradd -r -c "Postfix Filters" -d /var/spool/filter filter Tworzymy katalog domowy
mkdir -p /var/spool/filter I nadajemy mu odpowiednie prawa:
chmod 750 /var/spool/filter && chown filter:filter /var/spool/filter Teraz możemy skopiować przykładowy plik, który będzie filtrował nasze wiadomości:
cp /usr/share/doc/altermime/examples/postfix_filter.sh /etc/postfix/disclaimer i nadajemy mu odpowiednie prawa
chmod 750 /etc/postfix/disclaimer && chgrp filter /etc/postfix/disclaimer Problem z tym skryptem polega jednak na tym ze dodaje on stopkę do wszystkich maili przychodzących i wychodzących, co nie jest pożądanym celem przez nas.
Więc zrobiłem mały update skrypt aby dodawał stopkę tylko do wysyłanych maili:

#!/bin/sh
# Localize these.
INSPECT_DIR=/var/spool/filter
SENDMAIL=/usr/sbin/sendmail
DOMAIN="test.com"

# Exit codes from <sysexits.h>
EX_TEMPFAIL=75
EX_UNAVAILABLE=69

# Clean up when done or when aborting.
trap "rm -f in.$$" 0 1 2 3 15

# Start processing.
cd $INSPECT_DIR || { echo $INSPECT_DIR does not exist; exit
$EX_TEMPFAIL; }

cat >in.$$ || { echo Cannot save mail to file; exit $EX_TEMPFAIL; }

grep "From:" in.$$ | grep -i $DOMAIN > /dev/null
let R=$?

if [ $R -eq 0 ]; then
  /usr/bin/altermime --input=in.$$ \
                  --disclaimer=/etc/postfix/disclaimer.txt \
                  --disclaimer-html=/etc/postfix/disclaimer.txt \
                  --xheader="X-Copyrighted-Material: Please visit http://www.company.com/privacy.htm" || \
                  { echo Message content rejected; exit $EX_UNAVAILABLE; }
fi

$SENDMAIL "$@" <in.$$

exit $? Zmień w powyższym skrypcie zmienna DOMAIN na własną domenę do której ma być dodawana stopka.

Kopiujemy przykładową stopke
cp /usr/share/doc/altermime/examples/disclaimer.txt /etc/postfix/disclaimer.txt Plik możemy edytować według własnych potrzeb. Tekst z tego pliku będzie doklejany do każdego wychodzącego maila.

Teraz musimy poinformować postfixa aby skrypt /etc/postfix/disclaimer wykonywał sie podczas wysyłania maili.
Otwórz /etc/postfix/master.cf i dodaj -o content_filter=dfilt: do pod linia smtp:
nano /etc/postfix/master.cf #
# Postfix master process configuration file.  For details on the format
# of the file, see the master(5) manual page (command: "man 5 master").
#
#========================================================
# service type  private unpriv  chroot  wakeup  maxproc command + args
#              (yes)  (yes)  (yes)  (never) (100)
#========================================================
smtp      inet  n      -      -      -      -      smtpd
    -o content_filter=dfilt:
[...] I na koniect tego samego pliku dodaj poniżesz linie

[...]
dfilt    unix    -      n      n      -      -      pipe
    flags=Rq user=filter argv=/etc/postfix/disclaimer -f ${sender} -- ${recipient} I teraz pozostało nam tylko zresetować postfixa
/etc/init.d/postfix restart Po resecie każdy wychodzący mail z domeny podanej w pliku /etc/postfix/disclaimer będzie posiadał stopkę jaką określiliśmy w pliku /etc/postfix/disclaimer.txt.
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • minister.pev.pl

  •  

     


     

     
    Copyright 2003. MĂłj serwis