Pagina 1 di 1

Sendmail e FQDN [RISOLTO]

Inviato: mer apr 25, 2012 17:49
da targzeta
Ciao a tutti,
un problema che riguarda sendmail sul nostro server. Il nostro file /etc/HOSTNAME l'abbiamo settato come:

Codice: Seleziona tutto

slacky.slacky.eu
in pratica la macchina slacky del dominio slacky.eu. Nel nostro file /etc/hosts c'è:

Codice: Seleziona tutto

xxx.xxx.xxx.xxx   slacky.slacky.eu slacky

Queste ci sembrano le impostazioni corrette, però sendmail ha qualche problema:
  • invia le email come @slacky.slacky.eu. Però poi nessuno può rispondere perché nessuno risolve 'slacky.slacky.eu'.
  • si rifiuta di accettare email verso @slacky.eu, perché le accetta solo per @slacky.slacky.eu.
Ora, qualcuno sa aiutarci? Una possibile e sporca soluzione è quella di mettere nel file hosts la stringa:

Codice: Seleziona tutto

xxx.xxx.xxx.xxx slacky.eu slacky.slacky.eu slacky
perchè così il canonical name viene settato a 'slacky.eu' e sendmail usa quello (che gli viene ritornato da gethostbyname()). Però questo non è un corretto file hosts.

Abbiamo anche provato a settare la macro $j di sendmail come slacky.eu bypassando quindi l'autorilevamento. Anche se non l'ho provato, questo dovrebbe fargli accettare le email verso @slacky.eu, però continua a mandare le email come @slacky.slacky.eu.

Suggerimenti o idee?
Emanuele

Re: Sendmail e FQDN

Inviato: mer apr 25, 2012 22:13
da zoros
io non capisco cosa intendi, con sendmail dovresti poter inviare mail a nome di chiunque ... ho eseguito per prova il recupero password dal forum ... mi è arrivata una mail regolare da info@slacky.eu ... poi nel sorgente chiaro che c'è:

Codice: Seleziona tutto

...Received: from slacky.slacky.eu (localhost [127.0.0.1])
   by slacky.slacky.eu (.....) with ESMTP id .....

ma dovrebbe essere normale così :-k

guardavo con dig - t mx ... strano che sia settato il record mx per slacky.eu (visto che la posta è su aruba) ...

Re: Sendmail e FQDN

