Find the answer to your Linux question:
Results 1 to 8 of 8
Dear all, I'm using Redhat 9 as a web server and wrote a PHP page to send out email. It worked for a long period. But it didn't work suddenly, ...
Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #1
    Just Joined!
    Join Date
    Jan 2005
    Posts
    7

    451 error when sending email


    Dear all,

    I'm using Redhat 9 as a web server and wrote a PHP page to send out email. It worked for a long period.

    But it didn't work suddenly, all the mails are keeping in the Mail queue duing the error:

    *******************************************
    Running /var/spool/mqueue/j0K8HYeN010454
    <test@test.com>... Using cached ESMTP connection to mail.test.com. via
    esmtp...
    >>> RSET
    250 RSET? Well, ok.
    >>> MAIL From:<root@localhost.localdomain> SIZE=536
    451 <localhost.localdomain> is invalid or DNS says does not exist
    <test@test.com>... Deferred: 451 <localhost.localdomain> is invalid or DNS says does not exist
    Closing connection to mail.test.com.
    ********************************************

    I've no idea what's happening as I didn't change any setting of DNS.

    Would anyone tell me what should I do? thank you! BTW, I'm using sendmail.

  2. #2
    Just Joined!
    Join Date
    Jan 2005
    Posts
    7
    help please, thank you.

  3. #3
    Linux Guru kkubasik's Avatar
    Join Date
    Mar 2004
    Location
    Lat: 39:03:51N Lon: 77:14:37W
    Posts
    2,396
    check your /etc/hosts file to make sure you have included localhost at 127.0.0.1 also see if your router/modem has changed any name resolution settings.
    Avoid the Gates of Hell. Use Linux
    A Penny for your Thoughts

    Formerly Known as qub333

  4. $spacer_open
    $spacer_close
  5. #4
    Just Joined!
    Join Date
    Jan 2005
    Posts
    7
    Thank you very much for your help.

    I've checked /etc/hosts and it included:
    127.0.0.1 myhostname localhost localhost.localdomain

    But for router/modem settings, how to check it?
    Sorry for my stupidity cause I'm just a newer for linux, thank you.

    BTW, I've tried ftp to localhost.localdomain and it works.
    Does it mean the DNS is correct and my problem is due to sendmail or other?

  6. #5
    Just Joined!
    Join Date
    Jan 2005
    Posts
    7
    any suggestion?

    thanks.

  7. #6
    Just Joined!
    Join Date
    Jan 2005
    Posts
    7
    This is the M4 configuration file, did I make anything wrong or missed? Thank you.
    p.s. Actually I didn't modify it after installed the OS.

    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',`smtp.your.provider')
    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',`groupreadablekey file')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 #
    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.localdomain')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(`mydomain.com')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
    dnl MASQUERADE_DOMAIN(mydomainalias.com)dnl
    dnl MASQUERADE_DOMAIN(mydomain.lan)dnl
    MAILER(smtp)dnl
    MAILER(procmail)dnl

  8. #7
    Linux Engineer adrenaline's Avatar
    Join Date
    Aug 2004
    Location
    Seattle, Washington
    Posts
    1,058
    You haven't given enough info. First of all if you haven't changed anything than I wouldn't suspect there would be a problem with the M4. I would look more to make sure the service is running and maybe make sure your DNS is running. I would actually test the server and watch the logs. /var/log/maillog. send messages through the script and watch what it does in maillog. Recheck your script test your script maybe you forgot a semi or something. Try to nail it down a little more so you could give us a little more info. Don't give up you will figure it out.
    Mike

    Check
    netstat -pant
    look for port 25, 110, 80, and 143 to be running.
    Some people have told me they don't think a fat penguin really embodies the grace of Linux, which just tells me they have never seen a angry penguin charging at them in excess of 100mph. They'd be a lot more careful about what they say if they had.
    -- Linus Torvalds

  9. #8
    Just Joined!
    Join Date
    Jul 2009
    Posts
    1

    tcpwrapper

    if you have edited the etc/hosts.deny file to include ALL:ALL, you may need to allow sendmail in the /etc/hosts.allow file. Add sendmail: 127.0.0.1 to the /etc/hosts.allow file. You can use localhost and the dnsname of your server as well.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •