EXIM är mycket anpassningsbar öppen källkods mailöverföringsprogramvara

exim Transaktions e -posttjänst

Öppen källkod Mail Transfer Agent som alternativ till Sendmail

EXIM är mycket anpassningsbar open source -postöverföringsagent för e -post routing och leverans. Det är det främsta valet för företagsnivåorganisationer för dess flexibilitet.

Översikt

Kommunikation via elektronisk post har blivit primitiv i våra liv. Att skicka e -postmeddelanden från skrivbord, mobil eller någon annan enhet är en daglig affär för de flesta av människorna. Simple Mail Transfer Protocol (SMTP) är standardprotokollet som används för att skicka e -post. IMAP och POP3 är protokollen för att få e -postmeddelanden. IMAP har vissa fördelar jämfört med POP på grund av synkronisering över enheterna. Så, en postöverföringsagent som öppen källkod och stöder alla dessa nödvändiga protokoll är avgörande. Att köra din e -postöverföringsagent är ett mycket tråkigt jobb och därför kräver valet du gör för MTA -programvaran en djup analys mot din kravmatris. EXIM är en av de mest flexibla open source -postöverföringsagenten som kan användas som ersättning av standardöverföringsagenten för de mest UNIX -systemen .. EXIM levereras med ett paket med banbrytande funktioner inklusive Sendmail -kompatibilitet, CPanel -stöd, flexibel konfiguration och framför allt enormt stöd för öppen källkod. EXIM är som ett ramverk med sitt applikationsspråk för att ställa in komplexa konfigurationer. Den har en avancerad logik för e-postbehandling som hjälper den att lösa komplexa användningsfall. Sendmail är redan förlorad mot Postfix i alla aspekter, men Postfix är mindre mångsidig än exim. Det har utmärkt integrationsstöd och det ger allt som en systemadministratör kan fråga. EXIM stöder de flesta av postöverföringsagentfunktionerna på något eller annat sätt.

Systemkrav

Innan du bygger EXIM måste en lokal konfigurationsfil som anger alternativ oberoende av alla operativsystem skapas med namnet Local/Makefile. En mall för den här filen levereras som fil Src/EditMe, och den innehåller fullständiga beskrivningar av alla alternativinställningar däri. Dessa beskrivningar upprepas därför inte här. Om du bygger EXIM för första gången är det enklaste att göra att kopiera src/reditme till Local/Makefile, läs den och redigera den på rätt sätt. Det finns tre inställningar som du måste leverera, eftersom EXIM inte kommer att bygga utan dem. De är platsen för körtidskonfigurationsfilen (konfigurera \ _file), katalogen i vilken exim -binaries kommer att installeras (bin \ _directory) och identiteten för EXIM -användaren (EXIM \ _USER och kanske EXIM \ _Group också). Värdet på konfigurering \ _fil kan faktiskt vara en kolon-separerad lista med filnamn; EXIM använder den första av dem som finns. Det finns några andra parametrar som kan specificeras antingen vid byggtid eller vid körning för att möjliggöra samma binär att användas på ett antal olika maskiner. Men om platserna för EXIM: s spole -katalog och loggfilkatalog (om inte inom spolkatalogen) är fixerade, rekommenderas att du anger dem i lokal/makefile istället för vid körning, så att fel upptäcks tidigt i EXIMs exekvering (sådant Som en missbildad konfigurationsfil) kan loggas. EXIMs gränssnitt för att ringa virus- och skräppostskanningsprogramvara direkt från åtkomstkontrolllistor sammanställs inte som standard. Om du vill inkludera dessa faciliteter måste du ställa in

WITH_CONTENT_SCAN=yes

i din lokala/makefile. För detaljer om själva anläggningarna Om du ska bygga EXIM -monitorn krävs en liknande konfigurationsprocess. Filen exim \ _monitor/reditme måste redigeras på lämpligt sätt för din installation och sparas under namnet local/eximon.conf. Om du är nöjd med standardinställningarna som beskrivs i Exim \ _Monitor/EditMe, kan lokal/eximon.conf vara tom, men den måste existera. Detta är all konfiguration som behövs i enkla fall för kända operativsystem. Byggnadsprocessen är emellertid inställd så att det är enkelt att åsidosätta alternativ som är inställda som standard eller genom driftssystemspecifika konfigurationsfiler, till exempel för att ändra C-kompilatorn, som standard är GCC.

Funktioner

