Solved

How to change localhost.localdomain sending mail from sendmail to other?

Posted on 2004-10-19
17
31,935 Views
Last Modified: 2011-08-18
Hello,

I have a problem. I have installed apache and bugzilla on my redhat9 server.
When bugzilla sends an email or i send an email from terminal (e.g. sendmail my friend@good.com )
from the /var/log/maillog i see that ctladdr = <apache@localhost.localdomain> or <root@localhost.localdomain> . And reveiver does not get my email because my internet provider recognize those senders as a spamer.
My wish is to chenge localhost.localdomain to e.g.  good.com  or some other.

how to configure sendmail ???

thanks in advance
Raimondas
0
Comment
Question by:r_b
  • 8
  • 3
  • 3
  • +3
17 Comments
 
LVL 1

Expert Comment

by:pokui
ID: 12345419
I don't really use Redhat, but you may want to put your domain name in /etc/hostname and /etc/hosts (or use your favourite tool to do this) so that subsequent programs that may run gethostbyname() can get the proper entry.

To change the settings in sendmail, then you need to change your sendmail.cf (usually in /etc or /etc/mail). Look for the lines that start thusly...


# my official domain name
# ... define this only if sendmail cannot automatically determine your domain
#Dj$w.Foo.COM


and edit to your heart's delight (uncomment the Dj$w.Foo.COM and change Foo.COM to good.org - or whatever.

HTH.
0
 
LVL 1

Expert Comment

by:pfinch
ID: 12345434
Hey Raimondas,

In your sendmail.cf (usually /etc/mail/sendmail.cf) put in or uncomment the "Dj" line.

So to get sendmail to use "good.com" put the line:

Djgood.com into your sendmail config.

If you want sendmail to be able to receive mail from that domain, put it in the /etc/mail/local-host-names file, or what ever file your sendmail.cf uses to find local-host-names.

Note:
A lot of mail servers will block the mail if you do not have a reverse DNS lookup for your FQDN(Fully Qualified Domain Name) of the mail server.

Regards,
Peter
0
 

Author Comment

by:r_b
ID: 12345838
Thank you for your reply,

I have changed to Djgood.com, but when i send using
sendmail some@mail.com   in the log  i see the same root@localhost.localdomain
Do i need to do some steps? I have restarted sendmail services.

thanks
0
 
LVL 17

Expert Comment

by:owensleftfoot
ID: 12345884
Try adding your ISPS mailserver  to your sendmail.cf

DSmymail.isp.com
0
 
LVL 1

Expert Comment

by:pfinch
ID: 12345917
Oh yeah,

Also make sure the domain name is set in apache.

Bugzilla might send email as the domain name for the web server.

So in your httpd.conf set
ServerName good.com

Also check your bugzilla config file, "localconfig" I think.

Regards,
Peter
0
 

Author Comment

by:r_b
ID: 12346425
In bugzilla localconfig is only db_host parameter which is used for locating some sql(e.g. MySql) database.  In the httpd.conf i have set ServerName parameter to good.com:80.  And in the sendmail.cf i have uncommented Dj parameter and have set it to Djgood.com. I have restarted all services and it does not work. In my mailog i see again that ctladdr=<root@localhost.localdomain>
What i did wrong?

thanks
Raimondas
0
 
LVL 1

Expert Comment

by:pfinch
ID: 12346677
Try this in your sendmail.conf


DMgood.com

and restart sendmail

This sets the domain you masquerade as

Good luck
0
 
LVL 40

Expert Comment

by:jlevie
ID: 12346730
There are two possible causes of difficulty here. External mail servers may reject your mail because the professed system name is localhost.localdomain, and that's fixable by editing /etc/sysconfig/network and setting:

HOSTNAME=real.dom.tld

and then editing /etc/hosts so that it reads

127.0.0.1   real.dom.tld real localhost.localdomain localhost

