SlackwareThis Forum is for the discussion of Slackware Linux.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I'm trying to set up sendmail, dovecot and thunderbird on my office email server. I'm running sendmail 8.14.9 and dovecot 2.2.13 under Slackware 14.1 and have compiled and installed dovecot from Slackbuilds and can use it to read emails with TB from anywhere. However I can't send emails using TB except from the server itself. It seems not to want to authenticate ... saslauthd is running.
The sendmail.mc is:
Code:
dnl# This is the default sendmail .mc file for Slackware. To generate
dnl# the sendmail.cf file from this (perhaps after making some changes),
dnl# use the m4 files in /usr/share/sendmail/cf like this:
dnl#
dnl# cp sendmail-slackware.mc /usr/share/sendmail/cf/config.mc
dnl# cd /usr/share/sendmail/cf
dnl# sh Build config.cf
dnl#
dnl# You may then install the resulting .cf file:
dnl# cp config.cf /etc/mail/sendmail.cf
dnl#
include(`../m4/cf.m4')
VERSIONID(`TLS supporting setup for Slackware Linux')dnl
OSTYPE(`linux')dnl
dnl# These settings help protect against people verifying email addresses
dnl# at your site in order to send you email that you probably don't want:
define(`confPRIVACY_FLAGS', `authwarnings,novrfy,noexpn,restrictqrun')dnl
dnl# Uncomment the line below to send outgoing mail through an external server:
dnl define(`SMART_HOST',`mailserver.example.com')
dnl# No timeout for ident:
define(`confTO_IDENT', `0')dnl
dnl# Enable the line below to use smrsh to restrict what sendmail can run:
dnl FEATURE(`smrsh',`/usr/sbin/smrsh')dnl
dnl# See the README in /usr/share/sendmail/cf for a ton of information on
dnl# how these options work:
FEATURE(`use_cw_file')dnl
FEATURE(`use_ct_file')dnl
FEATURE(`mailertable',`hash -o /etc/mail/mailertable.db')dnl
FEATURE(`virtusertable',`hash -o /etc/mail/virtusertable.db')dnl
FEATURE(`access_db', `hash -T<TMPF> /etc/mail/access')dnl
FEATURE(`blacklist_recipients')dnl
FEATURE(`local_procmail',`',`procmail -t -Y -a $h -d $u')dnl
FEATURE(`always_add_domain')dnl
FEATURE(`redirect')dnl
FEATURE(`no_default_msa')dnl
dnl# Turn this feature on if you don't always have DNS, or enjoy junk mail:
dnl FEATURE(`accept_unresolvable_domains')dnl
EXPOSED_USER(`root')dnl
dnl# Also accept mail for localhost.localdomain:
LOCAL_DOMAIN(`localhost.localdomain')dnl
MAILER(local)dnl
MAILER(smtp)dnl
MAILER(procmail)dnl
dnl##################ADDED STUFF##################
dnl# define a max message size so the MTA doesn't choke
define(`confMAX_MESSAGE_SIZE',`52428800')dnl
define(`CERT_DIR', `MAIL_SETTINGS_DIR`'certs')dnl
define(`confCACERT_PATH',`/etc/mail/certs')dnl
define(`confCACERT',`/etc/mail/certs/cacert.pem')dnl
define(`confSERVER_CERT',`/etc/mail/certs/cert.pem')dnl
define(`confSERVER_KEY',`/etc/mail/certs/key.pem')dnl
define(`confCLIENT_CERT',`/etc/mail/certs/cert.pem')dnl
define(`confCLIENT_KEY',`/etc/mail/certs/key.pem')dnl
dnl# Allow SASL authentication/relaying:
define(`confAUTH_OPTIONS', `A')dnl
TRUST_AUTH_MECH(`DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
DAEMON_OPTIONS(`Port=smtp, Name=MTA')dnl
DAEMON_OPTIONS(`Port=smtps, Name=MSA, M=Ea')dnl
DAEMON_OPTIONS(`Port=submission, Name=MSA, M=Ea')dnl
I'm using "ssl/tls" and "normal password" in TB's server settings which seems to work ok from anywhere. For the outgoing server settings, using TB on the server, "no security" and "no authentication" work. Using TB with "starttls" and "normal password" on either the server machine or an off-server machine doesn't work. TB says
Quote:
The message could not be sent because connecting to SMTP server chem4823.usask.ca failed. The server may be unavailable or is refusing SMTP connections.
My understanding is that in a situation such as this authentication is required from an off-server client in order to send the email.
Zenmap shows port 587 open
In the sendmail log file, when I try to send, I see:
sending with plain 25 port, without these ssl and pass - works ok? do you check?
also logfile says "user not found" -in that part all is ok. that user is really exist on your mailserver?
shell is valid?
If you start saslauthd manually with debug sent to your terminal (saslauth -d) then you would already have a bigger chance to see if anything is happening between Sendmail and saslauthd.
if you raise the Debug Level of Sendmail to 13, then you would additionally see errors like "safesasl(/etc/sasl2/Sendmail.conf) failed: No such file or directory". At least that was how I found out I needed that file.
Thanks for the replies, guys. WiseDraco, sending via port 25 without ssl and password works only using TB on the server itself. My research indicates that this is because sendmail trusts connections made directly on the machine it resides on. Trying the same thing using TB on a remote machine will result in a "relay" error ... authentication is required or no email can be sent. A spam-relay protection mechanism I guess.
Bob, I did have a Sendmail.conf file in /usr/lib/sasl2. I put a copy into /etc/sasl2 as you suggested but it still didn't work. Then, after reading the saslauthd man page (which I should have done in the beginning) I put the Sendmail.conf file in /usr/local/etc. It was necessary to restart both saslauthd and sendmail but it seems to have worked, at least on the local machine. Wait a sec .... Yes!!!! It works on a remote machine as well. Thanks so much for your help.
No. I'm using the stock version of saslauthd that comes with Slackware.
After rereading the man page for saslauthd I find that it's the saslauthd.conf file that goes into /usr/local/etc rather than Sendmail.conf. So, since authentication is working now I assume that /etc/sasl2 is actually the correct place for Sendmail.conf.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.