Portál AbcLinuxu, 26. dubna 2024 07:21


Dotaz: Postfix, virtual users on hostname

22.5.2015 09:41 vymačkaná půlka citrónu
Postfix, virtual users on hostname
Přečteno: 528×
Odpovědět | Admin
Mám poštovní server s postfixem. Server se jmenuje mail.domain.tld. Server obsluhuje uživatele pro doménu domain.tld a několik dalších domén. Všichni uživatelé jsou virtuální, jejich správa je prováděna pomocí postfixadmin.

Potřebuji mít také několik uživatelů na mail.domain.tld. Proč je neudělat také virtuální, když už je to celé nakonfigurováno, že. Tak jsem to také udělal. Všechno funguje, ověřeno dlouhodobě.

Problém je v tom, že dostávám otravné hlášky, kde si postfix stěžuje, že "postfix/trivial-rewrite[]: warning: do not list domain mail.domain.tld in BOTH mydestination and virtual_mailbox_domains", což ovšem není pravda. mydestination = localhost. Pouze myhostname = mail.domain.tld. Nic víc.

Myhostname měnit nechci.

Nevíte někdo, jak se zbavit té otravné hlášky? Nemyslím tím, jak ji vymazat z logu, to umím a umím ji také ignorovat. Chci pouze provozovat správně postfix a mít lokální uživatele (ty co jsou na hostname serveru) virtuální. http://www.postfix.org/postconf.5.html jsem studoval, internet jsem prohledával, ale prostě jsem na to nepřišel.


Řešení dotazu:


Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

22.5.2015 11:33 azurIt | skóre: 34 | blog: zatial_bez_mena
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Odpovědět | | Sbalit | Link | Blokovat | Admin
Co presne mas v /etc/hosts ?
22.5.2015 11:41 vymačkaná půlka citrónu
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
To s tím přece nesouvisí. Nemáš na mysli /etc/hostname ?
# cat /etc/hostname
mail
22.5.2015 12:09 azurIt | skóre: 34 | blog: zatial_bez_mena
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Nie, myslim /etc/hosts a moze to s tym suvisiet napriklad ak tam mas ulozenu blbost typu "127.0.0.1 localhost mail.domain.tld". Chces poradit alebo sa dohadovat, co podla teba s cim suvisi? :)
22.5.2015 12:14 vymačkaná půlka citrónu
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
# cat /etc/hosts
127.0.0.1    localhost

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

22.5.2015 12:20 azurIt | skóre: 34 | blog: zatial_bez_mena
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
chyba ti tam riadok s tvojou domenou a hostname:
ip mail.domain.tld mail

skus to tam pridat, ci sa nieco nezmeni. inak to vyzera ok.
22.5.2015 12:41 vymačkaná půlka citrónu
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Přidal jsem, restartoval postfix a čekám. Zatím nic. Potíž je, že tu hlášku neumím vyvolat. Prostě jsem nepochopil, jak k ní dochází. Takže to může chvíli trvat.
22.5.2015 12:55 azurIt | skóre: 34 | blog: zatial_bez_mena
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Varovanie vypisuje trivial-rewrite, takze to vznika pri niecom, co robi (vela toho nie je, okrem ineho aj preklad adries, s cim /etc/hosts moze suvisiet), vid. man trivial-rewrite
22.5.2015 13:01 vymačkaná půlka citrónu
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Manuál mám otevřený, ale nic jsem nevykoukal. A není to poprvé, co to řeším. Prostě jsem to zatím nevyřešil. Nicméně, postfix nadává, ale funguje.
22.5.2015 13:14 vymačkaná půlka citrónu
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Můj dojem je, že si postfix automaticky přidává $myhostname k mydestination, i když to tak není nakonfigurováno. A když potom mám ve virtual_mailbox_domains uvedeno také hodnotu myhostname, tak dostávám varování.
22.5.2015 13:29 azurIt | skóre: 34 | blog: zatial_bez_mena
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Nevznikne problem nahodou vtedy, ked sa ti nejaka lokalna sluzba snazi lokalne nieco dorucit na mail.domain.tld?
22.5.2015 13:35 azurIt | skóre: 34 | blog: zatial_bez_mena
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Pozri este do master.cf, ci si tam niekde pomocou '-o' nenastavujes mydestination alebo nieco podobne. Idealne ked sem hodis main.cf (resp. postconf -n) aj master.cf. Aka je to verzia postixu? A Distribucia?
22.5.2015 13:57 vymačkaná půlka citrónu
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Distribuce je Debian/wheezy, verze postfixu je 2.9.6-2. Pokud se ti to chce studovat, tak každopádně díky.
# postconf -nf
append_dot_mydomain = no
biff = no
config_directory = /etc/postfix
disable_vrfy_command = yes
home_mailbox = Maildir/
inet_interfaces = all
inet_protocols = ipv4
local_recipient_maps = $virtual_mailbox_maps
local_transport = virtual
mailbox_command =
mailbox_size_limit = 0
masquerade_domains = !mail.bpt.cz !mail-old.bpt.cz bpt.cz
message_size_limit = 20971520
milter_connect_macros = j _ {daemon_name} {client_addr} {client_ptr}
    {client_connections}