The second part of the fix is to edit /etc/mail/sendmail.mc to include:

MASQUERADE_AS(`dom.tld')dnl
FEATURE(masquerade_envelope)dnl
FEATURE(masquerade_entire_domain)dnl

Then reboot.
0
How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

 

Author Comment

by:r_b
ID: 12355105
One more question. It seems that your solution Jlevie works fine. But there is one problem. From your example i thought that using MASQUERADE_AS(`dom.tld')dnl  the sender's mail will be like user@dom.tld but in ma case i get user@real.dom.tld.  How to fix it? Or what am i doing wrong?

thanks!!!
0
 
LVL 40

Expert Comment

by:jlevie
ID: 12355193
What does that line in sendmail.mc contain?
0
 

Author Comment

by:r_b
ID: 12355297
Sorry for the full source, maybe You will see some other nonsenses:

####################START of sendmail.mc########################
divert(-1)dnl
dnl #
dnl # This is the sendmail macro config file for m4. If you make changes to
dnl # /etc/mail/sendmail.mc, you will need to regenerate the
dnl # /etc/mail/sendmail.cf file by confirming that the sendmail-cf package is
dnl # installed and then performing a
dnl #
dnl #     make -C /etc/mail
dnl #
include(`/usr/share/sendmail-cf/m4/cf.m4')dnl
VERSIONID(`setup for Red Hat Linux')dnl
OSTYPE(`linux')dnl
dnl #
dnl # Uncomment and edit the following line if your outgoing mail needs to
dnl # be sent out through an external mail server:
dnl #
dnl define(`SMART_HOST',`mail.vb.lt')
dnl FEATURE(relay_entire_domin')
dnl #
define(`confDEF_USER_ID',``8:12'')dnl
define(`confTRUSTED_USER', `smmsp')dnl
dnl define(`confAUTO_REBUILD')dnl
define(`confTO_CONNECT', `1m')dnl
define(`confTRY_NULL_MX_LIST',true)dnl
define(`confDONT_PROBE_INTERFACES',true)dnl
define(`PROCMAIL_MAILER_PATH',`/usr/bin/procmail')dnl
define(`ALIAS_FILE', `/etc/aliases')dnl
dnl define(`STATUS_FILE', `/etc/mail/statistics')dnl
define(`UUCP_MAILER_MAX', `2000000')dnl
define(`confUSERDB_SPEC', `/etc/mail/userdb.db')dnl
define(`confPRIVACY_FLAGS', `authwarnings,novrfy,noexpn,restrictqrun')dnl
define(`confAUTH_OPTIONS', `A')dnl
dnl #
dnl # The following allows relaying if the user authenticates, and disallows
dnl # plaintext authentication (PLAIN/LOGIN) on non-TLS links
dnl #
dnl define(`confAUTH_OPTIONS', `A p')dnl
dnl #
dnl # PLAIN is the preferred plaintext authentication method and used by
dnl # Mozilla Mail and Evolution, though Outlook Express and other MUAs do
dnl # use LOGIN. Other mechanisms should be used if the connection is not
dnl # guaranteed secure.
dnl #
dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
dnl #
dnl # Rudimentary information on creating certificates for sendmail TLS:
dnl #     make -C /usr/share/ssl/certs usage
dnl #
dnl define(`confCACERT_PATH',`/usr/share/ssl/certs')
dnl define(`confCACERT',`/usr/share/ssl/certs/ca-bundle.crt')
dnl define(`confSERVER_CERT',`/usr/share/ssl/certs/sendmail.pem')
dnl define(`confSERVER_KEY',`/usr/share/ssl/certs/sendmail.pem')
dnl #
dnl # This allows sendmail to use a keyfile that is shared with OpenLDAP's
dnl # slapd, which requires the file to be readble by group ldap
dnl #
dnl define(`confDONT_BLAME_SENDMAIL',`groupreadablekeyfile')dnl
dnl #
dnl define(`confTO_QUEUEWARN', `4h')dnl
dnl define(`confTO_QUEUERETURN', `5d')dnl
dnl define(`confQUEUE_LA', `12')dnl
dnl define(`confREFUSE_LA', `18')dnl
define(`confTO_IDENT', `0')dnl
dnl FEATURE(delay_checks)dnl
FEATURE(`no_default_msa',`dnl')dnl
FEATURE(`smrsh',`/usr/sbin/smrsh')dnl
FEATURE(`mailertable',`hash -o /etc/mail/mailertable.db')dnl
FEATURE(`virtusertable',`hash -o /etc/mail/virtusertable.db')dnl
FEATURE(redirect)dnl
FEATURE(always_add_domain)dnl
FEATURE(use_cw_file)dnl
FEATURE(use_ct_file)dnl
dnl #
dnl # The -t option will retry delivery if e.g. the user runs over his quota.
dnl #
FEATURE(local_procmail,`',`procmail -t -Y -a $h -d $u')dnl
FEATURE(`access_db',`hash -T<TMPF> -o /etc/mail/access.db')dnl
FEATURE(`blacklist_recipients')dnl
EXPOSED_USER(`root')dnl
dnl #
dnl # The following causes sendmail to only listen on the IPv4 loopback address
dnl # 127.0.0.1 and not on any other network devices. Remove the loopback
dnl # address restriction to accept email from the internet or intranet.
dnl #
dnl #
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl
dnl #
dnl # The following causes sendmail to additionally listen to port 587 for
dnl # mail from MUAs that authenticate. Roaming users who can't reach their
dnl # preferred sendmail daemon due to port 25 being blocked or redirected find
dnl # this useful.
dnl #
dnl DAEMON_OPTIONS(`Port=submission, Name=MSA, M=Ea')dnl
dnl #
dnl # The following causes sendmail to additionally listen to port 465, but
dnl # starting immediately in TLS mode upon connecting. Port 25 or 587 followed
dnl # by STARTTLS is preferred, but roaming clients using Outlook Express can't
dnl # do STARTTLS on ports other than 25. Mozilla Mail can ONLY use STARTTLS
dnl # and doesn't support the deprecated smtps; Evolution <1.1.1 uses smtps
dnl # when SSL is enabled-- STARTTLS support is available in version 1.1.1.
dnl #
dnl # For this to work your OpenSSL certificates must be configured.
dnl #
dnl DAEMON_OPTIONS(`Port=smtps, Name=TLSMTA, M=s')dnl
dnl #
dnl # The following causes sendmail to additionally listen on the IPv6 loopback
dnl # device. Remove the loopback address restriction listen to the network.
dnl #
dnl # NOTE: binding both IPv4 and IPv6 daemon to the same port requires
dnl #       a kernel patch
dnl #
dnl DAEMON_OPTIONS(`port=smtp,Addr=::1, Name=MTA-v6, Family=inet6')dnl
dnl #
dnl # We strongly recommend not accepting unresolvable domains if you want to
dnl # protect yourself from spam. However, the laptop and users on computers
dnl # that do not have 24x7 DNS do need this.
dnl #
FEATURE(`accept_unresolvable_domains')dnl
dnl #
dnl FEATURE(`relay_based_on_MX')dnl
dnl #
dnl # Also accept email sent to "localhost.localdomain" as local email.
dnl #
LOCAL_DOMAIN(`localhost')dnl
dnl #
dnl # The following example makes mail from this host and any additional
dnl # specified domains appear to be sent from mydomain.com
dnl #
dnl MASQUERADE_AS(`vb.lt')dnl
dnl #
dnl # masquerade not just the headers, but the envelope as well
dnl #
dnl FEATURE(masquerade_envelope)dnl
dnl #
dnl # masquerade not just @mydomainalias.com, but @*.mydomainalias.com as well
dnl #
dnl FEATURE(masquerade_entire_domain)dnl
dnl #
dnl #MASQUERADE_DOMAIN(localhost)dnl
dnl #MASQUERADE_DOMAIN(localhost.localdomain)dnl
MAILER(smtp)dnl
MAILER(procmail)dnl
######################END of sendmail.mc######################
0
 
LVL 2

Expert Comment

by:hoonexpert
ID: 12355757
You can try changing 2 files

/etc/hosts and /etc/sysconfig/network

should be v simple.

Manish Shah.

0
 

Author Comment

by:r_b
ID: 12355974
I don't think this is simple. From the sendmail.mc above you can see that my mail server is mail.vb.lt
and if i change hosts and network to vb.lt, the problem will gone. But my sendmail program do not  send mail through mail.vb.lt, it will write me those things(in this log there is no mail.vb.lt server):

Oct 19 07:37:32 localhost sendmail[3874]: i9J5bTeq003874: from=root, size=6, class=0, nrcpts=1, msgid=<200410190537.i9J5bTeq003874@vb.lt>, relay=root@localhost
Oct 19 07:37:32 localhost sendmail[3876]: i9J5bWwc003876: <raimondas@vb.lt>... User unknown
Oct 19 07:37:32 localhost sendmail[3874]: i9J5bTeq003874: to=raimondas@vb.lt, ctladdr=root (0/0), delay=00:00:03, xdelay=00:00:00, mailer=relay, pri=30006, relay=[127.0.0.1] [127.0.0.1], dsn=5.1.1, stat=User unknown
Oct 19 07:37:32 localhost sendmail[3876]: i9J5bWwc003876: from=<root@vb.lt>, size=6, class=0, nrcpts=0, proto=ESMTP, daemon=MTA, relay=vb.lt [127.0.0.1]
Oct 19 07:37:32 localhost sendmail[3874]: i9J5bTeq003874: i9J5bTer003874: DSN: User unknown
Oct 19 07:37:32 localhost sendmail[3876]: i9J5bWwe003876: from=<>, size=1780, class=0, nrcpts=1, msgid=<200410190537.i9J5bTer003874@vb.lt>, proto=ESMTP, daemon=MTA, relay=vb.lt [127.0.0.1]
Oct 19 07:37:32 localhost sendmail[3874]: i9J5bTer003874: to=root, delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=31030, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (i9J5bWwe003876 Message accepted for delivery)
Oct 19 07:37:32 localhost sendmail[3877]: i9J5bWwe003876: to=raimondas@vb.lt\t, ctladdr=<root@vb.lt> (8/0), delay=00:00:00, mailer=local, pri=120491, dsn=5.1.1, stat=User unknown
Oct 19 07:37:33 localhost sendmail[3877]: i9J5bWwe003876: to=raimondas@vb.lt\t, ctladdr=root (8/0), delay=00:00:01, mailer=local, pri=31934, dsn=5.1.1, stat=User unknown
Oct 19 07:37:33 localhost sendmail[3877]: i9J5bWwe003876: i9J5bXwc003877: postmaster notify: User unknown
Oct 19 07:37:33 localhost sendmail[3877]: i9J5bXwc003877: to=raimondas@vb.lt\t, ctladdr=root (8/0), delay=00:00:00, mailer=local, pri=2958, dsn=5.1.1, stat=User unknown
Oct 19 07:37:33 localhost sendmail[3877]: i9J5bXwc003877: to=raimondas@vb.lt\t, ctladdr=root (8/0), delay=00:00:00, mailer=local, pri=2958, dsn=5.1.1, stat=User unknown
Oct 19 07:37:33 localhost sendmail[3877]: i9J5bXwc003877: i9J5bXwd003877: return to sender: User unknown
Oct 19 07:37:33 localhost sendmail[3877]: i9J5bXwd003877: to=raimondas@vb.lt\t, ctladdr=root (8/0), delay=00:00:00, mailer=local, pri=3982, dsn=5.1.1, stat=User unknown
Oct 19 07:37:33 localhost sendmail[3877]: i9J5bXwc003877: Losing ./qfi9J5bXwc003877: savemail panic
Oct 19 07:37:33 localhost sendmail[3877]: i9J5bXwc003877: SYSERR(root): savemail: cannot save rejected email anywhere
0
 

Author Comment

by:r_b
ID: 12356560
any suggestions, please!?
0
 
LVL 40

Accepted Solution

by:
jlevie earned 500 total points
ID: 12357773
You haven't removed the comment flags from the masquerade lines, they need to look like:

MASQUERADE_AS(`vb.lt')dnl
dnl #
dnl # masquerade not just the headers, but the envelope as well
dnl #
FEATURE(masquerade_envelope)dnl
dnl #
dnl # masquerade not just @mydomainalias.com, but @*.mydomainalias.com as well
dnl #
FEATURE(masquerade_entire_domain)dnl

Then restart sendmail.
0
 

Author Comment

by:r_b
ID: 12366468
I have removed the comments and restarted the server but from the log i see again not vb.lt.
If there is no other way i will accept your answer jlevie.

Log:

Oct 21 06:55:38 sdw2 sendmail[28564]: i9L4tca6028564: from=apache, size=589, class=0, nrcpts=1, msgid=<200410210455.i9L4tca6028564@sdw2.vb.lt>, relay=apache@localhost
Oct 21 06:55:38 sdw2 sendmail[28566]: i9L4tcO5028566: from=<apache@sdw2.vb.lt>, size=816, class=0, nrcpts=1, msgid=<200410210455.i9L4tca6028564@sdw2.vb.lt>, proto=ESMTP, daemon=MTA, relay=sdw2.vb.lt [127.0.0.1]
Oct 21 06:55:38 sdw2 sendmail[28564]: i9L4tca6028564: to=raimondas@vb.lt, ctladdr=apache (504/505), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30092, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (i9L4tcO5028566 Message accepted for delivery)
Oct 21 06:55:38 sdw2 sendmail[28568]: i9L4tcO5028566: to=<raimondas@vb.lt>, ctladdr=<apache@sdw2.vb.lt> (504/505), delay=00:00:00, xdelay=00:00:00, mailer=esmtp, pri=30318, relay=mail.vb.lt. [194.176.58.131], dsn=2.0.0, stat=Sent (M2004102107073912242 Message accepted for delivery)
0
 

Author Comment

by:r_b
ID: 12366607
Everything is OK. From the log i see the sender is apache@sdw2.vb.lt, but when bugzilla sends me an email in the from field i see bugzilla-daemon@vb.lt, thats why mail server accepts all bugzilla emails. Thanks jlevie again, and all others too for the help to solve my problem, however jlevie deserves some points from me.

0

Featured Post

Enabling OSINT in Activity Based Intelligence

Activity based intelligence (ABI) requires access to all available sources of data. Recorded Future allows analysts to observe structured data on the open, deep, and dark web.

Join & Write a Comment

If you have a server on collocation with the super-fast CPU, that doesn't mean that you get it running at full power. Here is a preamble. When doing inventory of Linux servers, that I'm administering, I've found that some of them are running on l…
It’s 2016. Password authentication should be dead — or at least close to dying. But, unfortunately, it has not traversed Quagga stage yet. Using password authentication is like laundering hotel guest linens with a washboard — it’s Passé.
Learn how to get help with Linux/Unix bash shell commands. Use help to read help documents for built in bash shell commands.: Use man to interface with the online reference manuals for shell commands.: Use man to search man pages for unknown command…
This demo shows you how to set up the containerized NetScaler CPX with NetScaler Management and Analytics System in a non-routable Mesos/Marathon environment for use with Micro-Services applications.

759 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

18 Experts available now in Live!

Get 1:1 Help Now