Strona 1 z 2
[+] Postfix, komunikat błędu przy wysyłaniu poczty z poziomu Thunerbirda
: 16 października 2010, 20:27
autor: luki100011
Witam
.
Konfiguruję postfixa według poradnika przyklejonego na forum autorstwa Autor: Wiktor Ł.ver. 1.30
http://www.4shared.com/file/107691392/5 ... _v130.html
Co uzyskałem:
- Na serwer wiadomości z innych kont dochodzą.
- Z telnetu można wysłać e-mail na inną skrzynkę.
- Konfiguruję klienta pocztowego Thunderbird, wykrywa prawidłowo imap i smtp, pobiera certyfikaty i wczytuje pocztę z serwera.
Ostatni krok wysłanie wiadomości z Thunerbirda niestety kończy się zawsze komunikatem:
Kod: Zaznacz cały
Wysyłanie wiadomości nie powiodło się. Wystąpił błąd podczas wysyłania wiadomości:
nie udało się nawiązać bezpiecznego połączenia z serwerem SMTP mail.********.biz.pl
przy użyciu STARTTLS, jako że nie ogłasza on jego stosowania. Należy wyłączyć STARTTLS w opcjach tego serwera
lub skontaktować się z dostawcą usługi.
Jak znaleźć przyczynę problemu?
załączam plik konfiguracyjny postfixa
Kod: Zaznacz cały
command_directory = /usr/sbin
mail_owner = postfix
mydomain = *****.biz.pl
myhostname = xen-***********.pl
myorigin = /etc/mailname
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
mydestination = $mydomain, $myhostname, localhost, localhost.localdomain,
mynetworks = 127.0.0.0/8
inet_interfaces = all
inet_protocols = ipv4
home_mailbox = Maildir/
mail_spool_directory = /home/
smtpd_banner = ESMTP on $myhostname !
mailbox_size_limit = 0
recipient_delimiter = +
biff = no
append_dot_mydomain = no
relayhost =
#TLS
smtpd_tls_auth_only = yes
smtp_use_tls = yes
smtpd_use_tls = yes
smtp_tls_note_starttls_offer = yes
smtpd_tls_key_file = /etc/postfix/ssl/mail.pem
smtpd_tls_cert_file = /etc/postfix/ssl/mail.pem
smtpd_tls_CAfile = /etc/postfix/ssl/mail.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
smtpd_tls_session_cache_database = btree:${queue_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${queue_directory}/smtp_scache
tls_random_source = dev:/dev/urandom
#AUTH SMTP
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_sasl2_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_sasl_local_domain = $myhostname
oraz plik dovecot
Kod: Zaznacz cały
base_dir = /var/run/dovecot/
protocols = imap imaps pop3 pop3s
listen = *
disable_plaintext_auth = no
shutdown_clients = yes
#logi
log_path=/var/log/dovecot.log
info_log_path = /var/log/mail.log
log_timestamp = "%Y-%m-%d %H:%M:%S "
syslog_facility = mail
login_process_size = 64
login_greeting = Welcome. I▒^▒^▒m ready ...
login_log_format_elements = user=<%u> method=%m rip=%r lip=%l %c
login_log_format = %$: %s
login_chroot = no
login_user = dovecot
login_process_per_connection = yes
login_processes_count = 3
login_max_processes_count = 128
mail_location = maildir:~/Maildir
#SSL
ssl = yes
ssl_cert_file = /etc/postfix/ssl/mail.pem
ssl_key_file = /etc/postfix/ssl/mail.pem
verbose_ssl = yes
mail_access_groups = postfix
protocol imap {
}
protocol pop3 {
pop3_uidl_format = %08Xu%08Xv
}
protocol lda {
postmaster_address = [email protected]
}
auth_verbose = yes
auth_debug = yes
auth default {
mechanisms = plain login
passdb pam {
}
userdb passwd {
}
user = root
socket listen {
client {
path = /var/spool/postfix/private/auth
mode = 0660
user = postfix
group = postfix
}
}
}
dict {
}
plugin {
}
: 16 października 2010, 23:31
autor: ShinnRa
Zobacz czy telnetując się i po komendzie EHLO masz taką odpowiedź
Kod: Zaznacz cały
EHLO localhost
250-**********
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
a zwłaszca czy pojawia się
250-STARTTLS. Jeśli nie to poszukaj w
/etc/postfix/main.cf opcji od TLS:
Kod: Zaznacz cały
# TLS parameters
smtpd_tls_cert_file = /etc/ssl/certs/postfix.pem
smtpd_tls_key_file = /etc/ssl/private/postfix.pem
smtpd_use_tls = yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
jeśli są te linijki to obadaj
/var/log/mail.log bo tam na pewno znajdziesz przyczynę tego komunikatu z thunderbirda
: 16 października 2010, 23:56
autor: luki100011
więc tak zwraca mi
Kod: Zaznacz cały
EHLO localhost
250-xen********.pl
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
linijki podane przez Ciebie też są, a logów
Kod: Zaznacz cały
2010-10-17 00:06:38 auth(default): Info: new auth connection: pid=7606
2010-10-17 00:11:37 auth(default): Info: client in: CONT<hidden>
2010-10-17 00:11:37 auth(default): Info: client out: OK 1 user=www
2010-10-17 00:11:37 auth-worker(default): Info: pam(www,88.199.120.66): lookup service=dovecot
2010-10-17 00:11:37 auth-worker(default): Info: pam(www,88.199.120.66): #1/1 style=1 msg=Password:
2010-10-17 00:11:37 auth(default): Info: master in: REQUEST 1 7485 1
2010-10-17 00:11:37 auth(default): Info: passwd(www,88.199.120.66): lookup
2010-10-17 00:11:37 auth(default): Info: master out: USER 1 www system_groups_user=www uid=100$
2010-10-17 00:11:37 imap-login: Info: Login: user=<www>, method=PLAIN, rip=88.199.120.66, lip=78.46.13.108, TLS
2010-10-17 00:11:37 auth(default): Info: new auth connection: pid=7634
2010-10-17 00:11:47 imap-login: Info: Aborted login (no auth attempts): rip=88.199.120.66, lip=78.46.13.108, TLS
2010-10-17 00:11:47 auth(default): Info: new auth connection: pid=7635
2010-10-17 00:11:47 auth(default): Info: client in: AUTH 1 PLAIN service=imap secured lip=78.$
2010-10-17 00:11:47 auth(default): Info: client out: CONT 1
2010-10-17 00:11:48 auth(default): Info: client in: CONT<hidden>
2010-10-17 00:11:48 auth(default): Info: client out: OK 1 user=www
2010-10-17 00:11:48 auth-worker(default): Info: pam(www,88.199.120.66): lookup service=dovecot
2010-10-17 00:11:48 auth-worker(default): Info: pam(www,88.199.120.66): #1/1 style=1 msg=Password:
2010-10-17 00:11:48 auth(default): Info: master in: REQUEST 2 7632 1
2010-10-17 00:11:48 auth(default): Info: passwd(www,88.199.120.66): lookup
2010-10-17 00:11:48 auth(default): Info: master out: USER 2 www system_groups_user=www uid=100$
2010-10-17 00:11:48 imap-login: Info: Login: user=<www>, method=PLAIN, rip=88.199.120.66, lip=78.46.13.108, TLS
2010-10-17 00:11:48 auth(default): Info: new auth connection: pid=7637
: 17 października 2010, 00:13
autor: ShinnRa
co znaczy logów brak? Pliku nie ma czy jak?
Możesz jeszcze spróbować połączyć się za pomocą openssl (jeśli z serwera i jesli postfix nasłuchuje tylko na porcie 25):
Kod: Zaznacz cały
openssl s_client -host localhost -port 25 -starttls smtp
powinien Ci rzucić info o certyfikacie w stylu:
Kod: Zaznacz cały
openssl.exe s_client -host smtp.********.eu -port 25 -starttls smtp
Loading 'screen' into random state - done
CONNECTED(00000170)
depth=0 /C=PL/ST=Pomorskie/L=Gdynia/O=**********/CN=smtp.**********.eu/emailAddress=*********@ayanami.eu
verify error:num=18:self signed certificate
verify return:1
depth=0 /C=PL/ST=Pomorskie/L=Gdynia/O=**********/CN=smtp.**********.eu/emailAddress=*********@ayanami.eu
verify return:1
---
Certificate chain
0 s:/C=PL/ST=Pomorskie/L=Gdynia/O=**********/CN=smtp.**********.eu/emailAddress=*********@ayanami.eu
i:/C=PL/ST=Pomorskie/L=Gdynia/O=**********/CN=smtp.**********.eu/emailAddress=*********@ayanami.eu
---
Server certificate
-----BEGIN CERTIFICATE-----
********************************
********************************
********************************
-----END CERTIFICATE-----
subject=/C=PL/ST=Pomorskie/L=Gdynia/O=**********/CN=smtp.**********.eu/emailAddress=*********@ayanami.eu
issuer=/C=PL/ST=Pomorskie/L=Gdynia/O=**********/CN=smtp.**********.eu/emailAddress=*********@ayanami.eu
---
No client certificate CA names sent
---
SSL handshake has read 1696 bytes and written 354 bytes
---
New, TLSv1/SSLv3, Cipher is DHE-RSA-AES256-SHA
Server public key is 1024 bit
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
SSL-Session:
Protocol : TLSv1
Cipher : DHE-RSA-AES256-SHA
Session-ID: *****************************************************
Session-ID-ctx:
Master-Key: ************************************************
Key-Arg : None
Start Time: 1287266335
Timeout : 300 (sec)
Verify return code: 18 (self signed certificate)
---
250 DSN
EHLO localhost
250-*******.eu
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-AUTH PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
quit
221 2.0.0 Bye
read:errno=0
jeśli w tym momencie nie wyrzuci konkretnych błędów lub w logach się nic nie pojawi to moim zdanie konfiguracja postfixa jest skopana. Bo w loga powiino *coś* być. Może podaj na podstawie czego konfigurowałeś postfixa.
================
Ewentualnie do
main.cf dodaj
będzie zapisywał połączenie TLS do logów wtedy powinien więcej powiedzieć o błędzie. U mnie jest tak (prawidłowe połączenie):
Kod: Zaznacz cały
Oct 17 00:16:46 atlantis postfix/master[25386]: terminating on signal 15
Oct 17 00:16:48 atlantis postfix/master[30192]: daemon started -- version 2.5.5, configuration /etc/postfix
Oct 17 00:16:58 atlantis postfix/smtpd[30202]: connect from localhost[127.0.0.1]
Oct 17 00:16:58 atlantis postfix/smtpd[30202]: setting up TLS connection from localhost[127.0.0.1]
Oct 17 00:16:58 atlantis postfix/smtpd[30202]: Anonymous TLS connection established from localhost[127.0.0.1]: TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)
Oct 17 00:17:04 atlantis postfix/smtpd[30202]: disconnect from localhost[127.0.0.1]
: 17 października 2010, 00:20
autor: luki100011
Wykaz z logów poprawiłem wyżej
zgłasza się certyfikat, jego koncowka to
Kod: Zaznacz cały
No client certificate CA names sent
---
SSL handshake has read 1719 bytes and written 354 bytes
---
New, TLSv1/SSLv3, Cipher is DHE-RSA-AES256-SHA
Server public key is 1024 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
SSL-Session:
Protocol : TLSv1
Cipher : DHE-RSA-AES256-SHA
Session-ID: E89702E806A66A152156CE017F58CC02D70D78A46357374AC2AD5BFCFCD321F2
Session-ID-ctx:
Master-Key: 9F6DEA115F1B6BF5E3F3F4014FD304F9A36A5D66167F5DC8873CF5B9D03F8502BB2904DBEB37EA19A65E9395F0E91384
Key-Arg : None
Start Time: 1287267362
Timeout : 300 (sec)
Verify return code: 18 (self signed certificate)
---
250 DSN
całość była na podstawie
http://www.4shared.com/file/107691392/5 ... _v130.html
Apropo portów klient pocztowy ustawia mi się na port 587 automatycznie dla smtp
jak przestawie go na port 25
to mam takie logi
Kod: Zaznacz cały
2010-10-17 00:23:03 auth(default): Info: client in: AUTH 2 PLAIN service=smtp nologin lip=78.$
2010-10-17 00:23:03 auth(default): Info: client out: OK 2 user=www
2010-10-17 00:23:03 auth-worker(default): Info: pam(www,88.199.120.66): lookup service=dovecot
2010-10-17 00:23:03 auth-worker(default): Info: pam(www,88.199.120.66): #1/1 style=1 msg=Password:
natomiast program pocztowy zgłasza błąd
Kod: Zaznacz cały
Wystąpił błąd podczas wysyłania wiadomości. Odpowiedź serwera: 5.7.1 <[email protected]>: Relay access denied. Sprawdź adresata wiadomości (*****@*****.pl), a następnie ponów próbę.
: 17 października 2010, 00:49
autor: ShinnRa
Czyli się nie zalogował (Relay access denied). Ściągnąłem thunderbirda, faktycznie sam skonfigurował się ale poczty pobrać nie chciał ani wysłać. Dopiero jak w ustawieniach imap zmieniłem mu użytkownika na pełny adres e-mail i tak samo w smtp to przeszło wysyłanie i odbieranie. I o ile mnie pamięć nie myli w tym poradniku to też (chyba) trzeba się było logować pełnym adresem e-mail.
Dodane:
Ja bym jeszcze tak na wszelki wypadek sprawdził jak powinno się logować do smtp, czy poprzez samą nazwę użytkownika, czy jako jego pełny adres e-mail?
Dane logowania jako sam użytkownik:
Kod: Zaznacz cały
perl -MMIME::Base64 -e 'print encode_base64("użytkownik\0użytkownik\0Hasło");'
wynik coś w stylu: dXNlcgB1c2VyAEhhc8WCbw==
Dane logowania jako pełny adres e-mail:
Kod: Zaznacz cały
perl -MMIME::Base64 -e 'print encode_base64("użytkownik\@domena.tld\0użykownik\@domena.tld\0Hasło");'
wynik coś w stylu:
Kod: Zaznacz cały
dXNlckBkb21lbmEudGxkAHVzZXJAZG9tZW5hLnRsZABIYXPFgm8=
I test:
Kod: Zaznacz cały
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 ********** ESMTP Postfix (Debian/GNU)
ehlo localhost
250-**********
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
AUTH PLAIN dXNlcgB1c2VyAEhhc8WCbw==
535 5.7.8 Error: authentication failed:
AUTH PLAIN dXNlckBkb21lbmEudGxkAHVzZXJAZG9tZW5hLnRsZABIYXPFgm8=
235 2.7.0 Authentication successful
quit
221 2.0.0 Bye
Connection closed by foreign host.
Pierwszy ,,AUTH PLAIN'' to sama nazwa użytkownika, drugi to jego pełny adres e-mail.
: 17 października 2010, 11:11
autor: luki100011
Różne opcje w konfiguracji konta pocztowego w programie pełna i niepełna nazwa efekt taki sam nie wysyła, przy pełnej nazwie użytkownika także nie pobiera danych w przeciwieństwie do niepełnej nazwy gdy wczytuje ale nie pozwala wysłać.
i kwestia telnetu, czy tak czy tak zawsze efekt był taki sam:
Kod: Zaznacz cały
503 5.5.1 Error: authentication not enabled
: 17 października 2010, 14:51
autor: Ister
Mam pytanie - próbowałeś najpierw skonfigurować i przetestować serwer do autentykacji plain? Czy to działa?
: 17 października 2010, 23:14
autor: luki100011
Nie, prawdopodobnie i tak wieczorem usunę obecną instalację postfixa i dovecota, usiądę do ponownej konfiguracji postfiksa, jak znajdę w miarę aktualny poradnik
.
Dodane:
Kolejna próba, zainstalowany
[INDENT]postfix
Dovecot[/INDENT]
Wysłanie telnetem wiadomości e-mail na serwer dochodzą, jednak próba zalogowania się na konto telnet, port 110, kończy się niepowodzeniem po podaniu hasła.
Kod: Zaznacz cały
telnet *********.pl 110
Trying **************...
Connected to ****************.pl.
Escape character is '^]'.
+OK Dovecot ready.
user testmail
+OK
pass 123
Connection closed by foreign host.
Jak podam błędne hasło to nie zrywa połączenia i podaje prawidłowy komunikat:
Kod: Zaznacz cały
+OK Dovecot ready.
user testmail
+OK
pass testmail
-ERR Authentication failed.
: 18 października 2010, 11:08
autor: Ister
Szkoda, że wywaliłeś starą konfigurację, bo pewnie problemy będą tak czy inaczej.
Ogólna zasada - konfigurujesz to rób małymi kroczkami. Najpierw niech Ci zadziała połączenie plain, dopiero jak to się uda to rób szyfrowanie. Ja do tego typu testów zakładam specjalne konta z banalnymi hasłami.
Teraz trudno cokolwiek oceniać, bo nie podałeś podstawowych informacji. Co masz w konfiguracji i logach?