PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : mailserver



Tocotac
20.10.02, 22:57
ich habe vor einen mailserver aufzusetzen.

fetchmail -- zum abholen der emails vom externen mailserver
postfix -- für den internen verkehr
squirrelmail -- als IMAP-server

ich hoffe das ich bei der programmauswahl richtig liege. hat jemand ein gutes tut für die progs?

fetchmail funzt, idt ja auch nicht viel zu machen :)
postfix funzt nicht.
hier mail die main.cf
soft_bounce = no
command_directory = /usr/sbin
daemon_directory = /usr/libexec/postfix
default_privs = nobody
myhostname = server.mynet.lan
myorigin = server.mynet.lan
mynetworks_style = host
mynetworks = 192.168.1.0/28
relay_domains = $mydestination
relayhost = auth.smtp.kundenserver.de
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/smtp_auth
smtp_sasl_security_options = noanonymous
#in_flow_delay = 1s
debug_peer_level = 2
debugger_command =
PATH=/usr/bin:/usr/X11R6/bin
xxgdb $daemon_directory/$process_name $process_id & sleep 5
sendmail_path = /usr/sbin/sendmail.postfix
newaliases_path = /usr/bin/newaliases.postfix
mailq_path = /usr/bin/mailq.postfix
setgid_group = postdrop
manpage_directory = /usr/share/man
sample_directory = /usr/share/doc/postfix-1.1.7/samples
readme_directory = /etc/postfix/README_FILES
alias_database = hash:/etc/postfix/aliases

vieleicht kann mir jemand seine main.cf mal posten, oder einfach nur tipps geben.

hab dann squirrelmail-1.2.8-1.7.x.noarch.rpm installiert. bloss wo ist/sind die configdatei/en?

vielen dank


ups, kann ein netter admin, dieses thema in "server und clients" verschieben. danke

[WCM]Manx
20.10.02, 23:07
Hi!

Nur mal als Info, denn ich benutze kein Postfix, bin Qmail/vpopmail User.
Squirrelmail ist kein IMAP-Server, sondern eine Webmail-lösung, die auf einem IMAP-Server aufsetzt. z.B. Cyrus, Courier-IMAP usw.

Grüße

Manx