milter_default_action = tempfail
mydestination = localhost
myhostname = mail.bpt.cz
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
    /etc/postfix/relay_networks
myorigin = /etc/mailname
proxy_interfaces = 77.104.253.201
readme_directory = no
recipient_delimiter = +
relay_domains = mysql:/etc/postfix/mysql_relay_domains.cf
relay_recipient_maps = hash:/etc/postfix/relay_recipient_maps
relayhost =
show_user_unknown_table_name = no
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_banner = $myhostname ESMTP
smtpd_client_restrictions =
smtpd_delay_reject = yes
smtpd_helo_required = yes
smtpd_milters = unix:/greylist/milter-greylist.sock
    unix:/clamav/clamav-milter.ctl unix:/spamass/spamass.sock
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated,
    reject_non_fqdn_hostname, reject_non_fqdn_sender, reject_non_fqdn_recipient,
    reject_unauth_destination, reject_unauth_pipelining, reject_invalid_hostname
smtpd_sasl_auth_enable = no
smtpd_sasl_path = private/auth
smtpd_sasl_security_options = noanonymous
smtpd_sasl_type = dovecot
smtpd_sender_restrictions = check_sender_access hash:/etc/postfix/access,
    permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_sender,
    reject_unknown_sender_domain, reject_unauth_pipelining,
    reject_invalid_hostname, permit
smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key
smtpd_tls_loglevel = 0
smtpd_tls_mandatory_protocols = !SSLv2,!SSLv3
smtpd_tls_security_level =
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_use_tls = no
transport_maps = hash:/etc/postfix/transport
unverified_recipient_reject_reason = Address lookup failed
virtual_alias_maps = hash:/etc/postfix/virtual_aliases
    mysql:/etc/postfix/mysql_virtual_alias_maps.cf
    mysql:/etc/postfix/mysql_alias_domain_maps.cf
virtual_gid_maps = static:3000
virtual_mailbox_base = /home/vmail
virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_mailbox_domains.cf
virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_uid_maps = static:3000
# postconf -Mf
smtp       inet  n       -       -       -       -       smtpd
submission inet  n       -       -       -       -       smtpd
    -o syslog_name=postfix/submission
    -o smtpd_tls_security_level=encrypt
    -o smtpd_sasl_auth_enable=yes
    -o smtpd_client_restrictions=permit_sasl_authenticated,reject
    -o milter_macro_daemon_name=ORIGINATING
smtps      inet  n       -       -       -       -       smtpd
    -o syslog_name=postfix/smtps
    -o smtpd_tls_wrappermode=yes
    -o smtpd_sasl_auth_enable=yes
    -o smtpd_client_restrictions=permit_sasl_authenticated,reject
    -o milter_macro_daemon_name=ORIGINATING
pickup     fifo  n       -       -       60      1       pickup
cleanup    unix  n       -       -       -       0       cleanup
qmgr       fifo  n       -       n       300     1       qmgr
tlsmgr     unix  -       -       -       1000?   1       tlsmgr
rewrite    unix  -       -       -       -       -       trivial-rewrite
bounce     unix  -       -       -       -       0       bounce
defer      unix  -       -       -       -       0       bounce
trace      unix  -       -       -       -       0       bounce
verify     unix  -       -       -       -       1       verify
flush      unix  n       -       -       1000?   0       flush
proxymap   unix  -       -       n       -       -       proxymap
proxywrite unix  -       -       n       -       1       proxymap
smtp       unix  -       -       -       -       -       smtp
relay      unix  -       -       -       -       -       smtp
showq      unix  n       -       -       -       -       showq
error      unix  -       -       -       -       -       error
retry      unix  -       -       -       -       -       error
discard    unix  -       -       -       -       -       discard
local      unix  -       n       n       -       -       local
virtual    unix  -       n       n       -       -       virtual
lmtp       unix  -       -       -       -       -       lmtp
anvil      unix  -       -       -       -       1       anvil
scache     unix  -       -       -       -       1       scache
maildrop   unix  -       n       n       -       -       pipe
    flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient}
uucp       unix  -       n       n       -       -       pipe
    flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail
    ($recipient)
ifmail     unix  -       n       n       -       -       pipe
    flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
bsmtp      unix  -       n       n       -       -       pipe
    flags=Fq. user=bsmtp argv=/usr/lib/bsmtp/bsmtp -t$nexthop -f$sender
    $recipient
scalemail-backend unix - n       n       -       2       pipe
    flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store
    ${nexthop} ${user} ${extension}
mailman    unix  -       n       n       -       -       pipe
    flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py
    ${nexthop} ${user}
22.5.2015 15:02 azurIt | skóre: 34 | blog: zatial_bez_mena
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Tak narychlo tam nevidim problem. Este mi napada skusit aktualizovat postfix na 2.11, je to bezproblemove, nemala by byt nutna ziadna uprava konfiguracie. Vid.:
http://backports.debian.org/Instructions/

a potom:
aptitude -t wheezy-backports install postfix
22.5.2015 15:08 azurIt | skóre: 34 | blog: zatial_bez_mena
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Co mas v /etc/postfix/transport? Skusal si zakomentovat toto?
local_transport = virtual

Naco to tam mas nastavene?
22.5.2015 15:32 vymačkaná půlka citrónu
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
local_transport je defaultně local:$myhostname. To já právě nechci. Já to chci doručit do virtuálních mailboxů. Kdybych tam měl local, tak to bude vyžadovat opravdové uživatele.

V /etc/postfix/transport mám nastavené přeposílání pošty, pro kterou dělám "záložní MX", na vnitřní server.
22.5.2015 15:36 azurIt | skóre: 34 | blog: zatial_bez_mena
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
To nie je pravda, ved to je nastavenie transportu pre lokalne dorucovanie a ty nemas ziadne lokalne domeny, vsetky mas nastavene ako remote. Praveze to moze robit problem takto, ako to mas.
22.5.2015 15:42 vymačkaná půlka citrónu
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Dobrý postřeh. Zrušil jsem to a vyzkoušel funkčnost. Stále to doručue správně. Takže to tak nechám a budu sledovat, co varovná hláška.