Inviato: gio apr 26, 2012 10:01
da masalapianta
define(`confDOMAIN_NAME',`slacky.eu')dnl

Re: Sendmail e FQDN

Inviato: gio apr 26, 2012 12:18
da targzeta
@zoros
Il forum manda le email settando il campo 'from'. Quello che intendo io è il dominio di default "attaccato" da sendmail. Aruba se non sbaglio ci gestisce le caselle 'slacky.it' mentre il nostro server gestisce 'slacky.eu'.

@masalapianta
Quell'impostazione non fa altro che settare la macro $j come abbiamo fatto noi.

Emanuele

Re: Sendmail e FQDN

Inviato: gio apr 26, 2012 18:03
da masalapianta
confDOMAIN_NAME serve a passare direttamente a sendmail quello che altrimenti prenderebbe con una gethostbynane(); tu hai scritto
Ora, qualcuno sa aiutarci? Una possibile e sporca soluzione è quella di mettere nel file hosts la stringa:

Codice: Seleziona tutto
xxx.xxx.xxx.xxx slacky.eu slacky.slacky.eu slacky

perchè così il canonical name viene settato a 'slacky.eu' e sendmail usa quello (che gli viene ritornato da gethostbyname()). Però questo non è un corretto file hosts.

quindi sembrava di capire che il problema fosse quello (e la soluzione è utilizzare confDOMAIN_NAME).
Sinceramente dal poco che dici non è chiaro quale sia il problema, dovresti almeno postare una mail di esempio e i relativi log di sendmail

N.B. per quanto riguarda l'accettare mail per slacky.eu, il suddetto dominio l'avete messo in /etc/mail/local-host-names?

Re: Sendmail e FQDN

Inviato: gio apr 26, 2012 20:10
da targzeta
Eppure mi sembrava di essere stato chiaro. Comunque:
  • /etc/HOSNAME

    Codice: Seleziona tutto

    slacky.slacky.eu
  • /etc/hosts

    Codice: Seleziona tutto

    #
    # hosts         This file describes a number of hostname-to-address
    #               mappings for the TCP/IP subsystem.  It is mostly
    #               used at boot time, when no name servers are running.
    #               On small systems, this file can be used instead of a
    #               "named" name server.  Just add the names, addresses
    #               and any aliases to this file...
    #
    # By the way, Arnt Gulbrandsen <agulbra@nvg.unit.no> says that 127.0.0.1
    # should NEVER be named with the name of the machine.  It causes problems
    # for some (stupid) programs, irc and reputedly talk. :^)
    #

    # For loopbacking.
    127.0.0.1               localhost
    151.1.182.109           slacky.slacky.eu slacky
  • mando una email

    Codice: Seleziona tutto

    echo "Ciao" | mail tomasi@cli.di.unipi.it
  • /var/log/maillog

    Codice: Seleziona tutto

    Apr 26 20:00:14 slacky sendmail[28923]: q3QI0DxY028923: from=root, size=204, class=0, nrcpts=1, msgid=<201204261800.q3QI0DxY028923@slacky.slacky.eu>, relay=root@localhost
    Apr 26 20:00:19 slacky sm-mta[28924]: q3QI0EdD028924: from=<root@slacky.slacky.eu>, size=446, class=0, nrcpts=1, msgid=<201204261800.q3QI0DxY028923@slacky.slacky.eu>, proto=ESMTP, daemon=MTA, relay=localhost [127.0.0.1]
    Apr 26 20:00:19 slacky sendmail[28923]: q3QI0DxY028923: to=tomasi@cli.di.unipi.it, ctladdr=root (0/0), delay=00:00:06, xdelay=00:00:05, mailer=relay, pri=30204, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (q3QI0EdD028924 Message accepted for delivery)
    Apr 26 20:00:22 slacky sm-mta[28929]: q3QI0EdD028924: to=<tomasi@cli.di.unipi.it>, ctladdr=<root@slacky.slacky.eu> (0/0), delay=00:00:03, xdelay=00:00:03, mailer=esmtp, pri=120446, relay=mailserver.cli.di.unipi.it. [131.114.11.39], dsn=4.1.8, stat=Deferred: 450 4.1.8 <root@slacky.slacky.eu>: Sender address rejected: Domain not found
    Apr 26 20:00:22 slacky sm-mta[28929]: q3QI0EdD028924: to=<tomasi@cli.di.unipi.it>, ctladdr=<root@slacky.slacky.eu> (0/0), delay=00:00:03, xdelay=00:00:03, mailer=esmtp, pri=120446, relay=mailserver.unipi.it. [131.114.21.12], dsn=4.7.1, stat=Deferred: 450 4.7.1 Client host rejected: cannot find your hostname, [151.1.182.109]
Vedete l'indirizzo email da cui manda? root@slacky.slacky.eu. Ecco, noi vogliamo che sia root@slacky.eu.

Altre info:

Codice: Seleziona tutto

sendmail -d0.9 < /dev/null
Version 8.14.4
 Compiled with: DNSMAP LOG MAP_REGEX MATCHGECOS MILTER MIME7TO8 MIME8TO7
                NAMED_BIND NETINET NETINET6 NETUNIX NEWDB NIS PIPELINING SASLv2
                SCANF SOCKETMAP STARTTLS TCPWRAPPERS USERDB XDEBUG
Canonical name: slacky.slacky.eu
 UUCP nodename: slacky
        a.k.a.: slacky
        a.k.a.: [151.1.182.109]

============ SYSTEM IDENTITY (after readcf) ============
      (short domain name) $w = slacky
  (canonical domain name) $j = slacky.slacky.eu
         (subdomain name) $m = slacky.eu
              (node name) $k = slacky
========================================================
se setto l'opzione indicata da masalapianta, ovvero settare la macro $j l'output di questo comando diventa:

Codice: Seleziona tutto

sendmail -d0.9 < /dev/null
Version 8.14.4
 Compiled with: DNSMAP LOG MAP_REGEX MATCHGECOS MILTER MIME7TO8 MIME8TO7
                NAMED_BIND NETINET NETINET6 NETUNIX NEWDB NIS PIPELINING SASLv2
                SCANF SOCKETMAP STARTTLS TCPWRAPPERS USERDB XDEBUG
Canonical name: slacky.slacky.eu
 UUCP nodename: slacky
        a.k.a.: slacky
        a.k.a.: [151.1.182.109]

============ SYSTEM IDENTITY (after readcf) ============
      (short domain name) $w = slacky
  (canonical domain name) $j = slacky.eu
         (subdomain name) $m = slacky.eu
              (node name) $k = slacky
========================================================
(notate $j che è diversa da prima) però il 'canonical name' non cambia così come il risultato inviando una email.

Emanuele

Re: Sendmail e FQDN

Inviato: gio apr 26, 2012 21:59
da zoros
a parte che il funzionamento di sendmail è "normale" come funziona ora (si setta il campo "from:" e va bene così), mi ricordo di aver usato il MASQUERADING, come descritto anche qui ...

non so dove volete arrivare ... comunque questi esperimenti con sendmail su un server attivo non mi piacciono, si corre il rischio di finire in qualche blacklist #-o

Re: Sendmail e FQDN

Inviato: gio apr 26, 2012 22:06
da notsafe

Codice: Seleziona tutto

echo "Ciao" | mail tomasi@cli.di.unipi.it -- -f root@slacky.eu


oppure,usando il comando sendmail

Codice: Seleziona tutto

 echo "Ciao" |  sendmail -froot@slacky.eu  tomasi@cli.di.unipi.it


o più drasticamente,se il tuo problema è genericamente l'hostname, modifica /etc/sendmail.cf E /etc/submit.cf con

Codice: Seleziona tutto

..
Djslacky.eu
..


(cosa che dovrebbe essere già fatto con il define di masalapianta)

Re: Sendmail e FQDN

Inviato: gio apr 26, 2012 23:07
da zoros
probabilmente si può fare (da slackers sicuramente :D ), però non capisco ...

Codice: Seleziona tutto

cat /etc/mail/sendmail.cf
...
#####   DO NOT EDIT THIS FILE!  Only edit the source .mc file.
...

mentre il sorgente dovrebbe essere questo:

Codice: Seleziona tutto

/usr/share/sendmail/cf/cf/sendmail-slackware.mc

che poi è forse più illeggibile del risultato :lol: ...

Re: Sendmail e FQDN

Inviato: gio apr 26, 2012 23:39
da targzeta
Ragazzi, qui non ci stiamo capendo.

@notsafe
La soluzione 'Djslacky.eu' è la stessa di masalapianta e non funziona. In pratica l'opzione di masalapianta va messa nel sorgente citato da zoros che poi, quando viene compilato, si traduce in ciò che proponi tu nel file sendmail.cf.

Aggiungere il from è logico che funzioni ma non è quello che serve a noi. Noi vogliamo che una email mandata con il comando che ho scritto prima arrivi come root@slacky.eu invece che come root@slacky.slacky.eu. In pratica sendmail deve attaccare al nome utente un @domain e non un @host.domain.

Il comportamento attuale di sendmail è corretto perché lui sta mandando una email dell'utente root posto nell'host 'slacky' del dominio 'slacky.eu'. Però noi vogliamo modificare questo comportamento in modo che mandi le email come solo '@slacky.eu'.

Sono sicuro che alla fine riusciremo a trovare il modo. Controllo un po' i masquerading di zoros,
Emanuele

Re: Sendmail e FQDN

Inviato: ven apr 27, 2012 0:35
da targzeta
Ho risolto!!!!

Era tutto come consigliato da masalapianta e notsafe (più le prove che avevamo fatto). Solo che sendmail durante l'invio usa il file di configurazioe /etc/mail/submit.cf e non /etc/mail/sendmail.cf. Quindi quelle impostazioni consigliate andavano messe anche lì.

Grazie mille a tutti,
Emanuele