मैं एक ईमेल सर्वर कैसे सेट करूँ?


59

मेरा VPS उबंटू चल रहा है, और मैं अपने डोमेन को ईमेल प्राप्त करने में सक्षम होना चाहता हूं।

ऐसा करने के लिए मैं आसानी से एक मेल सर्वर कैसे सेट करूं?


3
महान प्रश्न, मैं एक महान उत्तर की प्रतीक्षा कर रहा हूं। मैंने वर्षों में कुछ मेल सर्वरों का निर्माण किया है और यह कभी भी आसान नहीं रहा है। लॉट के फैसले: क्या एसएमएस सर्वर, क्या आईएमएपी / पीओपी, कैसे मेल को स्टोर करना है, कैसे उपयोगकर्ताओं को स्टोर करना है ... मैं एक आसान जवाब देने में असमर्थ हूं ।
जेवियर रिवेरा

जवाबों:


48

इस तरह हमने अपने उत्पादन मशीनों पर मेल सेटअप किया है। ये वे मानदंड हैं जिनकी हमें आवश्यकता थी:

  • ईमेल खाते
  • ईमेल उपनाम (फॉरवर्डर्स)
  • IMAP, POP3 और SMTP

"आसान" (tl; डॉ।)

सबसे पहले, मैं यह जानना चाहता हूं कि सबसे आसान समाधान क्या होगा ।

sudo tasksel install mail-server

इसके साथ कई समस्याएँ हुईं जब हमने यह कोशिश की: सबसे पहले यह Dovecot स्थापित करता है, जो कि अधिकांश के लिए ठीक है, लेकिन हमने कूरियर को हमारी जरूरतों के लिए दो में से बेहतर माना है । दूसरा, यह पोस्टफिक्स का उपयोग करता है जो बहुत अच्छा है लेकिन हमें एक्जिम की भी आवश्यकता है क्योंकि यह एक अधिक शक्तिशाली एमटीए / एसएमटीपी सर्वर है। तीसरा, यह MySQL स्थापित करता है - कॉन्फ़िगरेशन में मैं उपयोग करता हूं हम कॉन्फ़िगरेशन के लिए फ्लैट फाइलें पसंद करते हैं क्योंकि यह एक कम ब्रेकिंग पॉइंट है। सोचिये अगर किसी अज्ञात कारण से MySQL दुर्घटनाग्रस्त हो गया तो क्या होगा। अन्यथा एक छोटे मेल सेवा के लिए बनाए रखने के लिए बाकी पैकेज बहुत सीधे और आसान हैं (कुल 1-2 ईमेल डोमेन सोचो)।

हमारा विन्यास

निर्देशिका संरचना

हम सामान्य कॉन्फ़िगरेशन के रास्ते से थोड़ा बाहर भटकते हैं लेकिन यह आसान प्रबंधन के लिए बनाता है।

हमारे मेल के सभी में संग्रहित है /var/mail/virtual/<domain>/<user>/mailभविष्य उदाहरण के लिए तो मैं का उपयोग किया जाएगा email@example.com, fwd@example.com, foo@example.comएक ईमेल पता, पर जाने के लिए एक फारवर्डर प्रतिनिधित्व करने के लिए example@gmail.comक्रमशः, और एक बुरा पता। उपरोक्त उदाहरण में यह होगा /var/mail/virtual/example.com/email/mail

मैं सर्वर पर सभी डोमेन की एक सूची बनाए रखता हूं, /etc/valiasesलेकिन बाद में इसके बारे में और अधिक।

पोस्टफ़िक्स

यह सेटअप का आसान हिस्सा है। बस postfixपैकेज स्थापित करें ।

एग्जिम

एक्ज़िम स्थापित करें apt-get install exim4 exim4-base exim4-config exim4-daemon-heavyएक बार स्थापित होने के बाद, आपको निम्नलिखित मानों को बदलने या जोड़ने के लिए एक्ज़िम डिफ़ॉल्ट कॉन्फ़िगरेशन को संपादित करना होगा:

domainlist local_domains = @:localhost:dsearch;/etc/valiases:dsearch;/var/mail/virtual
daemon_smtp_ports = smtp : 587 : 465
MAIN_TLS_ENABLE = yes

(ये पंक्तियाँ फ़ाइल के विभिन्न भागों में दिखाई देंगी, प्रत्येक को तदनुसार बदलें)

एक बार जब यह एक्ज़िम कॉन्फ़िगरेशन को फिर से पूरा कर लेता है तो update-exim4.confयह एक्ज़िम के लिए आवश्यक परिवर्तनों को समाप्त कर देता है

