qmail

SMTP via annen server

I forbindelse med at jeg kjører qmail på klient-PC og ønsker at klienten skal sende mail via lokal server som kjører sendmail, opprettet jeg filen /var/qmail/control/smtproutes:

  :mail.acme.net
som er (DNS) navnet på mailserveren min. Se forøvrig sendmail-oppsettet mitt for detaljer.

Virtual domains

Problem 1

Jeg har installert qmail 1.03 på en RH 6.0 maskin her, og har etpar problemer (etter å ha lest *noe* dokumentasjon).

Problem 1: Jeg har endel domener som alle er registrert med "mail" som hostname på en og samme maskin (og samme IP-nummer), dvs mail.domene1.no, mail.domene2.no osv. Jeg ønsker å opprette mail-adresser som blir "bruker@domene1.no", "bruker@domene2.no" osv.

Helt konkret - hvordan setter jeg opp slik at bruker "2dcLsS4" får mail-adressen "webmaster@domene1.no" ? Gjerne step-by-step med beskrivelse av hvilke filer som må opprettes/endres. - Finnes det noe program a-la Webmin hvor jeg kan utføre disse endringene ?

Svar

Vi vel mail.domene1.no som eksempel legg til domene1.no legg til linja i /var/qmail/control/virutaldomains:

domene1.no 2dcLsS4

sett inn ./Mailbox evt ./Maildir/ i ~2dcLsS4/.qmail-default
no får denne brukaren all post som går til dette domenet.

Problem 2 - Maildir

Alle brukerne vil benytte enten Outlook Express eller Netscape. Jeg har ikke helt klart for meg om Maildir har noen innvirkning på programvare via POP3 og dokumentasjonen jeg har lest hittil har ikke sagt noe om dette (ikke umulig at jeg har oversett noe...)

Svar

dersom du nyttar deg av qmail sin pop3-server kan du berre bruke maildir. Dersom du skal bruke berre pop3 og evt IMAP (då treng du ein patch til uw-imap) er Maildir kjappare og sikrare enn standard mailbokser.

Dersom du har planar om å drive mailhotell, kanskje du heller burde titte på cyrus-imapd, der skil ein klart mellom mailbrukarar og systembrukarar, det vil ikkje løysinga over gjere.

----------------------
set

QMAILHOST=myisp.net
QMAILUSER=acc

and in /var/qmail/control/smtproutes
:smtpserver.at.your.isp.net

I hope that helps.
--------------

After upgrading from RedHat 5.2 (2.2 kernel) to 6.0 (and removing unwanted sendmail again), querying qmail status gives:

 # /etc/rc.d/init.d/qmail status
 qmail dead but subsys locked
 qmails     336  0.0  0.6  1132  392 ?        S    13:13   0:00 qmail-send
 qmaill     340  0.0  0.6  1108  420 ?        S    13:13   0:00 splogger qmail
 root       341  0.0  0.5  1100  336 ?        S    13:13   0:00 qmail-lspawn ./Ma
 qmailr     342  0.0  0.5  1100  336 ?        S    13:13   0:00 qmail-rspawn
 qmailq     343  0.0  0.5  1092  352 ?        S    13:13   0:00 qmail-clean
I've encounter this problem long ago and seems the solution for me is just reinstall qmail then everything is ok.well, just remember before reinstall,
  1. back up the files under folder /var/qmail/control and /var/qmail/alias
  2. then delete the /var/qmail folder before reinstall in case of some file can't be overwrite

As far as I know, Netscape Mail (and Outlook) use your configured "E-Mail address" as both the "From:" header and as the MAIL FROM: (envelope sender) during the SMTP conversation. Eudora (most likely) uses your username as the Envelope sender, and qmail appends the hostname. Change /var/qmail/control/me to the hostname that you want appended.

my /etc/rc.d/init.d/qmail file

#! /bin/sh

PATH=/var/qmail/bin:/usr/local/bin:/usr/bin:/bin
export PATH

case "$1" in
    start)
        echo -n "Starting qmail: svscan"
        cd /var/qmail/supervise
        env - PATH="$PATH" svscan &
        echo $! > /var/run/svscan.pid
        echo "."
    ;;
    stop)
        echo -n "Stopping qmail: svscan"
        kill `cat /var/run/svscan.pid`
        echo -n " qmail"
        svc -dx /var/qmail/supervise/*
        echo -n " logging"
        svc -dx /var/qmail/supervise/*/log
        echo "."
    ;;
    stat)
        cd /var/qmail/supervise
        svstat * */log
    ;;
    doqueue|alrm)
        echo "Sending ALRM signal to qmail-send."
        svc -a /var/qmail/supervise/qmail-send
    ;;
    queue)
        qmail-qstat
        qmail-qread
    ;;
    reload|hup)
        echo "Sending HUP signal to qmail-send."
        svc -h /var/qmail/supervise/qmail-send
    ;;
    pause)
        echo "Pausing qmail-send"
        svc -p /var/qmail/supervise/qmail-send
        echo "Pausing qmail-smtpd"
        svc -p /var/qmail/supervise/qmail-smtpd
    ;;
    cont)
        echo "Continuing qmail-send"
        svc -c /var/qmail/supervise/qmail-send
        echo "Continuing qmail-smtpd"
        svc -c /var/qmail/supervise/qmail-smtpd
    ;;
    restart)
        echo "Restarting qmail:"
        echo "* Stopping qmail-smtpd."
        svc -d /var/qmail/supervise/qmail-smtpd
        echo "* Sending qmail-send SIGTERM and restarting."
        svc -t /var/qmail/supervise/qmail-send
        echo "* Restarting qmail-smtpd."
        svc -u /var/qmail/supervise/qmail-smtpd
    ;;
    cdb)
        tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp
        chmod 644 /etc/tcp.smtp*
        echo "Reloaded /etc/tcp.smtp."
    ;;
    *)
        echo "Usage: $0
{start|stop|restart|doqueue|reload|stat|pause|cont|cdb|queue|help}"
    exit 1
esac
exit 0

my /var/qmail/rc

[root@top qmail]# cat rc
#!/bin/sh
exec env - PATH="/var/qmail/bin:$PATH" \
qmail-start './Maildir./'

How can I forward a mail to another adress. Must I compile another modul. Or can I put this in /var/qmail/aliases/ ?

It depends a great deal on your setup. I'll describe the answer for a generic setup now:

A) favorite.net is in /var/qmail/control/locals
B) there is no UNIX user "martin.buber"
C) you want to forward "martin.buber@favorite.net" to me@other.machine.net
You create a the following file:
~alias/.qmail-martin:buber
==============================
&me@other.machine.net
- - - - OK, notice that any "." in a username becomes a ":" in a filename. This disambiguates filesystem "."s from email address "."s, since "." has a special meaning in a filesystem context. Now, you can use an ampersand, or nothing as the first character of the line.