Tocotac
20.10.02, 23:44
so, hab versucht cyrus zu konfigurieren, nach diesem (http://http://www.linuxforen.de/forums/showthread.php?s=&threadid=30158&highlight=cyrus) howto.
also eine /etc/imapd.conf war nicht da, also eine erstellt. das saslpasswd cyrus hab ich auch noch geschaft, aber ab dann...
cm gibt es nicht und den rest der befehl auch nicht.
kann mir jemand einen rat geben?

vielen Dank

mamue
21.10.02, 09:57
So eine Mailserver konfiguration finde ich alles andere als trivial.
Ich weiss nicht, wo es bei Dir hakt, denn Du lieferst keine Fehlerbeschreibung.
Schon mal in den logs nachgeschaut?
Laufen die Prozesse überhaupt?
Ich kipp jetzt hier einfach mal meine configuration aus (bei SuSE auf lmtp in der cyrus.conf achten!):
main.cf:
queue_directory = /var/spool/postfix

command_directory = /usr/sbin

daemon_directory = /usr/lib/postfix

mail_owner = postfix
myhostname = fileserver.bbs1-emden.schule

mydomain = bbs1-emden.schule

inet_interfaces = $myhostname, localhost

mydestination = $myhostname, localhost.$mydomain, $mydomain,
mail.$mydomain

mynetworks = 172.18.0.0/16, 172.19.0.0/16, 172.20.0.0/16, 127.0.0.0/8

virtual_maps = hash:/etc/postfix/virtual, ldap:ldapShuttle
ldapShuttle_search_base = dc=bbs1-emden,dc=schule
ldapShuttle_query_filter = mail=%s
ldapShuttle_result_attribute = mailLocalAddress, mailAlternateAddress
ldapShuttle_bind = no
ldapShuttle_debug_level = 1

masquerade_domains = $my_domain

sender_canonical_maps = hash:/etc/postfix/canonical-sender
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
mailbox_command = /usr/bin/procmail -t -a "$EXTENSION"
mailbox_transport = procmail
mail_name = Sendmail on VAX 14.8
smtpd_banner = $myhostname ESMTP $mail_name

debug_peer_level = 2
debugger_command =
PATH=/usr/bin:/usr/X11R6/bin
xxgdb $daemon_directory/$process_name $process_id & sleep 5

sendmail_path = /usr/sbin/sendmail
newaliases_path = /usr/bin/newaliases

mailq_path = /usr/bin/mailq

setgid_group = maildrop

manpage_directory = /usr/share/man

sample_directory = /etc/postfix
readme_directory = /usr/share/doc/packages/postfix/README_FILES

mail_spool_directory = /var/mail
canonical_maps = hash:/etc/postfix/canonical
relocated_maps = hash:/etc/postfix/relocated
transport_maps = hash:/etc/postfix/transport
smtpd_sender_restrictions = hash:/etc/postfix/access
masquerade_exceptions = root
defer_transports =
disable_dns_lookups = no
relayhost =
content_filter = vscan:


canonical-sender:
@fileserver.bbs1-emden.schule @lb-bbs1.emd.ni.schule.de
@bbs1-emden.schule @lb-bbs1.emd.ni.schule.de


master.cf:
# ================================================== ========================
# service type private unpriv chroot wakeup maxproc command + args
# (yes) (yes) (yes) (never) (50)
# ================================================== ========================
smtp inet n - n - - smtpd
#628 inet n - n - - qmqpd
pickup unix n - n 60 1 pickup
cleanup unix n - n - 0 cleanup
qmgr unix n - n 300 1 qmgr
#qmgr fifo n - n 300 1 nqmgr
rewrite unix - - n - - trivial-rewrite
bounce unix - - n - 0 bounce
defer unix - - n - 0 bounce
flush unix n - n 1000? 0 flush
smtp unix - - n - - smtp
showq unix n - n - - showq
error unix - - n - - error
local unix - n n - - local
virtual unix - n n - - virtual
lmtp unix - - n - - lmtp
localhost:10025 inet n - n - - smtpd -o content_filter=
#smtps inet n - n - - smtpd -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes
#submission inet n - n - - smtpd -o smtpd_enforce_tls=yes -o smtpd_sasl_auth_enable=yes
tlsmgr fifo - - n 300 1 tlsmgr
#
# Interfaces to non-Postfix software. Be sure to examine the manual
# pages of the non-Postfix software to find out what options it wants.
# The Cyrus deliver program has changed incompatibly.
#
#by mamue: smtp
smtp inet n - n - - smtpd
cyrus unix - n n - - pipe
flags=R user=cyrus argv=/usr/lib/cyrus/bin/deliver -e -m ${extension} ${user}
procmail unix - n n - - pipe
flags=R user=cyrus argv=/usr/bin/procmail -t -m USER=${user}
EXTENSION=${extension} /etc/procmailrc
uucp unix - n n - - pipe
flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
ifmail unix - n n - - pipe
flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
bsmtp unix - n n - - pipe
flags=Fq. user=foo argv=/usr/local/sbin/bsmtp -f $sender $nexthop $recipient
vscan unix - n n - 10 pipe
flags=q user=vscan argv=/usr/sbin/amavis ${sender} ${recipient}
procmail unix - n n - - pipe
flags=R user=cyrus argv=/usr/bin/procmail -t -m USER=${user} EXT=${extension} /etc/procmailrc


cyrus.conf:
# standard standalone server implementation

START {
# do not delete these entries!
mboxlist cmd="ctl_mboxlist -r"
deliver cmd="ctl_deliver -r"

# this is only necessary if using idled for IMAP IDLE
# idled cmd="idled"
}

# UNIX sockets start with a slash and are put into /var/imap/socket
SERVICES {
# add or remove based on preferences
imap cmd="imapd" listen="imap" prefork=0
# imaps cmd="imapd -s" listen="imaps" prefork=0
pop3 cmd="pop3d" listen="pop3" prefork=0
# pop3s cmd="pop3d -s" listen="pop3s" prefork=0
sieve cmd="timsieved" listen="sieve" prefork=0

# at least one LMTP is required for delivery
# lmtp cmd="lmtpd" listen="lmtp" prefork=0
#lmtpunix cmd="lmtpd" listen="/var/imap/socket/lmtp" prefork=0
lmtpunix cmd="lmtpd" listen="/var/lib/imap/socket/lmtp" prefork=0
lmtp cmd="lmtpd" listen="localhost:lmtp" prefork=0
}

EVENTS {
# this is required
checkpoint cmd="ctl_mboxlist -c" period=30

# this is only necessary if using duplicate delivery suppression
delprune cmd="ctl_deliver -E 3" period=1440
}


imapd.conf:
configdirectory: /var/lib/imap
partition-default: /var/spool/imap
admins: cyrus
allowanonymouslogin: no
autocreatequota: 10000
reject8bit: no
#
#sieveusehomedir: false
sieveusehomedir: true
#sievedir: /home/fetchmailer
# /var/lib/sieve/

quotawarn: 90
timeout: 30
poptimeout: 10
dracinterval: 0
drachost: localhost
sasl_pwcheck_method: pam
#added by mamue
lmtpsocket: /var/lib/imap/socket/lmtp


/etc/procmailrc:
DELIVERMAIL="/usr/lib/cyrus/bin/deliver"
LOGFILE="/var/log/procmail/$USER.log"
IMAP="$DELIVERMAIL -e -a $USER -m user.$USER"
BACKUP="$DELIVERMAIL -e -a $USER -m user.$USER.Backup"
SPAMIT="$DELIVERMAIL -e -a $USER -m user.$USER.SPAM"

#create a backup of each mail
:0 c
| $BACKUP

#Spam filter einfachster Art
#:0
#* ^Subject: This is spam
#| $SPAMIT

#Deliver to user inbox
:0 w
| $IMAP

:0 w
{
EXITCODE=$?
host
}


Ich weiss nicht mehr, warum es funktioniert. Aber es funktioniert.
Ach ja, wie Du sicher gesehen hast verwende ich ldap anstelle der virtual-user-db.


Viel Spass,
mamue

Tocotac
22.10.02, 16:53
sagt mal, meine lieben, seh ich das richtig???


fetchmail holt die mails ab und packt sie in die postfächer
|
diese postfächer + die internen werden verwaltet von postfix
|
und cyrus stehlt diese mails zu abholen , per IMAP bereit.


dazwischen gibt es bestimmt noch möglichkeiten wie: virenscanner oder spamfilter
welche anderen möglichkeiten gibt es noch zu diesen programmen, also sendmail ist mir persönlich zu kryptisch.
unter windows (tschuldigung für den vergleich) gibt es ja KEN!, der einen kompletten mailserver mitbringt (abholen von extern - interne mail - pop3). ich denke mal, die linuxer haben einen grund alles einzeln aufzubauen aber was wäre der nachteil eine solche komplettsoftware für linux zu entwickeln?

habt vielen dank, vieleicht schaffen wir es ja zusammen...

MichlS
05.11.02, 18:08
hmm ich glaube eher das es sinnvoll wäre per fetchmail die mails abholen
und mit procmail in die postfächer legen ..

bei dieser variante ist einfach auch einen spam schutz und viren schutz einzubauen ..
(an der sache arbeite ich selber noch) es gibt aber ziemlich viel infos zu diesen thema
im netz .. (muster datei zb. procmailrc oder fetchmailrc als suchbegriff)

wenn mich nicht alles täuscht kann der qpopper imap auch ..
(mit pop3 funktioniert diese zusammenstellung)

gruss

mamue
06.11.02, 12:41
Das ist genau das, was die config macht:
mailbox_transport = procmail
in der main.cf regelt das.
In /etc/procmailrc steht, was procmail zu tun hat.

fetchmail->postfix(user lookup)->procmail->cyrus(deliver)


mamue