संदेशवाहक

साथ कूरियर स्थापित courier-baseइस स्थापित करना चाहिए courier-authdaemon, courier-authlib*, courier-imap*, courier-pop*, courieruserinfo,courier-ssl

ईमानदारी से मानक के बाहर बहुत विन्यास नहीं है। आपको केवल एक उपयोगकर्ता डेटाबेस बनाने की आवश्यकता होगी।

हिसाब किताब

एक्ज़िम और कूरियर यह देखने के लिए कुछ स्थानों की जाँच करें कि लॉगिन या आने वाला ईमेल वैध है या नहीं। यदि डोमेन स्थानीय होस्टनाम के रूप में सूचीबद्ध है, या यदि डोमेन में है /var/mail/virtualया डोमेन में है, तो जाँच करें /etc/valiases

ईमेल खाते बनाना

मैंने अंततः इस प्रक्रिया को सुव्यवस्थित करने के लिए कई उपकरण बनाए - लेकिन एक नए उपयोगकर्ता को जोड़ने की धुन पर जाता है:

mkdir -p /var/mail/virtual/example.com/email
chown -R mail.mail /var/mail/virtual/example.com/
maildirmake /var/mail/virtual/example.com/email/mail
chown -R mail.mail /var/mail/virtual/example.com/

फिर कूरियर यूजरडब में पता जोड़ें - ताकि वे लॉग इन कर सकें

userdb email@example.com set uid=8 gid=8 home=/var/mail/virtual/example.com/email mail=/var/mail/virtual/example.com/email/mail

उन मानों को प्रतिस्थापित करना सुनिश्चित करें जहाँ उपयुक्त हों। इसके अलावा - uidऔर gid जरूरत मेल उपयोगकर्ता के लिए संख्यात्मक उपयोगकर्ता / समूह आईडी किया जाना है।

userdbpw -md5 | userdb email@example.com set systempw

यह आपको पासवर्ड के लिए संकेत देगा, जिस खाते के लिए आप उपयोग करना चाहते हैं उसे दर्ज करें।

makeuserdb

अंत में, userdb हैश / शैडो फाइल जनरेट करें। कूरियर को फिर से शुरू करें और परीक्षण करें कि क्या आपके परिवर्तन काम करते हैं:

authtest email@example.com

के समान कुछ उत्पादन करना चाहिए

Authentication succeeded.

     Authenticated: email@example.com  (uid 8, gid 8)
    Home Directory: /var/mail/virtual/example.com/email
           Maildir: /var/mail/virtual/example.com/email/mail
             Quota: (none)
Encrypted Password: $1$LOLCATS$THISWILLBEAHASH.
Cleartext Password: (none)
           Options: (none)

यदि आपको "प्रमाणीकरण विफल: ऑपरेशन की अनुमति नहीं है" के बजाय संपादित करें / आदि / कूरियर / ऑक्टेराडेमॉन देखें और ऑर्टमसॉर्ब को ओटोमोड्यूलिस्ट सूची में जोड़ें।

सभी परीक्षणों की पुष्टि होने के बाद, इसमें शामिल विभिन्न सेवाओं ( courier-authdaemon, exim4) को पुनः आरंभ करें , बंदरगाहों को 143, 25, 586, 495, 110 खोलें और अपने पसंदीदा मेल क्लाइंट में खातों को सेटअप करें।

ईमेल उपनाम बनाना

प्रत्येक डोमेन के लिए आपको /etc/valiasesकम से कम निम्न पंक्ति के साथ एक फ़ाइल बनाना चाहिए (यदि यह मौजूद नहीं है तो बनाएं):

*: :fail: No user at this address.

यह क्या कहता है: यदि आने वाली मेल किसी भी ईमेल खाते से मेल नहीं खाती है जो मेरे पास फ़ाइल पर है - तो मेल को विफल होना चाहिए और एक संदेश के साथ बाउंस होना चाहिए: "इस पते पर कोई उपयोगकर्ता नहीं"। तो कहने के लिए भेजे गए सभी मेल: foo@example.comविफलता के रूप में बाउंस होंगे।

हालाँकि, हमारे पास कुछ ईमेल पता है जो हम कहीं और बनाए रखना चाहते हैं - उदाहरण के लिए कहें@gmail.com - ऐसा करने के लिए हमें बनाने की आवश्यकता है /etc/valiases/example.comऔर फ़ाइल की सामग्री इस प्रकार होनी चाहिए:

fwd: example@gmail.com
*: :fail: No user at this address.

इस तरह, भले ही fwd@example.com सर्वर पर किसी भी ईमेल खाते से मेल नहीं खाता हो, यह /etc/valiasesफ़ाइल में मेल खाता है और मेल को example@gmail.com पर भेज दिया जाएगा - हालाँकि, foo@example.com अभी भी विफल रहेगा "इस पते पर कोई उपयोगकर्ता नहीं" संदेश।


11
क्या यह आईएसबीएन नंबर के साथ आता है?
वेस्ले

1
@WesleyDavid मुझे नहीं लगता कि मेरी पार्टी इतिहास एक ISBN के रूप में :) दिखाई देगा
मार्को Ceppi

बस इन के बाद - बहुत सराहना की - मैं एक त्रुटि को कवर करने के लिए ऊपर संपादित किया है जो मुझे ऑर्टेस्टेस्ट लाइन के साथ मिला है।
डेरेन ग्रीव्स

@DarrenGreaves धन्यवाद! मुझे खुशी है कि इसने मदद की और अपडेट के लिए धन्यवाद!
मार्को Ceppi

मैं इस काम को पूरा करने के लिए संघर्ष कर रहा हूँ - मुझे केवल तभी काम करने के लिए वैलीगेज़ रूटिंग मिली, जब मैंने डेबियन - डायरेसेशन . org / articles / 140 से 350 राउटिंग फ़ाइल को जोड़ा - वर्चुअल डोमेन सामान बिल्कुल भी काम नहीं करता है - क्या आपको किसी भी राउटिंग फाइल को जोड़ना है? टा।
डैरेन ग्रीव्स

14

सबसे आसान तरीका है दौड़ना sudo tasksel install mail-server। यह आपको एक ईमेल सर्वर देगा जिसमें डिफ़ॉल्ट चूक हैं। आपको बस कुछ सवालों के जवाब देने हैं। जाहिर है, यदि आप आवश्यक हैं, तब भी आप मैन्युअल कॉन्फ़िगरेशन करने में सक्षम हैं, लेकिन ज्यादातर मामलों में यह नहीं होगा। बस ऑन-स्क्रीन निर्देशों का पालन करें और आपको ठीक होना चाहिए।

ईमेल सेवा प्रशासन पर पढ़ना हालांकि पूरी तरह से अनुशंसित है।

आधिकारिक संदर्भ:


क्या यह देखने के लिए एक आलसी तरीका है कि क्या करने जा रहा है (संकुल जो इसे स्थापित करेगा, डिफ़ॉल्ट सेटिंग्स) ?। आलसी से मेरा मतलब है खुद को स्थापित किए बिना।
जेवियर रिवेरा

@Javier आप देख सकते हैं क्या सामग्री चलाकर स्थापित कर रहे हैंsudo tasksel --task-packages mail-server
मार्को Ceppi

MySQL में संग्रहीत कॉन्फ़िगरेशन, कोई एंटी-स्पैम, कोई एंटी-वायरस नहीं ... यह वास्तव में हमारे लिए उपयोगी नहीं है :(।
जेवियर रिवेरा


4

बस यह खुद कर रहा है, आपको वास्तव में पोस्टफिक्स की आवश्यकता है, और मेरे मामले में मुझे एक imap सर्वर के रूप में अच्छी तरह से चाहिए था ताकि मैं किसी अन्य मशीन पर एक अच्छा गुई क्लाइंट (किसी भी नाम का उल्लेख नहीं कर) का उपयोग कर सकूं। मैंने इन दस्तावेजों का उपयोग किया:

पोस्टफ़िक्स

डवकोट (इमैप और पॉप 3)

यह वास्तव में बहुत आसान है, इसे मिला और कुछ ही मिनटों में चल रहा है और ई-मेल प्राप्त कर रहा हूं। यह जांचने के लिए भी उपयोगी है कि सब कुछ ठीक pingability स्थापित है ।

ओह, और आपको निश्चित रूप से नीचे के रूप में अपनी डीएनएस प्रविष्टियों को सही ढंग से सेट करना होगा (मेरे लिए काम करने वाली सेटिंग्स के आधार पर):

name   type   content
  @      A     ???.???.??.??    
mail     A     ???.???.??.??

तथा

         MX Records
Name                 Priority
mail.mydomain.com.      1
mail2.mydomain.com.     2

मेल सर्वर के अंत में पूर्ण विराम पर ध्यान दें और अपना आईपी पता और डोमेन नाम डालें जहाँ उपयुक्त हो।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.