This page describes using Qualcomm qpopper to provide Post Office Protocol (POP) access for email users.
This work is to be done on the computer which is to be your mail server. You may sit at that computer's keyboard or work remotely.
These UNIX commands have been taken directly from a Terminal window - these are the commands I use - rather than having been composed after the fact. This is *exactly* what worked for me. I've taken pains to choose forms of the commands which should make sense to you even if you're new to UNIX.
Get the software
We connect to our mail server, create a local workspace, acquire the software, and decompress it.
Build and install the software
A few simple steps and we're done. Routine output elided; error messages left in for you to see, but these may safely be ignored.
server % cd qpopper4.0.4
server % ./configure
server % make
[elided]
ld: warning multiple definitions of symbol _mkstemp
mktemp.o definition of _mkstemp in section (__TEXT,__text)
/usr/lib/libSystem.dylib(mktemp.So) definition of _mkstemp
ld: warning multiple definitions of symbol _mktemp
mktemp.o definition of _mktemp in section (__TEXT,__text)
/usr/lib/libSystem.dylib(mktemp.So) definition of _mktemp
[elided]
|
Now move the software to its final resting place and set up a soft link to span two slightly different visions of the mail hierarchy.
server % sudo cp ./popper/popper /usr/libexec/
server % sudo ln -s /var/mail /var/spool/mail
server % ls -l /var/mail /var/spool/mail
lrwxr-xr-x 1 root wheel 9 Sep 28 00:05 /var/spool/mail@ -> /var/mail
|
Edit the configuration file and start things going
The /etc/inetd.conf file contains the configuration info used by Mac OS X to provide services. We'll have to specify how to spread some Post Office Protocol cheer around to your users. We'll make a backup copy of that file, edit the file (I used vi, but you can use your favorites) and change the existing pop3 line so that it points to our newly-built qpopper.
server % sudo cp /etc/inetd.conf /etc/inetd.conf.orig
server % sudo vi /etc/inetd.conf
#pop3 stream tcp nowait root /usr/libexec/tcpd /usr/local/libexec/popper
pop3 stream tcp nowait root /usr/libexec/tcpd /usr/libexec/popper qpopper -s
|
Once the file is saved we find the process identifier (PID) of the inetd daemon and we send it the hang-up (hup) signal to have it re-process its configuration file.
server % ps -auxc | grep inetd
root 335 0.0 0.0 1308 116 ?? Ss 2:27AM 0:00.00 inetd
server % sudo kill -hup 335
|
Testing to ensure things are working
Presuming that you've already got sendmail properly configured you can test your sendmail / qpopper installation by using your favorite email client (or a bare-bones telnet technique) to send an email message to a user on that machine.
Then use telnet again to check the mail queue for that user, as in this example:
server % telnet localhost pop3
Trying ::1...
telnet: connect to address ::1: Connection refused
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK Qpopper (version 4.0.4) at server.geektimes.com starting.
user username
+OK Password required for username.
pass password
+OK username has 1 visible message (0 hidden) in 468 octets.
list
1 468
.
quit
+OK Pop server at server.geektimes.com signing off.
Connection closed by foreign host.
server %
|
Clean up after yourself
Let's remove the install directory now that we're done.
% cd ~
% rm -rf ./install
|
You might want to - okay, you really ought to - jump up one level, to see how this fits into the big picture of deploying a mail server.