EXIM stöder alla moderna funktioner som du kan föreställa dig från Top Open Source Mail Transfer Agent -programvara. Det här är några av de viktigaste funktionerna i EXIM:

  • EXIM följer samma allmänna tillvägagångssätt för decentraliserad kontroll som smail gör. Det finns ingen central process som gör övergripande hantering av postleverans. Till skillnad från smail delar emellertid de oberoende leveransprocesserna data i form av “tips”, vilket i vissa fall levereras. Tipset hålls i ett antal DBM -filer. Om någon av dessa filer går förlorade är den enda effekten att ändra mönstret för leveransförsök och retrier.
  • Många konfigurationsalternativ kan ges som expansionssträngar, som omvandlas på olika sätt när de används. Eftersom dessa kan inkludera filuppslag kan mycket av EXIM: s operation göras tabelldrivna om så önskas. Till exempel är det möjligt att göra lokal leverans på en maskin där användarna inte har konton på. Den ultimata flexibiliteten kan erhållas (till ett pris) genom att köra en perl -tolk medan du utvidgar en sträng.
  • Tillgång till att visa historiska meddelanden.
  • Tillgång för att se hela utgående & amp; Inkommande meddelandekö.
  • EXIM har flexibla försöksalgoritmer, som är tillämpliga på riktnings- och routingadresser samt för leverans.
  • EXIM innehåller header och kuvert omskrivningsanläggningar.
  • okvalificerade adresser accepteras endast från specifika värdar eller nätverk.
  • EXIM kan utföra flera leveranser ner samma SMTP -kanal efter att leveranserna har försenats.
  • EXIM kan konfigureras för att göra lokala leveranser omedelbart men för att lämna Remote (SMTP) leveranser tills meddelandet plockas upp av en kö-löpare. Detta ökar sannolikheten för att flera meddelanden skickas ner en enda SMTP -anslutning.
  • Fjärrleveranser av samma meddelande till olika värdar kan valfritt göras parallellt.
  • Inkommande SMTP -meddelanden startar leverans så snart de har tagits emot, utan att vänta på att SMTP -samtalet ska stängas.
  • EXIM har stöd för SMTP Auth -förlängningen för att autentisera klienter och för StartTLS -förlängningen för att ställa in krypterade anslutningar.
  • Perl-kompatibla regelbundna uttryck finns tillgängliga i ett antal konfigurationsparametrar.
  • Domänlistor kan inkludera filuppslag, vilket gör det möjligt att stödja ett mycket stort antal lokala domäner.
  • EXIM stöder valfri kontroll av inkommande returväg (avsändare) och mottagaradresser när de tas emot av SMTP.
  • SMTP -samtal från specifika maskiner, valfritt från specifika identer, kan låsas ut, och inkommande SMTP -meddelanden från specifika avsändare kan också låsas ut. EXIM stöder också användningen av realtidsblockeringslistan (RBL).
  • Värdar som är tillåtna att vidarebefordra post via en maskin till en annan extern domän kan styras med IP -nummer eller IP -nätverksnummer. Reläkontroll av mottagardomänen och avsändaradressen är också tillgänglig.
  • Meddelanden i kön kan vara “frysta” och “tinade” av administratören.
  • EXIM kan hantera ett antal oberoende lokala domäner på samma maskin; Varje domän kan ha sina egna aliasfiler, etc. Denna anläggning är ibland känd som “virtuella domäner”.
  • Enkla e -postlistor kan hanteras direkt av själva EXIM (men för “allvarliga” e -postlistoperationer är det bäst att använda den i samband med programvara för specialiserad e -postlista).
  • Exim statistik en användares hemkatalog innan du letar efter en “.Forward” -fil för att upptäcka fallet med en saknad NFS -montering. Leveransen försenas om katalogen inte är tillgänglig.
  • EXIM innehåller en valfri inbyggd postfiltreringsanläggning. Detta kan konfigureras så att användare kan tillhandahålla personliga filterfiler, och det är också möjligt för en systemomfattande filterfil att tillämpas på varje meddelande.
  • Det finns stöd för flera användarpostlådor som kontrolleras av prefix eller suffix på användarnamnet, antingen via filtermekanismen eller genom flera “.Forward” -filer.
  • Periodiska varningar skickas automatiskt till meddelanden när leveransen försenas - tiden mellan varningar är konfigurerbar. Varningarna kan göras villkorade av innehållet i meddelandet.
  • En kökörning kan startas manuellt för att leverera bara en viss del av kön, eller de meddelanden med en mottagare vars adress innehåller en given sträng. Det finns stöd för ETRN -kommandot i SMTP att gränssnitt till detta.
  • EXIM kan konfigureras för att köra som rot hela tiden, utom när du utför lokala leveranser, vilket det alltid gör i en separat process under en lämplig UID och GID. Alternativt kan det konfigureras för att köras som rot endast vid behov; I synnerhet behöver den inte köras som root när du får inkommande meddelanden eller när du skickar ut meddelanden över SMTP. Se kapitel 55 för en diskussion om säkerhetsfrågor.
  • Jag har försökt göra ordalydelsen om leveransfel meddelanden tydligare och enklare, till förmån för de mindre erfarna personer som nu använder e-post. Alternativ formulering för dessa meddelanden kan anges i en separat fil.
  • EXIM -monitorn är en extra extra; Den visar information om EXIM: s bearbetning i ett X -fönster, och en administratör kan utföra ett antal kontrollåtgärder från fönstergränssnittet. Men alla sådana åtgärder är också tillgängliga från kommandoradsgränssnittet.

Installations instruktioner

Installera EXIM -binärer och skript

