डेबियन 9 में पोस्टफिक्स और वेबमेल के साथ एक पूर्ण मेल सर्वर स्थापित करें


यह ट्यूटोरियल आपको पोस्टफ़िक्स डेबियन 9 रिलीज़ के साथ एक पूर्ण मेल सर्वर को स्थापित और कॉन्फ़िगर करने के बारे में मार्गदर्शन करेगा। यह IMAP प्रोटोकॉल के माध्यम से मेल को पुनः प्राप्त करने और बनाने के लिए Dovecot का उपयोग करके मेलबॉक्सों को कॉन्फ़िगर करने का तरीका भी कवर करेगा। उपयोगकर्ता मेल को संभालने के लिए मेल उपयोगकर्ता एजेंट के रूप में रेनलूप वेबमेल इंटरफ़ेस का उपयोग करेंगे।

  1. Debian 9 Minimal Installation
  2. A static IP address configured for the network interface
  3. A local or a public registered domain name.

इस ट्यूटोरियल में, हम केवल DNS रिज़ॉल्यूशन से जुड़े किसी भी DNS सर्वर के बिना /etc/मेजबान फ़ाइल के माध्यम से कॉन्फ़िगर किए गए मेल सर्वर सेटअप के लिए एक निजी डोमेन खाते का उपयोग करेंगे।

चरण 1: डेबियन पर पोस्टफिक्स मेल सर्वर के लिए प्रारंभिक कॉन्फ़िगरेशन

1। पहले चरण में, रूट विशेषाधिकार के साथ या सीधे उपयोगकर्ता के साथ खाते में अपनी मशीन में लॉगिन करें और सुनिश्चित करें कि आपका डेबियन सिस्टम नवीनतम सुरक्षा पैच और सॉफ़्टवेयर और पैकेज रिलीज़ के साथ अद्यतित है , निम्नलिखित आदेश जारी करके।

# apt-get update 
# apt-get upgrade 

2। अगले चरण पर निम्नलिखित सॉफ़्टवेयर पैकेज स्थापित करें जो सिस्टम प्रशासन के लिए उपयोग किए जाएंगे, निम्नलिखित आदेश जारी करके।

# apt-get install curl net-tools bash-completion wget lsof nano

3। अगला, अपने पसंदीदा पाठ संपादक के साथ संपादन के लिए /etc/host.conf फ़ाइल खोलें और DNS रिज़ॉल्यूशन के लिए फ़ाइल की शुरुआत में निम्न पंक्ति जोड़ें मेजबानों फ़ाइल पहले पढ़ें।

order hosts,bind
multi on

4। अगला, अपनी मशीन सेटअप करें FQDN और अपने डोमेन नाम और अपने सिस्टम FQDN को /etc/host फ़ाइल में जोड़ें। डोमेन और FQDN का नाम हल करने के लिए अपने सिस्टम आईपी पते का उपयोग करें जैसा कि नीचे स्क्रीनशॉट में दिखाया गया है।

तदनुसार आईपी पते और डोमेन बदलें। बाद में, ठीक से होस्टनाम लागू करने के लिए मशीन को रिबूट करें।

# hostnamectl set-hostname mail.linux-console.net
# echo "192.168.0.102 linux-console.net mail.linux-console.net" >> /etc/hosts
# init 6

5। रिबूट के बाद, सत्यापित करें कि होस्टनाम को निम्नलिखित श्रृंखलाओं को जारी करके सही ढंग से कॉन्फ़िगर किया गया है। डोमेन नाम, FQDN, होस्टनाम और सिस्टम का IP पता होस्टनाम कमांड द्वारा वापस किया जाना चाहिए।

# hostname
# hostname -s
# hostname -f
# hostname -A
# hostname -i
# cat /etc/hostname 

6। इसके अलावा, परीक्षण करें कि डोमेन नीचे दिए गए आदेशों को जारी करके स्थानीय प्रश्नों का सही उत्तर देता है या नहीं। ध्यान रखें कि आपके नेटवर्क में अन्य प्रणालियों द्वारा जारी दूरस्थ प्रश्नों के लिए डोमेन फिर से नहीं आएगा, क्योंकि हम एक DNS सर्वर का उपयोग नहीं कर रहे हैं।

हालाँकि, डोमेन को अन्य प्रणालियों से उत्तर देना चाहिए यदि आप मैन्युअल रूप से डोमेन नाम को उनकी प्रत्येक /etc/मेजबान फ़ाइल में जोड़ते हैं। इसके अलावा, ध्यान रखें कि डोमेन के लिए DNS रिज़ॉल्यूशन /etc/host फ़ाइल में जोड़ा गया है, जो होस्ट, nslookup या खुदाई कमांड के माध्यम से काम नहीं करता है।

