Ошибка при создании Postfix почтового ящика
Ошибка при созданииPostfixпочтового ящика
Автоматическипереведенный документ
После создания почтового ящика, когда вы пытаетесь получить по электронной почте вы получите сообщение:
imap-login: Login: user=<test3>, method=PLAIN, rip=1::1, lip=::1, mipd=21177, secured
imap(test3): Error: chown (/home/test3/mail/.imap/INBOX, -1,12(mail)) failed: Operation not permitted (egid=514(test3), group based on /var/spool/mail/test3)
imap(test3): Error: mkdir (/home/test3/mail/.imap/INBOX) failed: Operation not permitted
Disconnected: Logged out bytes=50/552
Поиск проблемы:
Проблема может быть решена несколькими способами, изменить разрешения на папки CHMOD 0600 / Var / spool / mail / * и почтового ящика и /home/test3/mail/.imap/*
(Chmod г-RWX / Var / spool / новый_пользователь, chgrp / Var / spool / новый_пользователь)
Дайте доступ к процессу пост - mail_access_groups = mail
Вы также можете вручную настроить папку папку Входящие Настройка прав доступа /home/test3/mail/.imap/ же права (Чаун test3.test3 INBOX)
Błąd roundcube po przeniesieniu
Po przeniesieniu poczty roundcube na inny serwer użytkownicy podczas próby wejścia do folderu wysłane wyskakuje błąd
Błąd w logach:
dovecot: imap-login: Login: user=<user>, method=PLAIN, rip=::1, lip=::1, mpid-12261, secured
dovecot imap(user): Disconected: Logged out bytes=448/8830
dovecot: imap (user): Error: stat (/home/user/Maildir/.Draft/tmp) failed: Permission denied (euid=505)user) egid=505 (user) missing +x perm: /homeuser/Maildir/.Drafts, euid is not dir owner)
Rozwiązanie:
Błąd ten związany jest z błędnymi uprawnieniami dostępu do folderów. Najprawdopodobniej jeden z folderów w lokalizacji Maildir ma źle ustawionego właściciela folderu.
Kopiując folder z innego serwera poświadczenia do folderu mogą zginąć.
Naprawiamy to opcją chown -R user.user * stojąc w właściwej lokalizacji.
Należy zwrócić uwagę że w folderze Maildir są foldery ukryte /.Sent, /.Trash trzeba sprawdzić czy na nich zmieniliśmy właścicieli.
sprawdzamy to np loleceniem
ls -a -l
Jeżeli właściciel tych folderów jest ustawiony błędnie dostaniemy błąd i nie będziemy mogli kasować oraz wchodzić do folderu wysłane elementy
Konfiguracja postfixa
Konfiguracja Postfixa - Centos 6.x
Postfix to jeden z najbardziej popularnych serwerów pocztowych (MTA). W porównaniu do np. Sendmail-a, tworzy kilka procesów odpowiedzialnych za różne procesy.
1.Instalujemy niezbędne pakiety komendą yum:
yum install cyrus-sasl cyrus-sasl-devel cyrus-sasl-gssapi cyrus-sasl-md5 cyrus-sasl-plain postffix
2. Sprawdzamy czy są uruchomione usługi potrzebne do prawidłowej pracy poczty:
postfix, saslauthd, dovecot
/etc/init.d/postfix start
/etc/init.d/dovecot start
/etc/init.d/saslauthd start
3. Wyłączamy zapory
[root@server ~]# service iptables stop
[root@server ~]# service ip6tables stop
[root@server ~]# chkconfig iptables off
[root@server ~]# chkconfig ip6tables off
4. Edytujemy plik “/etc/postfix/main.cf”. Dodajemy następujące linie, chyba że już są:
mydestination = $mydomain
myorigin = $mydomain
mynetworks = 127.0.0.0/8 #adres i maska naszej sieci
smtpd_sasl_local_domain =domena-poczowa.pl #domena, którą będziemy używać do wysyłania wiadomości
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous #osoby niezalogowane nie będą mogły wysyłać poczty
broken_sasl_auth_clients = yes
smtpd_sasl_authenticated_header = yes
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated,permit_mynetworks, reject_unauth_destination #ograniczenia poczty wychodzącej (zabezpieczenia)
inet_interfaces = all #interfejsy na których ma nasłuchiwać demon
smtpd_tls_auth_only = no
smtp_use_tls = yes
smtpd_use_tls = yes
smtp_tls_note_starttls_offer = yes
smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key
smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt
smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
tls_random_source = dev:/dev/urandom
myhostname = smtp.centos.com.pl #nazwa naszego serwera
home_mailbox = Maildir/ #ustawienie dla Dovecot-a
mailbox_command = #ustawienie dla Dovecot-a
5. Generujemy certyfikaty TLS
mkdir /etc/postfix/ssl
cd /etc/postfix/ssl/
openssl genrsa -des3 -rand /etc/hosts -out smtpd.key 1024
chmod 600 smtpd.key
openssl req -new -key smtpd.key -out smtpd.csr
openssl x509 -req -days 730 -in smtpd.csr -signkey smtpd.key -out smtpd.crt
openssl rsa -in smtpd.key -out smtpd.key.unencrypted
mv -f smtpd.key.unencrypted smtpd.key
openssl req -new -x509 -extensions v3_ca -keyout cakey.pem -out cacert.pem -days 730
6. Edytujemy plik “/etc/postfix/master.cf”. Następujące linijki tego pliku powinny mieć taką treść:
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject_unauth_destination smtps inet n – n – – smtpd
-o smtpd_tls_wrappermode=yes
-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject_unauth_destination
7. Edytujemy plik “/usr/lib/sasl2/smtpd.conf” w wersji 32 bit systemu lub plik “/usr/lib64/sasl2/smtpd.conf” dla systemów 64 bit., plik powinien wyglądać tak:
pwcheck_method: saslauthd
mech_list: plain login
8. Startujemy SASL i Postfix
[root@server ~]# chkconfig postfix on
[root@server ~]# chkconfig dovecot on
[root@server ~]# chkconfig saslauthd on
9. TEST POSTFIX
[root@server ~]# telnet localhost smtp
Trying ::1...
Connected to localhost.
Escape character is '^]'.
220 poczta.interia.pl ESMTP Postfix
ehlo localhost
250-poczta.interia.pl
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
mail from:<user1>
250 2.1.0 Ok
rcpt to:<user1>
250 2.1.5 Ok
data
354 End data with <CR><LF>.<CR><LF>
test
.
250 2.0.0 Ok: queued as 117113FF18
quit
221 2.0.0 Bye
Connection closed by foreign host.
10. Sprawdzenie czy mail dotarł
[root@server ~]# cd /home/user1/Maildir/new/
[root@server new]# ls
1360236956.Vfd00I35afM181256.server.ostechnix.com
[root@server new]# cat 1360236956.Vfd00I35afM181256.server.ostechnix.com
Return-Path: <Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.>
X-Original-To: user1
Delivered-To: Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.
Received: from localhost (localhost [IPv6:::1])
by server.ostechnix.com (Postfix) with ESMTP id 117113FF18
for <user1>; Thu, 7 Feb 2013 17:05:32 +0530 (IST)
Message-Id: <Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.>
Date: Thu, 5 Sep 2013 7:03:12 +0130 (IST)
From: Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.
To: undisclosed-recipients:;
test
11. TEST DOVECOT
[root@server ~]# telnet localhost pop3
Trying ::1...
Connected to localhost.
Escape character is '^]'.
+OK Dovecot ready.
user user1
+OK
pass user1
+OK Logged in.
list
+OK 1 messages:
1 428
.
retr 1
+OK 428 octets
Return-Path: Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.
X-Original-To: user1
Delivered-To: Этот адрес электронной почты защищён от спам-ботов. У вас должен быть включен JavaScript для просмотра.
.....
test
.
quit
+OK Logging out.
Connection closed by foreign host.
[root@server ~]#
12. Teraz można skonfigurować klienta poczty np. roundcube.
Narzedzia kolejki postfix
Polecenia niezbędne przy diagnozowaniu problemów z serwerem POSTFIX:
postqueue -p - wyświetla listę wszystkich wiadomości w kolejce do wysyłki
mailq - wyświetla listę wszystkich wiadomości w kolejce do wysyłki
postsuper -d - (Queue ID) pozwala usuwać wiadomość o danym ID z kolejki
postsuper -d ALL - usuwa wszystkie wiadomości z kolejki
postsuper -h (Queue ID) - zatrzymanie wiadomości w kolejce przenosi do kolejki hold
postsuper -H (Queue ID) - przeniesienie wiadomości z powrotem do menadżera kolejek
postsuper -r ALL - zwraca wiadomości z powrotem do kolejki, wiadomości te otrzymują nowe identyfikatory i dodatkowy nagłówek Received
postcat -q - wyświetlanie zawartości pliku kolejki
postqueue -f - wypychanie wiadomości
postfix flush - wypychanie wiadomości
postqueue -s domena.com - wypychanie wiadomości domeny domena.com
mailq -q /identyczne do sendmail -bp/ lista wiadomości w kolejce do obsłużenia
Bieżący podgląd zawartości loga postfix’a zapewnia polecenie:
tail -f /var/log/maillog
Postfix grupuje pliki na kilka kolejek
Incoming/Active (Przychodzące/Aktywne) - kolejka w której są wiadomości wychodzące są w niej dopóki nie zostaną dostarczone.
Deferred (Odroczona) - Jeśli wiadomość nie może zostać dostarczona oczekuje w kolejce aż wygaśnie.
Hold (Trzymana) - Wiadomości nie są przetwarzane i nie wygasają.