Solaris sendmail not paying attention to virtusertable


 
Thread Tools Search this Thread
Top Forums UNIX for Advanced & Expert Users Solaris sendmail not paying attention to virtusertable
# 1  
Old 08-31-2018
Solaris sendmail not paying attention to virtusertable

I'm on Solaris 5.11 running sendmail. Local usernames are of the form <letters><numbers> (e.g. hn06511). In the past we used aliases to make point to <username>@olddomain.com.


Code:
<username> <username>@olddomain.com


Now there's a new email address scheme and a new domain. Now email addresses are of the form <firstname>.<lastname>@newdomain.com.


So I changed the aliases to be:


Code:
<username> <firstname>.<lastname>@newdomain.com


This works, however <username>@olddomain.com no longer works. To add insult to injury, there are many scripts with hardcoded email addresses to the old style.



So I want to change <username>@olddomain.com -> <firstname><lastname>@newdomain.com. I thought I could use virtusertables to accomplish this so I made a virtusertable that contains:


Code:
@olddomain.com %1


Supposedly that should take <anybody>@olddomain.com and route it to just the username (%1). I hoped that then the aliases I have defined would translate <username> -> <firstname>.<lastname>@newdomain.com. But as far as I can see sendmail is ignoring this virtusertable completely and attempting delivery to <username>@olddomain.com and, of course, failing.


