transparent a virus... Dodał: grzywka18 Dnia: 2008-05-13 11:19:58 hmm Dodał: dzibi Dnia: 2007-12-12 10:01:14 Bez tytułu Dodał: grzywka18 Dnia: 2007-12-11 17:46:06 Bez tytułu Dodał: termid Dnia: 2007-05-09 18:01:11 Bez tytułu Dodał: sarelo33 Dnia: 2006-12-30 23:50:14 Jest ok ale.. Dodał: theviant Dnia: 2006-11-16 08:10:05
Google
Newsletter
Zapisz się na nasz newsletter, jeżeli chcesz być na bieżąco informowany o aktualnościach..
Postfix - ''Krok po kroku'' - 1a. Instalacja i podstawowa konfiguracja
piątek, 08 kwietnia 2005 -
Napisał: Artur Zdoliński (26193 odsłon)
Czym jest SMPT Auth chyba nie trzeba tłumaczyć - bez tej opcji każda osoba
może wysłać email z naszego konta – jak ? Nie będę tego tłumaczył bo nie o to
chodzi przecież…
Ustawienie SMTP Auth spowoduje, prośbę o podanie hasła podczas próby wysłania
poczty przez MTA. Pierwszym krokiem, który powinniśmy wykonać jest
zainstalowanie niżej wymienionych paczek:
# cd /usr/ports/security/cyrus-sasl2
# make build && make install && make clean
# cd /usr/ports/security/cyrus-sasl2-saslauthd
# make build && make install && make clean
(Jeżeli mamy nowo zainstalowany system możliwe, iż wyskoczy nam błąd: Dependency warning: used OpenSSL version contains known vulnerabilities
Please update or define either WITH_OPENSSL_BASE or WITH_OPENSSL_PORT)
Oznacza to, iż przed instalacją Cyrus-sasl2 należałoby zainstalować
biblioteke open ssl
# pkg_add –r openssl
Teraz powinniśmy skonfigurować SASL2, przechodzimy do katalogu /usr/local/lib/sasl2,
# cd /usr/local/lib/sasl2
Tworzymy w nim plik smtpd.conf, następnie edytujemy go i ustawiamy metodę
autoryzacji użytkowników:
# touch /usr/local/lib/sasl2/smtpd.conf
# ee /usr/local/lib/sasl2/smtpd.conf
--- smtpd.conf ---
pwcheck_method: saslauthd
mech_list: plain login
--- end smtpd.conf ---
Zaczynamy od konfiguracji pliku main.cf - dodajemy do niego poniższe linijki:
# Zgodność ze starszymi klientami pocztowymi, np. Outlook Express 4
broken_sasl_auth_clients = yes
# Metody autoryzacji, które nie będą obsługiwane
smtpd_sasl_security_options = noanonymous
# Ustawienie autoryzacji jest wymagana przy wysyłaniu listów z określonych
# tutaj domen. Jeśli zostawisz ten parametr pusty będzie to oznaczało, że
# autoryzacja jest wymagana przy wszystkich domenach na Twoim serwerze
smtpd_sasl_local_domain =
# Restrykcje - Sprawdzanie poczty na podstawie adresu nadawcy listu (RCPT
TO):
smtpd_recipient_restrictions =
permit_mynetworks,
permit_sasl_authenticated,
reject_unauth_destination,
reject_unknown_recipient_domain,
reject_non_fqdn_recipient
# Restrykcje - Sprawdzenie IP komputera, z którego wysyłana jest wiadomo.ć:
smtpd_client_restrictions =
permit_sasl_authenticated,
#reject_unknown_client,
reject_rbl_client relays.ordb.org,
reject_rbl_client dnsbl.njabl.org
# Restrykcje - Sprawdzanie poczty na podstawie adresu odbiorcy listu (MAIL
FROM):
smtpd_sender_restrictions =
permit_sasl_authenticated,
reject_unknown_sender_domain,
reject_non_fqdn_sender,
hash:/usr/local/etc/postfix/access
--- end main.cf ---
Restrykcjami możemy manipulować dowolnie. Dostępne są 3 rodzaje restrykcji
wymienione powyżej. Oto opis niektórych z nich:
Sprawdzanie poczty na podstawie adresu nadawcy listu (RCPT TO). Zmienna odpowiedzialna za tą restrykcje to "smtpd_recipient_restrictions": reject_non_fqdn_recipient - odrzuć list, jeśli podany adres odbiorcy
nie jest "pełny" (fully-qualified domain form) reject_unknown_recipient_domain - odrzuć, jeśli adres docelowy listu,
jego adres nie istnieje w DNS (czyli i tak nie ma dokąd go wysłać) check_recipient_access maptype:mapname - przeszukuje plik podany jako
argument i na jego podstawie decyduje czy wysłać list. permit_auth_destination - przyjmij list, jeśli to nasz serwer jest jego
celem lub adres przeznaczenia zawiera się w zmiennej $relay_domains. Jeśli
warunek nie jest spełniony, bierz pod uwagę następne ograniczenia. reject_unauth_destination - podobne do poprzedniego, ale odrzuć list,
jeśli to nasz serwer nie jest jego przeznaczeniem. Odrzuca list, nie sprawdza
innych ograniczeń. check_relay_domains - jeśli adres IP komputera, który wysyła list
pasuje do $relay_domains lub celem listu jest $relay_domains lub to nasz
serwer jest komputerem docelowym - przyjmij list, w przeciwnym wypadku go
odrzuć i zakończ. permit - pozwól na wysłanie listu. Przydatne na końcu listy ograniczeń,
jako zachowanie domyślne, gdy poprzednie reguły nie pasują. rejent - odrzuć list. Przydatne na końcu listy ograniczeń, jako
zachowanie domyślne, gdy poprzednie reguły nie pasują.
Sprawdzenie IP komputera, z którego wysyłana jest wiadomość. Zmienna odpowiedzialna za tą restrykcje to "smtpd_client_restrictions": permit_mynetworks - pozwala na połączenie się z naszym serwerem
komputerom, z naszej sieci lokalnej (dokładnie: komputerom, które zostały
ujęte w zmiennej $mynetworks) reject_unknown_client - odrzuca komputer, którego adresu IP nie ma w
DNS check_client_access maptype:mapname - sprawdza IP/nazwę komputera w
pliku wpisanym jako parametr. permit - pozwól na połączenie. Przydatne na końcu listy ograniczeń,
jako zachowanie domyślne, gdy poprzednie reguły nie pasują. rejent - odrzuć połączenie. Przydatne na końcu listy ograniczeń, jako
zachowanie domyślne, gdy poprzednie reguły nie pasują.
Sprawdzanie poczty na podstawie adresu odbiorcy listu (MAIL FROM). Zmienna odpowiedzialna za tą restrykcje to "smtpd_sender_restrictions": reject_unknown_sender_domain - odrzuca list, jeśli adres nadawcy,
dokładnie część po @ adresu nadawcy, nie ma wpisu w DNS. reject_non_fqdn_hostname - odrzuca list, jeśli adres nadawcy, dokładnie
część po @ adresu nadawcy nie jest "pełna" (fully-qualified domain form). check_sender_access maptype:mapname - przeszukuje plik podany jako
argument. Na jego podstawie decyduje czy użytkownik może listy. permit - pozwól na wysłanie listu. Przydatne na końcu listy ograniczeń,
jako zachowanie domyślne, gdy poprzednie reguły nie pasują. rejent - odrzuć list. Przydatne na końcu listy ograniczeń, jako
zachowanie domyślne, gdy poprzednie reguły nie pasują.
Jak już wspomniałem tymi zmiennymi możemy manipulować dowolnie. Szczegółowy
ich opis znajdziesz w dokumentacji oraz w pliku `sample-smtpd.cf` w katalogu z
Postfix'em.
Utwórzmy teraz plik `access` (jeżeli jeszcze nie istnieje) w katalogu z
plikami konfiguracyjnymi Postfix'a w celu ustawienia ograniczeń nawiązania
połączeń z naszym serwerem.
# touch /usr/local/etc/postfix/access
W praktyce dopisujemy do niego każdego użytkownika, który chciałby mieć
możliwość wysyłania i odbierania poczty z naszego serwera, w opisanym
przykładzie użytkownik tomek będzie mógł korzystać z naszego serwera SMTP,
dostaje on takie przywileje gdy dopiszemy słowo `OK` przy jego username i nazwie
domeny. Jeśli jednak chcesz aby użytkownik miał jedynie dostęp do powłoki i nie
miał możliwości wysyłania i odbierania poczty dopisujemy przy jego loginie i
nazwie domeny słowo `REJECT`. Krótko mówiąc `
` nie będzie
otrzymywał żadnej poczty, jak również na domenę `jakas_domena.pl` nie dojdzie
żadna wiadomość. Zawartość tego pliku może być następująca:
# ee /usr/local/etc/postfix/access
--- access ---
OK
REJECT
jakas_domena.pl REJECT domena1.pl OK
---end access ---
Po dokonaniu wpisów do tego pliku aktualizujemy bazę danych poleceniem:
# postmap /usr/local/etc/postfix/access
Następnie dodajemy wpis do pliku /etc/rc.conf który spowoduje, iż saslauthd
będzie uruchamiał się przy starcie (bez tego wpisuj nie będzie działał plik /usr/local/etc/rc.d/saslauthd.sh)
UWAGA!! (Przed tą czynnością należy mieć już skonfigurowany serwer
pośredniczący)
Logujemy się przez telnet na port 25 naszego serwera i wpisujemy EHLO
domena.pl:
# telnet 127.0.0.1 25
EHLO domena.pl
Powinniśmy ujrzeć następujący komunikat, jeśli takowy nam się ukarze, znaczy
to że Twoja konfiguracja jest poprawna i możesz przejść do następnej części tego
artykułu.
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 domena.pl ESMTP Postfix
EHLO domena.pl
250-domena.pl
250-PIPELINING
250-SIZE 10240000
250-ETRN
250-AUTH PLAIN LOGIN
250-AUTH=PLAIN LOGIN
250-XVERP
250 8BITMIME