|

|
 |
 |
PROCMAIL
Program Procmail potrafi przetwarzać przychodzące listy na podstawie
zawartości ich nagłówka, podejmując różnego rodzaju działania.
Jest on zainstalowany na serwerach CETI i wymaga jedynie stworzenia
w katalogu domowym użytkownika* pliku konfiguracyjnego .procmailrc**
zawierającego dyrektywy programu.
W instrukcji obsługi do programu procmail jest informacja, że do
działania wymaga on stworzenia pliku .forward zawierającego przekierowanie
całej poczty do procmaila. Na serwerach CETI nie jest to konieczne,
a wręcz niezalecane (serwer nie zezwala na przekazywanie poczty dowolnym
programom). By procmail działał, wystarczy stworzyć po prostu odpowiedni
plik .procmailrc.
PLIK KONFIGURACYJNY AUTORESPONDERA WERSJA 1.0
Dodatkowych informacji o
innych opcjach dostepnych w pliku procmailrc mozna uzyskac
w trybie terminalowym (telnet):
man procmailex - przyklady wykorzystania regulek
man procmailrc - kompletny opis polecen pliku .procmailrc
man procmailsc - system punktowy
- nazwa pliku z logami autorespondera
LOGFILE=$HOME/auto.log
- nazwa pliku, ktory jest odpowiedzia autorespondera
PLIK=$HOME/auto.txt
#Przykład 1: Kasowanie niechcianej poczty na podstawie adresu From
# zamiast adresu spam@spam.pl prosze wpisac adres spammera
:0:
* ^FROM.*spam@spam.pl
/dev/null
#Przykład 2: Kasowanie niechcianej poczty na podstawie tematu listu
# zamiast ciagu "temet listu" prosze wpisac blokowany temat
:0:
* ^Subject.*temat listu
/dev/null
#Przykład 3: Kasowanie niechcianej poczty na podstawie jej wielkosci
# zamiast ciagu "15000" prosze wpisac ilosc linii listu:
# wartosc 15000 odpowiada okolo 1,2 MB
:0 Bh
* -15000^0
* 1^1 ^.*$
/dev/null
#Przykład 4: Przesylanie poczty wyslanej na alias na konto u innego ISP
# zamiast podanych adresow prosze wpisac wlasne dane
:0:
* ^TOalias@ceti.pl
! adres@domena.pl
#Przykład 5: Przekazywanie z pozostawieniem (literka c po 0:)
# w pliku "poczta" na koncie listów od "nadawca1" z tematem
# zawierającym "specyficzny_ciag_znakow"
:0
* ^From.*nadawca1
* ^Subject:.*specyficzny_ciag_znakow
{
:0 c
! ty_tez_to_powinienes_zobaczyc@jakis.adres.pl
:0
poczta
}
Przykład3: zapisuj kopie wszystkich listów do pliku
na koncie. Uwaga na ograniczenia dyskowe.
:0 c
kopiazapasowa
#Przykład 6: Automatyczna odpowiedz na email do konkretnego odbiorcy
# zamiast ciagu "login@ceti.pl" prosze wpisac wlasny adres
# zamiast ciagu "alias@ceti.pl" prosze wpisac wlasne dane
:0
* !^FROM_DAEMON
* !^X-Loop: login@ceti.pl
* !^Precedence.*(junk|bulk|list)
# ---po znaku "*" wprowadzic adres---------------------------
* ^To.*alias@ceti.pl
# -----------------------------------------------------------
| ( /usr/bin/formail -r -A "X-Loop: login@ceti.pl" \
-I 'From: login@ceti.pl'; \
cat $PLIK \
)|$SENDMAIL -oi -t -Nsuccess,failure
#Przykład 7: Automatyczna odpowiedz na email od konkretnego nadawcy
# zamiast ciagu "login@ceti.pl" prosze wpisac wlasny adres
# zamiast ciagu "adres@domena.pl prosze wpisac wlasne dane
:0c
* !^FROM_DAEMON
* !^X-Loop: login@ceti.pl
* !^Precedence.*(junk|bulk|list)
# ---po znaku "*" wprowadzic adres---------------------------
* ^From.*adres@domena.pl
-----------------------------------------------------------
| ( /usr/bin/formail -r -A "X-Loop: login@ceti.pl" \
-I 'From: login@ceti.pl'; \
cat $PLIK \
)|$SENDMAIL -oi -t -Nfailure
#Przykład 8: Automatyczna odpowiedz na email z konkretnym tematem
#zamiast ciagu "login@ceti.pl" prosze wpisac wlasny adres
#zamiast ciagu "temet" prosze wpisac wlasne dane
:0
* !^FROM_DAEMON
* !^X-Loop: login@ceti.pl
* !^Precedence.*(junk|bulk|list)
# ---po znaku "*" wprowadzic tekst--------------------------
* ^Subject.*temet
# ----------------------------------------------------------
| ( /usr/bin/formail -r -A "X-Loop: login@ceti.pl" \
-I 'From: login@ceti.pl'; \
cat $PLIK \
)|$SENDMAIL -oi -t -Nsuccess,failure
#Przykład 9: Automatyczna odpowiedz na email z podanym slowem w tresci
# zamiast ciagu "login@ceti.pl" prosze wpisac wlasny adres
# zamiast ciagu "tresc" prosze wpisac wlasny tekst
:0 B H
* !^FROM_DAEMON
* !^X-Loop: login@ceti.pl
* !^Precedence.*(junk|bulk|list)
# ---po znaku "*" wprowadzic tekst---------------------------
* tresc
# -----------------------------------------------------------
| ( /usr/bin/formail -r -A "X-Loop: login@ceti.pl" \
-I 'From: login@ceti.pl'; \
cat $PLIK \
)|$SENDMAIL -oi -t -Nsuccess,failure
To tylko kilka przykładów zastosowania programu procmail, więcej na
jego temat można przeczytać w dokumentacji
systemowej lub na jego stronie domowej pod adresem www.procmail.org.
* aby wejść do katalogu domowego należy w linji komend systemu wydać polecenie "cd ~" bez znaków "".
** plik konfiguracyjny powinien mieć odpowiednie prawa, nadajemy je po stworzeniu poleceniem "chmod 644 ~/.procmailrc".
*** dokumentacje programu można przeglądać wydając polecenia systemowe: "man procmail" opis programu, "man procmailrc" opis pliku konfiguracyjnego, "man procmailex" przykłady plików konfiguracyjnych.
|
 |