26. august 2003 - 21:58Der er
91 kommentarer og 2 løsninger
Mailserver på RH9
Hej Linux Exp...
Jeg er forholdsvis ny i Linux, men har en Red Hat 9 server kørende som samba, ftp og webserver. Brugerne bliver oprettet som linux brugere på serveren og har så rettigheder til deres homedir, fildeling og evt. deres www bibliotek hvis jeg hoster deres domæne. (via ftp) Der er INGEN klienter på serveren udover samba til windows. Så det drejer sig om brugere ude på nettet.
Nu vil jeg også sætte en mailserver (SMTP og POP3). I første omgang skal der bare oprettes mailserver på ét domæne (det som jeg har knyttet til serveren). Sådan at hver bruger automatisk får en pop3 konto der hedder "bruger@serverdomæne.dk". Senere kunne det være interessant at kunne give andre hostede domæner mulighed for egne email adresser. (men den tid den sørg)
Jeg har læst lidt i RH9 manualerne og har studeret lidt sendmail ipop3 mv. men i modsætning til alle andre funktion i Redhat, som jeg selv har konfigureret, må jeg sige at det ser noget håbløst ud.
Er der nogen der har eller kender en ordentlig og forholdshvis nem vejledning til at opsætte hvad jeg har brug for?
Det skal siges at jeg kun arbejder i Shell, så det er ikke fordi at jeg ikke kan skrive en kommando, men det kræver bare noget ordentligt vejledning/materiale at gå ud fra. Og helst ingen webinterface løsning.
start med at installere sendmail og imap rpm pakkerne.
Konfigurer sendmail til at lytte til omverdenen - ret i /etc/mail/sendmail.mc - fjern ordet "dnl" (eller indsæt dem - jeg husker det ikke lige) der, hvor kommentaren fortæller det.
generer sendmail.cf med "cd /etc/mail; m4 sendmail.mc > sendmail.cf" - så er sendmail klar til at starte "service sendmail start; chkconfig sendmail on".
Domæner den skal acceptere mail for skrives i /etc/mail/local-host-names - så modtages lokalt på maskinen (dog lidt afhængig af typen af internet forbindelse - der skal være åbent til port 25 - og dns skal være på plads).
Efter sendmail skal pop3 på plads - "vi /etc/xinetd.d/ipop3" - ret disable = yes til disable = no - og genstart xinetd "service xinetd restart" - og så lyttes til port 110.
Så man der være noget med sikkerhed, men den basale funktionalitet er på plads.
hvis du overvejer at tilbyde web-mail så kan du bruge squirrelmail - rpm-pakken skal blot installeres, hvorefter http://xx.dk/webmail kører - hvis du har enabled imap i xinetd
jeg plejer at anbefale postfix da syntaksen til at konfigurere den er ret simpel (den slår sendmail med flere længder) og er bygget med sikkerhed for øje.
jeg har faktisk aldrig opsat andre mailservere end sendmail (jo bortset fra et par tilfældige under windows) - men det er jo smag og behag :-).
Jeg ser også en fordel i at bruge hvad RH leverer med, da det hermed også vedligeholdes fra RedHat network - dermed er sikkerhed lidt nemmere at håndtere. Det skal dog siges, at postfix leveres med en redhat.
hmm .. sidst jeg hørte om postfix i rpm så var det en version 1.11-15 hvilket er en ret gammel version (nyeste er 2.0.14).
Man kan diskutere for og imod et automatisk update-program. Jeg bryder mig ikke helt om at der er nogen som installerer software på min maskine uden at jeg nødvendigvis har noget med det at gøre... men det er nok også smag og behag.
på RH9 cdrom findes ./RedHat/RPMS/postfix-1.1.11-11.i386.rpm - som er backportet af RedHat.
Jeg får på ingen måde installeret noget uden at jeg har med det at gøre - jeg vælger hvad og hvornår, men det er nemt for mig at få at vide, at der nu findes en nyere udgave af en pakke - jeg er helt enig - ingen automatisk installation af pakker/produkter :-)
ok - det er stadig en gammel version af postfix hvis det er version 1.1.11-11.
Ok - jeg har ikke rodet med rh's up2date program (så det har har det fra er "salgsgassen" fra redhat), eftersom jeg selv oversætter min egene servere (apache , dns, postfix, courier og lign).
Det er lidt sjovt rent apropos. ApacheWeekly lavede på et tidspuntk en undersøgelse af de apache-webservere som kommer med de forskellige dists. I mange af de apache-servere som følger med er der pathcet for underlige ting, nogle gange endda således at det åbner for huller som ellers var fixet.
nu bliver bjuhl indlæg lidt spammet, men hvad søren, det kan være, at han kan bruge noget af det.
Jeg har brugt up2date igennem relativ lang tid, og det virker faktisk ret godt. Jeg har også brugt nogle af alternativerne. Jeg oversætter aldrig egne servere, da jeg (arbejdsmæssigt) arbejder med produkter som stiller krav om, at alt er som leveret af RH (herunder kerner). Derfor bruger jeg faktisk aldrig make.
Har du tilfældigvis et link til artiklen hos apacheweekly - det lyder interessant.
Jeg kan forstå på det hele at jeg nok skal bruge postfix. Sendmail ser lidt avanceret ud :-) Men kan jeg konfigurere min mail server med postfix og ipop3d...?
Tja, sikkerhed er en besværlig ting (og klienter).
Hvis du bruger outlook express, så skal der være sat en smtp-server på den konto, hvor du har modtaget en mail, for at du kan bruge "reply-to" - derfor kan det være lidt af en opgave at forklare, at du skal oprette en konto, hvor brugerens adresse f.eks. er en tdc, smtp-server er tdc, og pop3 konto er hos dig.
Du kan opsætte secure smtp, således at det er muligt at bruge outlook imod din smtp-server. Jeg ved (igen ikke) hvordan det laves i postfix, men du kan i sendmail opsætte krav om logon for at kunne bruge din maskine som relay.
Men du ahr forstået det rigtigt - du har et produkt til at modtage mail (postfix/sendmail) - og et andet som brugerne forbinder sig til for at afhente deres mail (ipop3d)
sorry - men jeg var allerede i seng på det tidspunkt (jeg har en lille størrelse som godt kan lide at stå tidligt op :-) ).
Man kan godt lave authentikering af brugere under Postfix. Min anbefaling er dog at få postfix op og køre først, og så bagefter rode med de mere avancerede features.
angående forskellen på qmail og postfix så havde sslug faktisk på et tidspunkt et foredrag som hed MailServer Celebrity Deathmatch, hvor to forsøgte at give argumenter for qmail og postfix:
jeg kan måske lige sige at under postfix kan man sætte den til at acceptere at sende post fra alle klient-maskiner på samme netværk. Altså hvis man kører med private-adress-space ip-adresser på sit netværk, så kan postfix acceptere mails fra 192.168.1.1-255.
"Kan ma få qmail til at automatisk lave mailkonto på alle brugere" - jeg skal lige forstå hvad du mener med dette. Både postfix og qmail vil forsøge at aflevere til en lokal bruger med en given adresse; igen med et eksempel: hvis jeg sender en mail til nisse@domæne.dk, så vil mailserveren antage at der er en lokal bruger som hedder nisse og forsøge at aflevere mailen til denne bruger, ellers vil den komme med en fejl.
jeg tror alt andet lige at det nemmeste er at give dig i kast med en af mail-serverne og så spørge for dig når du støder på problemer. Som regel ligger de et helt andet sted end man forventer :-)
Jeg har installeret postfix og prøvet at konfigurer den udfra vejledning på postfix.org Hvis jeg bruger min udbyders smtp til outgoing, kan jeg sende mails som bliver modtaget med bruger@serverdomæne.dk Men hvis jeg bruger mail.serverdomæne.dk til outgoing, kan jeg ingenting. Jeg kan heller IKKE modtage mail fra serveren. Hvis jeg sender mail til bruger@serverdomæne.dk, er det som om de bare bliver væk.
DNS A-record: Vært = mail.serverdomæne.dk > Ip xxx.xxx.xxx.xxx MX-record: Vært = serverdomæne.dk | Mailudveksler = mail.serverdomæne.dk | Præ 15 Vært = serverdomæne.dk | Mailudveksler = backup-mx.stofanet.dk | Præ 50
Nu sidder jeg lige på arb. så det kan først blive i aften.
Men når jeg prøver at sende noget med mail1.stofanet.dk som udgående, så sender den mailen, men den bliver ikke modtaget.
Hvis jeg sender med mail.serverdomæne.dk som udgående, så melder Outlook fejl.
Det skal lige siges at stofa har blokeret port 25, derfor siger de man skal leve en ekstra MX-record med lavere prioritet end mail.serverdomæne.dk, men skal MX-records sættes op på mailserveren, eller finder den selv ud af det fra A-recorden.
Er min DNS opsætning i orden...? Det er vel det allerførste der skal være 100% i orden.
det er ret klart at du kan sende med mai1.stofanet.dk for det er en helt anden server. Jeg tror vi skal koncentrere os om at få din mailserver til at modtage post først. Men lad os se i aften.
Min egen klient sidder på samme subnet, men mine brugere skal jo connecte til mailserveren fra deres eget net (udbyder) hvad skal mynetworks så stå til?
Jeg har ikke lige tjekket hvad outlook siger, for den kommer med 2 fejl. Den ene kan jeg huske, og det er pop3 serveren som den godt kan finde, men den svare ikke igen. Den anden fejl må være noget med udgående mail at gøre.
umiddelbart ville jeg sige at det letteste er at lade dine brugere bruge deres udbyderes mailserver til at sende post fra (husk på at de godt kan sende post med bruger@ditdomæne.dk igennem en anden postserver). Det er dog kun en løsning hvis der er tale om venner og bekendte. Hvis du skal have en professionel løsning (altså forstået som en du kan sælge til folk), så skal du implementere STMP-Auth, hvilket ikke er helt trivilet.
Hvis jeg bruger min udbyders smtp til outgoing, kan jeg sende mails som bliver modtaget med bruger@serverdomæne.dk som afsender. Men hvis jeg bruger mail.serverdomæne.dk til outgoing, kan jeg ingenting.
Jeg kan heller IKKE modtage mail fra serveren. Hvis jeg sender mail til bruger@serverdomæne.dk, og prøver at hente dem ned via pop3, for jeg en fejl om at den godt kan finde serveren, men at serveren ikke svare.
Første forsøg: > Aug 29 19:49:10 serverdomæne ipop3d[4072]: pop3 service init from 62.107.142.xxx >Aug 29 19:49:16 serverdomæne ipop3d[4072]: Command stream end of file while reading line user=??? host=3E6B8E07.rev.stofanet.dk [62.107.142.xxx]
Disse to forsøg er lavet via en "test acount" fra outlook, uden ændring i main.cf Den ene godkendte den, den anden ikke. Der kommer dog stadig ikke post igennem. Men jeg tror de hænger fast i postfix.....
Er der nogle opsætninger for maildrob, der skal sørge for at den kommer ud til bjuhl mailbox.
du kan teste om der ligger mails i køen så kan du se det med kommandoen "mailq".
Ellers vil jeg gætte på at postfix har afleveret mailen et-eller-andet sted, men at ipop3d kigger det forkerte sted. I main.cf kan man sige til postfix hvor den skal aflevere mails:
# The home_mailbox parameter specifies the optional pathname of a # mailbox file relative to a user's home directory. The default # mailbox file is /var/spool/mail/user or /var/mail/user. Specify # "Maildir/" for qmail-style delivery (the / is required). #
jeg har ikke selv installeret ipop3d så jeg kan desværre ikke tjekke hvor den kigger efter mail - måske ved lap det ?
hvis du ikke lige kan finde hvor den lægger den så kan du evt prøve at lave en
Nej, min maillog ser ud som ovenstående. Den registrer kun når jeg tømmer postkassen, men der kommer aldrig noget i postkasse, nok fordi det ikke når min server pga. forkert dns, eller fordi postfix ikke kan finde ud af at ligge det i inbox.
Jeg har sat postfix til at bruge /var/spool/mail/ men jeg ved ikke hvor pop3 tjekker. Kan ikke finde config filen hvor det står i.... Har kigget i /etc/xinetd.d/ipop3 uden held
MEN skal der ikke være et program der dropper det i mailbox for postfix, eller klare den det selv??? (er det nok med postfix og pop3 eller skal der være en 3. service som maildrop)
nej - postfix kan godt selv finde ud af at smide mailsne - maildrop er kun hvis du vil have behandlet dine mails inden de bliver afleveret (f.eks. tjekke for spam eller lign).
det er standard indstillingen så det ville undre mig hvis der stod noget andet, men det der undrer mig lidt er at der ikke kommer nogle logmeddelser fra postfix.
Og ja, jeg forsøgte som paven sagde, men jeg kommer nok ikke igen :-)
skal det forstås som at du ikke vil bruge postfix ?!!? well det er fair nok jeg vil nok heller ikke skifte til sendmail :-)
en fordel ved postfix er dog at den understøtter at man kan have aliaser og virtuelle domæner liggende i en mysql database, hvilket gør det nemmere at konfigurere via en webside og noget database adgang - hvis man har ikke-tekniske brugere.
bjuhl - nu er du nødt til at reagere - vi har en mistanke om, at efter at postfix er installeret og konfigureret, så er den måske slet ikke blevet startet - og så virker det af gode grunde ikke.
Derfor, så prøv lige som mfalck skriver: /etc/rc.d/init.d/postfix start Der er et alternativ til det - "service postfix start"
Og nej, jeg vil ikke bruge postfix - den virker ikke logisk for mig, men jeg er også en rigtig mangeårig sendmail bruger - og m4-konfiguration er klaret på få minutter. Til gengæld har du ret - vhosts er ikke helt så simpelt.
høhø - blot fordi et "tilfædigt" site benytter postfix, så skal hele verden jo ikke gå på halen :-)
Jeg har vel konfigureret over 500 sendmails efterhånden - og lavet manuelle ændringer i sendmail.cf efter behov (og meget tankevirksomhed) - brugt sendmail over modem/X.21 (uucp) - til X.alt_muligt - internet osv., så der er ikke noget som kan skræmme mig omkring sendmail - udover en enkelt ting - når de ændrer på funktionaliteten :-)
Derudover tyder det på, at du har fået skræmt bjuhl bort med postfix... :-)
nej det er korrekt. Jeg er ganske klar over at sendmail er den mest udbredte mailserver (og jeg skal da heller ikke afvise at jeg selv har sat en eller to op - men det er godt nok længe siden sidst). Jeg tror nu også at målt i rå ydelse så performer sendmail måske lidt hurtigere end postfix. Men det vil jeg tilskrive at postfix benytter sig af en meget modulær opbygning, og mailen skal passere rundt mellem de forskellige programmer, hvor der i sendmail er tale om eet program som står for det meste af funktionaliten, og derfor er der ikke noget overhead med at passere informationer rundt. Ret mig endelig hvis jeg tager fejl - det er nok, uden at overdrive, 4-5 år siden jeg har set på sendmail.
det kan godt være at jeg skal passe på med at anbefale postfix næste gang :-)
efter alle mine anbefalinger af postfix må jeg vist snart skrive en howto og lægge på lws.dk - så kan jeg bare sende et link dertil :-)
Her er en howto af postfix på RH9: Stop sendmail (service sendmail stop) Fjern sendmail (rpm -e `rpm -qa|grep sendmail|xargs`) download nyeste postfix til RH9 (http://postfix.wl0.org/ftp/RPMS-rh9-i386/) installer postfix (rpm -ivh postfix-<version# som er downloaded) til postfix til autostart (chkconfig --add postfix) ret /etc/postfix/main.cf omkring mydestination hvis der skal modtages for $mydomain start postfix (service postfix start)
og postfix er klar til at modtage mails for maskinen selv og for domænet.
Sværere er det ikke - det var de step jeg gik igennem (cirka) - jeg har ikke fjernet sendmail og autostartet postfix, men ellers virker det.
Nu har jeg efterhånden set mange linux newbies her på eksperten. Jeg synes efterhånden at det viser sig, at de fleste kan dobbeltklikke på en .exe fil, men alt andet giver mange problemer.
Der er også flere og flere som vælge at bruge RedHat, så jeg tror fremtiden bliver binære pakker, som blot skal installeres og tingene virker. RedHat's rpm pakker (og andre distributioners tilsvarende) tror jeg simpelthen er fremtiden.
Jeg overvejer seriøst at lave RH-specifikke vejledninger - lws-vejledninger fejler ikke noget, men det holder ikke i længden for newbies. De fleste har ikke behov for at være med på de nyeste noder, men har brug for noget som virker - og de kan finde ud af. Og utroligt mange brugere ved efterhånden ikke, hvad en dos-prompt er - og en shell er derfor endnu mere umulig.
ja det er nok en meget god pointe; men der kunne jo også være lidt for dem som ønsker noget mere avanceret af f.eks. postfix, såsom SASL, LDAP eller hvad man nu kan komme på.
hm .. lidt sørgeligt at man bliver en dinosaur blot fordi man kan køre kommandoer fra en kommandolinie; for at gøre tingene endnu værre så har jeg end ikke installeret X på min server ... endnu et søm til kisten :-)
jeg tror har er gået ud for at drikke sig mod til - ikke som os andre hængerøve, som bliver hængende - smutter også om et øjeblik :-)
Jeg vil tro, at de fleste ting som postfix kan - det kan sendmail også (bare for at fortsætte den), så en rpm-vejledning kunne fint være, at "sådan får du det til at virke" (jævnfør dit eget råd - prøv, og vi løser problemer undervejs) - og så en overbygning på den grundlæggende vejledning - således får du udviddet funktionalitet - såsom LDAP (sendmail kan), SASL (sendmail kan) osv.
Og jeg kører en masse Oracle - som ikke kan installeres uden Xwindows :-( - selvom mange af mine maskiner ikke har haft X - men det har også været uden Oracle. Testmaskiner lever trods alt kun et kort liv - ligesom crash test dummies... :-)
Selvfølgelig er postfix startet. Jeg genstarter den jo hver gang jeg har lavet en ændring i main.cf, og den skriver altid OK i både stop og startprocesen.
Jeg prøvede at tage root's mailfil og ændre den til bjuhl, da root havde en masse mail liggende. Men nå jeg tømmer postkassen via pop3, så får jeg stadig ikke noget ned. Og jeg modtager heller ikke noget på serveren. Det eneste jeg kan se i log filen er når jeg logger ind via pop3 og tømmer. Så pop3 virker, bortset fra at den ikke tømmer i /var/spool/mail Jeg er så ikke sikker på at postfix kører helt rigtig, idet jeg ikke kan se noget i logfilen når jeg sender noget til serveren.....
har du msn, så skriv lige en adresse - så kontakter jeg dig via msn - og det er metoden at give brugernavn/password - specielt fordi der skal root adgang til.
jeg fanger dig når du er om-line - men opgaven bliver, at jeg logger på din maskine og så kikker jeg på det. Svaret lægges efterfølgende her, således at andre måske kan få gavn af svaret.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.