Kommandot gör installationen kör exim \ _Install -skriptet utan argument. Skriptet kopierar binärer och verktygsskript i katalogen vars namn anges av Bin \ _Directory -inställningen i Local/Makefile. Installationsskriptet kopierar endast filer om de är nyare än filerna de kommer att ersätta. Eximbinären måste ägas av roten och ha setuid -biten inställd, för normala konfigurationer. Därför måste du köra Make Install som rot så att den kan ställa in eximbinären på detta sätt. Men i vissa speciella situationer (till exempel om en värd inte gör några lokala leveranser) kan det vara möjligt att köra EXIM utan att göra den binära setuidroten (se kapitel 56 för detaljer). EXIM: s körtidskonfigurationsfil heter av inställningen för konfigurering \ _fil i Local/Makefile. Om detta namnger en enda fil, och filen inte finns, kopieras standardkonfigurationsfilen src/configure.default där av installationsskriptet. Om en körtidskonfigurationsfil redan finns, lämnas den ensam. Om konfigurera \ _file är en kolon-separerad lista som namnger flera alternativa filer, är ingen standard installerad. En ändring görs i standardkonfigurationsfilen när den är installerad: standardkonfigurationen innehåller en router som hänvisar till en systemaliasfil. Sökvägen till den här filen är inställd på det värde som anges av System \ _Aliases \ _File i Local/Makefile (/etc/alias som standard). Om systemaliasfilen inte finns skapar installationsskriptet den och matar ut en kommentar till användaren. Den skapade filen innehåller inga alias, men den innehåller kommentarer om de alias som en webbplats normalt bör ha. Mailalias har traditionellt hållits i /etc /alias. Vissa operativsystem använder emellertid nu/etc/post/alias. Du bör kontrollera om din är en av dessa och ändra Exims konfiguration vid behov. Standardkonfigurationen använder den lokala värdens namn som den enda lokala domänen och är inställd för att göra lokala leveranser i den delade katalogen /var /posten som körs som den lokala användaren. Systemalias och .Forward -filer i användarnas hemkataloger stöds, men inget NIS- eller NIS+ -stöd är konfigurerat. Andra domäner än namnet på den lokala värden dirigeras med DNS, med leverans över SMTP. Det är möjligt att installera EXIM för speciella ändamål (till exempel att bygga en binär distribution) i en privat del av filsystemet. Du kan göra detta genom ett kommando som

make DESTDIR=/some/directory/ install

Detta har effekten av att den angivna katalogen för alla filvägar, utom namnet på systemaliasfilen som visas i standardkonfigurationen. (Om en standardaliasfil skapas, ändras dess namn.) För bakåtkompatibilitet används root om DestDir inte är inställd, men denna användning avskrivs. Running Make Install kopierar inte EXIM 4 -konverteringsskriptet Convert4R4. Du kommer förmodligen att köra detta bara en gång om du uppgraderar från Exim 3. Ingen av dokumentationsfilerna i DOC -katalogen kopieras, med undantag för informationsfilerna när du har ställt in information \ _directory, som beskrivs i avsnitt 4.17 nedan. För verktygsprogrammen byts ut gamla versioner till genom att lägga till suffixet .o till deras namn. EXIM -binären hanteras emellertid annorlunda. Det är installerat under ett namn som innehåller versionnumret och kompileringsnumret, till exempel EXIM-4,94-1. Skriptet ordnar sedan en symbolisk länk som kallas Exim för att peka på den binära. Om du uppdaterar en tidigare version av EXIM tar skriptet hand för att säkerställa att namnet EXIM aldrig är frånvarande från katalogen (som man ser av andra processer). Om du vill se vad make -installationen kommer att göra innan du kör den på riktigt kan du skicka alternativet -n till installationsskriptet med detta kommando:

make INSTALL_ARG=-n install

Innehållet i variabelinstallationen \ _Arg överförs till installationsskriptet. Du behöver inte vara rot för att köra detta test. Alternativt kan du köra installationsskriptet direkt, men det måste vara från byggkatalogen. Till exempel från toppnivån Exim-katalogen kan du använda detta kommando:

(cd build-SunOS5-5.5.1-sparc; ../scripts/exim_install -n)

Det finns två andra alternativ som kan levereras till installationsskriptet.

  • -No \ _Chown kringgår uppmaningen att ändra ägaren till den installerade binära till roten och uppmaningen att göra det till en setuid binär.
  • -No \ _Symlink kringgår inställningen av den symboliska länken till den installerade binära. Installera \ _arg kan användas för att skicka dessa alternativ till skriptet. Till exempel:
make INSTALL_ARG=-no_symlink install

Installationsskriptet kan också ges argument som anger vilka filer som ska kopieras. För att till exempel installera bara den eximbinära, och inget annat, utan att skapa den symboliska länken, kan du använda:

make INSTALL_ARG='-no_symlink exim' install

Installera informationsdokumentation

Inte alla system använder GNU -info -systemet för dokumentation, och av detta skäl ingår inte TexInfo -källan till EXIM: s dokumentation i huvuddistributionen. Istället är det tillgängligt separat från FTP -webbplatsen (se avsnitt 1.5). Om du har definierat info \ _directory i Local/Makefile och Texinfo -källan till dokumentationen finns i källträdet, bygger du att installera automatiskt informationsfilerna och installerar dem.

 Svenska