We need to create a local e-mail address for the remailer to mail to. This address will be configured to run a program (to post the newsgroup) every time an e-mail arrives. Unfortunately, (for us) this feature (called "pipe to program") is not usually enabled for security reasons.
This HOWTO only describes modifying sendmail.
another excellent option, but not yet covered here.
Instead of creating a new user account, we will only create an alias.
For sendmail these are kept in
syntax is defined in the man page...
In our example the username of the mail address is
confctrl which posts to the local newsgroup
ietf.confctrl, so we add a line like ...
confctrl: |" /usr/local/bin/mail2news.pl ietf.confctrl "
The double quotes are required. There cannot be a space between the first double quotes and the | (pipe) character, or sendmail will complain "User unknown". Huh?
Whenever you modify the
/etc/aliases file you need to
After you send an e-mail, check the /var/log/maillog to see if it worked. The log may contain a useful error message. I found it convenient to open up another terminal window to follow the log with
tail -f /var/log/maillog
"Pipe to program" is the CGI of mail. When an e-mail arrives, instead of appending to a file, sendmail runs a program (or script) and feeds the mail to its standard input.
Actually, with RedHat-6.0 sendmail comes with "pipe to program" enabled, but essentially only a limited number of programs are runnable. User security was not an issue on my machine, so I found it easiest to enable running of everything. Besides, there was no man page for smrsh.
To liberalize "pipe to program" we
need to modify
sendmail.cf (by modifying
sendmail.mc) so that the restricted shell is not used.
Strangely, uncommenting the smrsh feature didn't
work, I needed to change the shell from
Without this change I kept getting a
"Service unavailable" error
message in the
The header of
/etc/senmail.mc of RedHat-6 has a bug. The proper
command line is...
m4 /etc/sendmail.mc >/etc/sendmail.cf
You need to do this when you change
RedHat will extend the super cool Makefile idea in
so you only have to type
You will need to install
rpm -i sendmail-cf-8.9.3-10.i386.rpm
Whenever you modify the sendmail.cf file, you should restart sendmail...
From: Jeppe Sorensen of maxiom.se ...
One can solve the security issue by simply putting the
mail2news.pl script in the
directory and chown and chmod the file accordingly.
With RedHat, sendmail documentation does not install by default.
I comes in a separate RPM with a name like sendmail-doc-8.9.3-10.i386.rpm.
This will create
rpm -i sendmail-doc-*
http://www.sendmail.org/ ca/email/doc/op-sh-5.html describes the syntax of sendmail.cf. I hope you don't have to use it.
This is a description of the features you are modifying in sendmail.mc http://www.sendmail.org/m4/features.html
Sendmail has a man page...
If you are having trouble, and create an e-mail alias with a
different (simpler) target script to test it, remember that sendmail
runs the program as an unprivledged user, who probably doesn't
have privledges to write anywhere except globally writable directories