AFAICT I formated the virtusertable properly and ran makemap (should I be using dbm or hash? I've seen both). AFAICT I have put in the proper FEATURE and done the make and made sure the generated sendmail.cf is in the proper place. I've seen FEATURE expressed as both


Code:
FEATURE(virtusertable',dbm -o /etc/mail/virtusertable')


and


Code:
FEATURE(virtusertable',hash -o /etc/mail/virtusertable')


But neither work.


What kind of debugging or other info can I provide and try?


Thanks in advance.
# 2  
Old 08-31-2018
# 3  
Old 09-01-2018
Did you recreate sendmail.cf with the m4/make command, according to the README in /usr/lib/mail?
Also you need to create the binary index files for the virtusertable.
The commands mught hide in /usr/ccs/bin; put that into the PATH.
# 4  
Old 09-02-2018
Quote:
Originally Posted by Neo
Perhaps try newaliases
newaliases is not the answer. If I put %lt;username>@newdomain.com newaliases complains that it's not a local email address.

------ Post updated at 06:28 PM ------

Quote:
Originally Posted by MadeInGermany
Did you recreate sendmail.cf with the m4/make command, according to the README in /usr/lib/mail?
Also you need to create the binary index files for the virtusertable.
The commands mught hide in /usr/ccs/bin; put that into the PATH.
Yes, I used make. Yes I created the maps for virtusertable.db.

Not sure what you mean by commands hiding in /usr/ccs/bin. What commands? Who needs to know about them?
# 5  
Old 09-02-2018
In Solaris 10 the make and m4 commands are in /usr/ccs/bin/
Maybe Solaris 11 is different.?
# 6  
Old 09-02-2018
Don't know about differences with 10 and 11. I do know the make succeeds.
# 7  
Old 09-05-2018
What the hell is wrong with this site not allowing email addresses or URLs?!? Why oh why?!? How can you ask a question about sendmail without email addresses or references?!?

------ Post updated at 08:51 PM ------

Upping my post count...

What the hell is wrong with this site not allowing email addresses or URLs?!? Why oh why?!? How can you ask a question about sendmail without email addresses or references?!?

------ Post updated at 08:56 PM ------

One more!

------ Post updated at 08:56 PM ------

What the hell is wrong with this site not allowing email addresses or URLs?!? Why oh why?!? How can you ask a question about sendmail without email addresses or references?!?

------ Post updated at 08:57 PM ------

Quote:
Originally Posted by defaria
Don't know about differences with 10 and 11. I do know the make succeeds.
Another reply...

------ Post updated at 08:58 PM ------

Why isn't this upping my post count?

------ Post updated at 09:00 PM ------

More craziness. It seems that sendmail/virtusertable on Solaris does not act like sendmail/virtusertable on other systems. Specifically it never matches a "@domain" LHS and does not expand %1 to the username. I've seen many pages on the Internet say that if you have something like "@example.com %1@my-isp.com" then an email address such as user@example.com would be translated to user@my-isp.com. But this doesn't happen.

Looking at Sendmail 8.12.3 cf/README - Features I read:

Code:
virtusertable                 A domain-specific form of aliasing, allowing multiple 		virtual domains to be hosted on one machine.  For example, 		if the virtuser table contained:info@foo.com	foo-info info@bar.com	bar-info joe@bar.com	error:nouser 550 No such user here jax@bar.com	error:5.7.0:550 Address invalid @baz.org	jane@example.net 		 		then mail addressed to info@foo.com will be sent to the 		address foo-info, mail addressed to info@bar.com will be 		delivered to bar-info, and mail addressed to anyone@baz.org 		will be sent to jane@example.net, mail to joe!bar.com will 		be rejected with the specified error message, and mail to 		jax@bar.com will also have a RFC 1893 		compliant error code 5.7.0. 		
 		The username from the original address is passed 		as %1 allowing:
@foo.org	%1@example.com                  		meaning someone@foo.org will be sent to someone@example.com.

I've configured my virtusertable largely like the above:

Code:
info@foo.com    foo-info
info@bar.com    bar-info
joe@bar.com     error:nouser 550 No such user here
jax@bar.com     error:5.7.0:550 Address invalid
foobar@foo.com  %1@foobar.com
@baz.org        jane@example.net

Next I ran sendmail -bt to test these entries:

Code:
sendmail -bt
ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter <ruleset> <address>
> /map virtuser info@foo.com
map_lookup: virtuser (info@foo.com) returns foo-info (0)
> /map virtuser info@bar.com
map_lookup: virtuser (info@bar.com) returns bar-info (0)
> /map virtuser joe@bar.com
map_lookup: virtuser (joe@bar.com) returns error:nouser 550 No such user here (0)
> /map virtuser jax@bar.com
map_lookup: virtuser (jax@bar.com) returns error:5.7.0:550 Address invalid (0)
> /map virtuser foobar@foo.com
map_lookup: virtuser (foobar@foo.com) returns @foobar.com (0)
> /map virtuser user@baz.org
map_lookup: virtuser (user@baz.org) no match (0)
>

So I am looking up stuff in /etc/mail/virtusertable (virtusertable.db?) however the last two maps failed. For foobar@foo.com the "%1" is not being expanded properly and for the user@baz.org sendmail doesn't even match. Why is this? This directly contradicts the documentation which says that "The username from the original address is passed as %1". That's not happening.
Login or Register to Ask a Question

Previous Thread | Next Thread

8 More Discussions You Might Find Interesting

1. Solaris

Help to configure sendmail on Solaris 10

Hello, I need help to configure sendmail on Solaris 10. I have to configure sendmail to send mail on the Internet, now works only for sending mail for local users. I'm studying several tutorials ... When I try to send a mail to an external address (eg aaaa@gmail.com) the mail is placed... (3 Replies)
Discussion started by: arfry
3 Replies

2. Solaris

sendmail solaris 10

My mail isbeing sent via server in format of : username@host.domain and from this fails as the domain does not exist. In solaris 9 we used DMdomain which cured the problem. this does not work in solaris 10 I have tried to rebuild sendmail.cf from a new version of the .mc file and tried... (7 Replies)
Discussion started by: smcart
7 Replies

3. Cybersecurity

How to configure sendmail in solaris 10

how to configure sendmail in solaris 10 ???? Anyone knows, pls share the documents. (1 Reply)
Discussion started by: vishwanathhcl
1 Replies

4. Solaris

solaris 8/9 sendmail

Hi All, How do I make sure that sendmail outside the server is blocked? How do I make sure the port 25 is blocked on the firewall? How do I determine if port 25 is used or other ports? Thanks in advance for any commment you may add. (1 Reply)
Discussion started by: itik
1 Replies

5. Solaris

sendmail problem on Solaris 10

Hi All, I am facing problem while sending mail using "mail" & "sendmail" commands from my Solaris 10 system. When I send the mail, it moves it to dead.letter & generates following error messages in /var/log/syslog file; Feb 22 14:20:14 ppip1n sendmail: l1M8oDEE008601:... (10 Replies)
Discussion started by: jumadhiya
10 Replies

6. UNIX for Dummies Questions & Answers

Solaris 9 Sendmail Question

hello to all, I'm a newbie to configuring sendmail. I have a solaris 9 server that is also set up as a NIS master server. My 1st question is how do properly set up sendmail to work in conjuntion with NIS users, so I need to set up sendmail in a certain way or can I just set it up normally. Also... (5 Replies)
Discussion started by: GLJ@USC
5 Replies

7. Solaris

Solaris 10 - Sendmail

Hello, I just installed Solaris 10 and my sendmail works. However, when I send an email the from heading appears as 'user@serverhostname.company.com'. Is there a way to remove the serverhostname so that the heading appears as 'user@company.com'. Thanks. (0 Replies)
Discussion started by: vitzit
0 Replies

8. UNIX for Advanced & Expert Users

Sendmail for Solaris 2.6

How do I configure send mail to send mail to internet mail accounts. The system is on a network which has an internet net router configured. (2 Replies)
Discussion started by: stuart.tootill
2 Replies
Login or Register to Ask a Question