# getent ahosts mail.linux-console.net
# ping linux-console.net
# ping mail.linux-console.net

चरण 2: डेबियन पर पोस्टफिक्स मेल सर्वर स्थापित करें

7। मेल सर्वर को ठीक से काम करने के लिए आवश्यक सॉफ्टवेयर का सबसे महत्वपूर्ण टुकड़ा MTA एजेंट है। MTA एक सर्वर-क्लाइंट आर्किटेक्चर में बनाया गया सॉफ्टवेयर है, जो मेल सर्वरों के बीच मेल ट्रांसफर के लिए जिम्मेदार है।

इस गाइड में हम मेल ट्रांसफर एजेंट के रूप में पोस्टफिक्स का उपयोग करेंगे। आधिकारिक रिपॉजिटरी से डेबियन में पोस्टफिक्स स्थापित करने के लिए निम्नलिखित कमांड निष्पादित करें।

# apt-get install postfix

8। पोस्टफ़िक्स की स्थापना प्रक्रिया के दौरान आपसे कई प्रश्न पूछे जाएंगे। पहले संकेत पर, पोस्टफ़िक्स कॉन्फ़िगरेशन के लिए सामान्य प्रकार के रूप में इंटरनेट साइट विकल्प चुनें और जारी रखने के लिए [दर्ज करें] कुंजी दबाएँ और फिर सिस्टम मेल नाम के रूप में अपना डोमेन नाम जोड़ें निम्नलिखित स्क्रीनशॉट में सचित्र है।

चरण 3: डेबियन पर पोस्टफिक्स मेल सर्वर को कॉन्फ़िगर करें

9। अगला, बैकअप पोस्टफ़िक्स मुख्य कॉन्फ़िगरेशन फ़ाइल और निम्न आदेशों का उपयोग करके अपने डोमेन के लिए पोस्टफ़िक्स को कॉन्फ़िगर करें।

# cp /etc/postfix/main.cf{,.backup}
# nano /etc/postfix/main.cf

अब दिखाए गए अनुसार main.cf फ़ाइल में पोस्टफ़िक्स कॉन्फ़िगरेशन कॉन्फ़िगर करें।

# See /usr/share/postfix/main.cf.dist for a commented, more complete version

smtpd_banner = $myhostname ESMTP
biff = no
# appending .domain is the MUA's job.
append_dot_mydomain = no
readme_directory = no

# See http://www.postfix.org/COMPATIBILITY_README.html -- default to 2 on
# fresh installs.
compatibility_level = 2

# TLS parameters
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

# See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
# information on enabling SSL in the smtp client.

smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
myhostname = mail.debian.lan

mydomain = debian.lan

alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases

#myorigin = /etc/mailname
myorigin = $mydomain

mydestination = $myhostname, $mydomain, localhost.$mydomain, localhost
relayhost = 
mynetworks = 127.0.0.0/8, 192.168.1.0/24
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
#inet_protocols = all
inet_protocols = ipv4

home_mailbox = Maildir/

# SMTP-Auth settings
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $myhostname
smtpd_recipient_restrictions = permit_mynetworks,permit_auth_destination,permit_sasl_authenticated,reject

अपने स्वयं के कॉन्फ़िगरेशन से मेल खाने के लिए myhostname , mydomain और mynetworks चर बदलें।

आप नीचे दिए गए स्क्रीनशॉट में दिखाए अनुसार पोस्टफ़िक्स मुख्य कॉन्फ़िगरेशन फ़ाइल को डंप करने और अंतिम त्रुटियों की जांच करने के लिए पोस्टकॉन-एन कमांड चला सकते हैं।

# postconf -n

10। सभी कॉन्फ़िगरेशन लागू होने के बाद, पोस्टफ़िक्स मास्टर सेवा पोर्ट पर 25 पोर्ट पर बाध्यकारी हो रही है या नहीं, यह देखने के लिए कि परिवर्तन चल रहा है या नहीं, यह देखने के लिए पोस्टफ़िक्स डेमॉन को पुनरारंभ करें और सत्यापित करें कि सेवा चालू है। आदेश।

# systemctl restart postfix
# systemctl status postfix
# netstat -tlpn

चरण 3: डेबियन पर टेस्ट पोस्टफिक्स मेल सर्वर

11। यदि पोस्टफ़िक्स मेल स्थानांतरण को संभाल सकता है, तो परीक्षण करने के लिए, पहले निम्न आदेश चलाकर mailutils पैकेज स्थापित करें।

# apt-get install mailutils