Díky.
22.5.2015 15:47 vymačkaná půlka citrónu
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Tak to bylo rychlé. Varovná hláška je tam znovu.
22.5.2015 15:51 azurIt | skóre: 34 | blog: zatial_bez_mena
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Este by som zrusil toto:
local_recipient_maps = $virtual_mailbox_maps
22.5.2015 16:05 vymačkaná půlka citrónu
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Zrušil jsem. Hláška trvá. Ale přišel jsem na to, jak se vyvolává. Je to tehdy, když odesilatel je <>.
22.5.2015 16:08 azurIt | skóre: 34 | blog: zatial_bez_mena
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Cize mailer-daemon. Prijemca moze byt ktokolvek?
22.5.2015 16:15 vymačkaná půlka citrónu
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Jo, kdokoliv.
22.5.2015 12:56 vymačkaná půlka citrónu
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Varovná hláška je tam stále, bohužel.
22.5.2015 12:23 azurIt | skóre: 34 | blog: zatial_bez_mena
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Odpovědět | | Sbalit | Link | Blokovat | Admin
hod este vystup z tohto prikazu:
postconf | grep "mydestination ="
22.5.2015 12:40 vymačkaná půlka citrónu
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
# postconf | grep "mydestination ="
mydestination = localhost
22.5.2015 16:40 ET
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Odpovědět | | Sbalit | Link | Blokovat | Admin
co vraci
postmap -q localhost mysql:/etc/postfix/mysql_virtual_mailbox_domains.cf
22.5.2015 16:43 vymačkaná půlka citrónu
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
nic
22.5.2015 16:57 Filip Jirsák
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Odpovědět | | Sbalit | Link | Blokovat | Admin
Nemáte to hostname náhodou ve virtual_mailbox_domain i virtual_alias_maps? Případně bych zkusil vypsat si všechny ty mapy a podívat se, zda to hostname náhodou není někde navíc.
23.5.2015 08:31 vymačkaná půlka citrónu
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Mám to nastavené úplně stejně, jako se to nastavuje pro jiné domény, které chci přijímat. Udělám klik klik v postfixadminu, dopíšu pár jmen a uložím to. Jediný rozdíl je ten, že tato "doména" je zároveň fqdn toho serveru. A výsledné nastavení také korektně funguje, pouze v logu se objevuje výše uvedené varování, které podrobně popisuje chybu konfigurace, která tam ovšem není.
23.5.2015 09:46 Filip Jirsák
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Jediný rozdíl je ten, že tato "doména" je zároveň fqdn toho serveru.
Pokud přesně víte, v čem je problém, nevím, na co se tu ptáte.
A výsledné nastavení také korektně funguje
Teď zrovna korektně funguje. Jenže závisí na interní implementaci, která se může kdykoli bez varování změnit.
které podrobně popisuje chybu konfigurace, která tam ovšem není.
Já za daleko pravděpodobnější považuju variantu, že v té konfiguraci chyba je, akorát varování je stavěné na typickou konfiguraci, vy ji máte v něčem netypickou a tím pádem varování uvádí jinou konfigurační volbu. Nevíme, jaké máte aktuální nastavení tabulky transport, nevíme, jak máte aktuálně nastaveno local_transport - možná bude chyba v nich.
23.5.2015 11:50 vymačkaná půlka citrónu
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Zeptám se jinak.

Umíte to nakonfigurovat na svém serveru tak, aby to fungovalo bez varovných hlášek? Resp. spíš, už jste to někdy nakonfiguroval tak, jak si to představuji?

Tj. virtuální doručování pošty pro "doménu", která je fqdn toho serveru. Přičemž konfigurace přijímaných domén, aliasů, mailboxů... je v mysql databázi spravované postfixadminem?
23.5.2015 12:47 Filip Jirsák
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Na mém serveru se ta varovná hláška neobjevuje, lokální účty vůbec nepoužívám (všechny jsou virtuální) a poštu pro doménu shodnou s FQDN serveru také přijímám (do virtuálních účtů). Tabulky v MySQL nepoužívám, ale Postfixu určitě nezáleží na tom, jaký je zdroj příslušné tabulky.
Řešení 1× (azurIt)
23.5.2015 13:12 vymačkaná půlka citrónu
Rozbalit Rozbalit vše Re: Postfix, virtual users on hostname
Chyba je ve spojení mezi postfixem a mysql. Je to v konstrukci dotazu, který nedává správné výsledky tehdy, když v mail from nebo rcpt to není obsažena doména. Úpravami dotazů jsem odstranil původní prezentovanou chybu, ale objevuje se tam jiná. Takže samotný postfix požadovanou funkčnost v pohodě zvládá, musí ale dostávat správné výsledky z databáze.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.