12। अगला, मेल कमांड लाइन उपयोगिता का उपयोग करते हुए, रूट खाते को एक मेल भेजें और जांचें कि मेल कतार की जांच करने और रूट की सामग्री को सूचीबद्ध करने के लिए नीचे दिए गए आदेश को जारी करके मेल सफलतापूर्वक प्रसारित किया गया था या नहीं घर Maildir निर्देशिका।

# echo "mail body"| mail -s "test mail" root
# mailq
# mail
# ls Maildir/
# ls Maildir/new/
# cat Maildir/new/[TAB]

13। आप निम्न कमांड जारी करके मेल लॉग फ़ाइल की सामग्री का निरीक्षण करके पोस्टफ़िक्स सेवा द्वारा मेल को किस तरीके से नियंत्रित कर सकते हैं, यह भी सत्यापित कर सकते हैं।

# tailf /var/log/mail.log

चरण 4: डेबियन पर Dovecot IMAP स्थापित और कॉन्फ़िगर करें

14। वह मेल डिलीवरी एजेंट जिसका उपयोग हम इस गाइड में किसी स्थानीय प्राप्तकर्ता के मेलबॉक्स में ई-मेल संदेश देने के लिए कर रहे हैं Dovecot IMAP है। IMAP एक प्रोटोकॉल है जो 143 और 993 ( SSL ) पोर्ट पर चलता है, जो जिम्मेदार रीडिंग, डिलीट या है कई ईमेल क्लाइंट में मेलिंग चलती है।

IMAP प्रोटोकॉल यह सुनिश्चित करने के लिए भी सिंक्रनाइज़ेशन का उपयोग करता है कि प्रत्येक संदेश की एक प्रति सर्वर पर सहेजी जाती है और उपयोगकर्ताओं को सर्वर पर कई निर्देशिकाएं बनाने और ई-मेल को सॉर्ट करने के लिए इस निर्देशिका में मेल को स्थानांतरित करने की अनुमति देता है।

यह POP3 प्रोटोकॉल के मामले में नहीं है। POP3 प्रोटोकॉल ने उपयोगकर्ताओं को आपके मेल को सॉर्ट करने के लिए सर्वर पर कई निर्देशिकाएं बनाने की अनुमति नहीं दी है। मेल को प्रबंधित करने के लिए आपके पास केवल इनबॉक्स फ़ोल्डर है।

डेबियन पर Dovecot कोर सर्वर और Dovecot IMAP पैकेज स्थापित करने के लिए निम्नलिखित कमांड निष्पादित करें।

# apt install dovecot-core dovecot-imapd

15। आपके सिस्टम में Dovecot स्थापित होने के बाद, संपादन के लिए नीचे दिए गए dovecot फ़ाइलों को खोलें और निम्नलिखित परिवर्तन करें। सबसे पहले, /etc/dovecot/dovecot.conf फ़ाइल खोलें, खोज करें और निम्न पंक्ति को अनइंस्टॉल करें:

listen = *, ::

16। अगला, संपादन के लिए /etc/dovecot/conf.d/10-auth.conf खोलें और नीचे दिए गए अंश में देखने के लिए नीचे की पंक्तियों को देखें और बदलें।

disable_plaintext_auth = no
auth_mechanisms = plain login

17। खोलें /etc/dovecot/conf.d/10-mail.conf फ़ाइल और निम्न पंक्ति को जोड़ने के लिए Maildir स्थान का उपयोग करें ईमेल को संग्रहीत करने के लिए Mbox प्रारूप।

mail_location = maildir:~/Maildir

18। संपादित करने की अंतिम फ़ाइल /etc/dovecot/conf.d/10-master.conf है। यहाँ पोस्टफ़िक्स smtp-Cort ब्लॉक को खोजें और निम्नलिखित परिवर्तन करें:

# Postfix smtp-auth
unix_listener /var/spool/postfix/private/auth {
  mode = 0666
  user = postfix
  group = postfix
 }

19। आपके द्वारा उपरोक्त सभी परिवर्तन किए जाने के बाद, पुनरारंभ करें Dovecot डेमन परिवर्तन को प्रतिबिंबित करने के लिए, इसकी स्थिति की जांच करें और सत्यापित करें कि क्या Dovecot पोर्ट पर बाध्यकारी है 143 , नीचे दिए गए आदेश जारी करके।

# systemctl restart dovecot.service 
# systemctl status dovecot.service 
# netstat -tlpn

20। अगर सिस्टम में एक नया उपयोगकर्ता खाता जोड़कर मेल सर्वर ठीक से चल रहा है और टेस्ट टेलनेट या netcat का उपयोग करने के लिए कनेक्ट करने के लिए कमांड एसएमटीपी सर्वर और नए जोड़े गए उपयोगकर्ता को एक नया मेल भेजते हैं, जैसा कि नीचे दिए गए अंशों में चित्रित किया गया है।

# adduser matie
# nc localhost 25
# ehlo localhost
mail from: root
rcpt to: matie
data
subject: test
Mail body
.
quit

<दमदार

# ls /home/test_mail/Maildir/new/

22। इसके अलावा, आप IMAP प्रोटोकॉल के माध्यम से कमांड लाइन से उपयोगकर्ता के मेलबॉक्स से कनेक्ट कर सकते हैं, जैसा कि नीचे दिए गए अंश में दिखाया गया है। नया मेल उपयोगकर्ता के इनबॉक्स में सूचीबद्ध होना चाहिए।

# nc localhost 143
x1 LOGIN matie user_password
x2 LIST "" "*"
x3 SELECT Inbox
x4 LOGOUT

चरण 5: डेबियन में वेबमेल स्थापित और कॉन्फ़िगर करें

23। उपयोगकर्ता रेनलूप वेबमेल क्लाइंट के माध्यम से अपने ईमेल का प्रबंधन करेंगे। Rainloop मेल उपयोगकर्ता एजेंट स्थापित करने से पहले, पहले Apache HTTP सर्वर स्थापित करें और निम्नलिखित कमांड जारी करके, Rainloop द्वारा आवश्यक PHP मॉड्यूल स्थापित करें।

# apt install apache2 php7.0 libapache2-mod-php7.0 php7.0-curl php7.0-xml

24। अपाचे वेब सर्वर स्थापित होने के बाद, निर्देशिका पथ को /var/www/html/ निर्देशिका में बदलें, index.html फ़ाइल निकालें और Rainloop Webmail को स्थापित करने के लिए निम्न आदेश जारी करें।

# cd /var/www/html/
# rm index.html 
# curl -sL https://repository.rainloop.net/installer.php | php

25। रेनलूप वेबमेल क्लाइंट सिस्टम में स्थापित होने के बाद, अपने डोमेन आईपी पते पर नेविगेट करें और निम्न डिफ़ॉल्ट क्रेडेंशियल्स के साथ रेनलूप व्यवस्थापक वेब इंटरफ़ेस में प्रवेश करें:

http://192.168.0.102/?admin
User: admin
Password: 12345

26। डोमेन मेनू पर नेविगेट करें, डोमेन जोड़ें बटन पर हिट करें और नीचे स्क्रीनशॉट में दिखाए अनुसार अपने डोमेन नाम सेटिंग्स जोड़ें।

27। जब आप अपनी डोमेन सेटिंग्स जोड़ना समाप्त कर लेते हैं, तो Ranloop व्यवस्थापक इंटरफ़ेस से लॉग आउट करें और ई-मेल खाते के साथ वेबमेल क्लाइंट में लॉग इन करने के लिए ब्राउज़र को अपने आईपी पते पर इंगित करें।

जब आप रेनोपॉप वेबमेल में सफलतापूर्वक लॉग इन कर लेते हैं, तो आपको कमांड लाइन से पहले भेजे गए ईमेल को अपने इनबॉक्स फ़ोल्डर में देखना चाहिए।

http://192.168.0.102
User: [email 
Pass: the matie password

27। उपयोगकर्ता होम डायरेक्टरी बनाने के लिए -m झंडे के साथ एक नया उपयोगकर्ता मुद्दा useradd कमांड जोड़ना। लेकिन, पहले सुनिश्चित करें कि आप निम्नलिखित कमांड के साथ प्रत्येक उपयोगकर्ता के लिए Maildir पथ चर को कॉन्फ़िगर करें।

# echo 'export MAIL=$HOME/Maildir' >> /etc/profile
# useradd -m user3
# passwd user3

28। यदि आप सिस्टम से किसी विशिष्ट स्थानीय मेल खाते के लिए सभी रूट के ईमेल को पुनर्निर्देशित करना चाहते हैं, तो नीचे दिए गए आदेश चलाएँ। सभी मेल को रीडायरेक्ट या रूट किए गए रूट पर आपके मेल उपयोगकर्ता को भेज दिया जाएगा जैसा कि नीचे दी गई छवि में दिखाया गया है।

# echo "root: test_mail" >> /etc/aliases
# newaliases

बस इतना ही! आपने स्थानीय उपयोगकर्ताओं को ई-मेल के माध्यम से संचार करने के लिए अपने परिसर में एक मेल सर्वर को सफलतापूर्वक स्थापित और कॉन्फ़िगर किया है। हालांकि, इस प्रकार का मेल कॉन्फ़िगरेशन किसी भी तरह से सुरक्षित नहीं है और इसे आपके पूर्ण नियंत्रण में केवल सिस्टम और नेटवर्क में छोटे सेटअप के लिए तैनात किया जाना उचित है।