ค้นหาเว็บไซต์

ติดตั้ง 'iRedMail' (เซิร์ฟเวอร์เมลที่โดดเด่นเต็มรูปแบบ) ด้วยโดเมนเสมือน, เว็บเมล, SpamAssassin & ClamAV ใน Linux


หลังจากบริการ HTTP และ Shadow DNS เมล (SMTP, POP, IMAP และโปรโตคอลเมลเข้ารหัสที่เกี่ยวข้องทั้งหมด) เป็นหนึ่งในบริการที่มีการใช้มากที่สุดในอินเทอร์เน็ต และยังเป็นหนึ่งในบริการที่สมเหตุสมผลที่สุดเนื่องจากสแปมและเซิร์ฟเวอร์เมลแบบเปิดรีเลย์

บทช่วยสอนนี้จะแนะนำคุณตลอดการติดตั้งเมลเซิร์ฟเวอร์แบบเต็มด้วยซอฟต์แวร์ MTA, MDA และ MUA ภายในไม่กี่นาทีบน RHEL, CentOS, Scientific Linux และ Debian, Ubuntu, Linux Mint พร้อม Postfix, โดเมนเสมือนและผู้ใช้ด้วย MySQL, Dovecot – รองรับ POP3/POP3S, IMAP/IMAPS, Roundcube – เว็บเมล รวมถึงการสแกนสแปมเมลและไวรัสด้วย SpamAssassin และ ClamAV ทั้งหมดนี้ติดตั้งโดยใช้แพ็คเกจซอฟต์แวร์เดียวที่เรียกว่า 'iRedMail'

iRedMail คืออะไร

iRedMail เป็นโซลูชันเมลเซิร์ฟเวอร์ที่มีคุณสมบัติครบถ้วนแบบโอเพ่นซอร์ส ซึ่งสามารถจัดสรรเวลาได้มากสำหรับผู้ดูแลระบบสำหรับการกำหนดค่าที่ซับซ้อน รองรับการแจกจ่าย Linux หลักทั้งหมด และมาพร้อมกับแพ็คเกจ Linux ต่อไปนี้

  1. Postfix: บริการ SMTP – MTA เริ่มต้น
  2. Dovecot: POP3/POP3S, IMAP/IMAPS, บริการ Managesieve – MDA เริ่มต้น
  3. อาปาเช่: เว็บเซิร์ฟเวอร์
  4. MySQL/PostgreSQL: จัดเก็บข้อมูลแอปพลิเคชันและ/หรือบัญชีอีเมล
  5. OpenLDAP: การจัดเก็บบัญชีเมล
  6. นโยบาย: เซิร์ฟเวอร์นโยบาย Postfix
  7. Amavisd: อินเทอร์เฟซระหว่าง Postfix และ SpamAssassin, ClamAV ใช้สำหรับการสแกนสแปมและไวรัส
  8. Roundcube: เว็บเมล – MUA เริ่มต้น
  9. Awstats: ตัววิเคราะห์บันทึก Apache และ Postfix
  10. Fail2ban: สแกนไฟล์บันทึก (เช่น /var/log/maillog) และแบน IP ที่แสดงความพยายามของระบบที่เป็นอันตราย

ความต้องการ

  1. การติดตั้งขั้นต่ำ CentOS 6.5 – คู่มือการติดตั้ง CentOS 6.5
  2. ระเบียน DNS MX ที่ถูกต้องซึ่งชี้ไปยังเซิร์ฟเวอร์อีเมลของคุณที่รับผิดชอบชื่อโดเมนของคุณ

นอกจากนี้ บทช่วยสอนนี้ออกแบบมาเพื่อวัตถุประสงค์ในการทดสอบและการเรียนรู้เท่านั้น และไม่ได้ใช้บันทึก MX ที่ถูกต้องหรือแผงโดเมน DNS ที่ถูกต้อง การกำหนดค่าทั้งหมดทำขึ้นภายในเครื่องโดยใช้ผู้รับเสมือนกับ MySQL (สามารถรับหรือส่งอีเมลระหว่างผู้ใช้โดเมนในเครื่องเท่านั้น – ชื่อโดเมนท้องถิ่นที่ได้มาจากไฟล์โฮสต์) แต่โปรดทราบว่าแม้ว่าระบบของเราไม่สามารถรับอีเมลจากโดเมนอินเทอร์เน็ตได้ แต่จริงๆ แล้วสามารถส่งต่ออีเมลไปยังเซิร์ฟเวอร์เมลโดเมนเหล่านั้นผ่าน Postfix MTA แม้ว่าคุณจะอาศัยอยู่ในพื้นที่ที่อยู่ IP ส่วนตัว โดยไม่มีบันทึก MX ที่ถูกต้องและใช้โดเมนสมมติ ดังนั้น โปรดใส่ใจกับสิ่งที่คุณกำลังทำให้มาก

ขั้นตอนที่ 1: การกำหนดค่าเริ่มต้นและที่อยู่ IP แบบคงที่

1. หลังจากรีบูตครั้งแรกเข้าสู่ระบบด้วยบัญชี root ของคุณ และตรวจสอบให้แน่ใจว่าระบบของคุณทันสมัย และติดตั้งแพ็คเกจที่มีประโยชน์ที่จำเป็นสำหรับการใช้งานในภายหลัง

บน RHEL/CentOS/Scientific Linux
yum update && yum upgrade
yum install nano wget bzip2
บน Debian/Ubuntu/Linux Mint
apt-get update && apt-get upgrade
apt-get install nano wget bzip2

2. เนื่องจากกล่องนี้ทำหน้าที่เหมือน เมลเซิร์ฟเวอร์ จึงจำเป็นต้องกำหนดค่า IP แบบคงที่บนอินเทอร์เฟซเครือข่าย หากต้องการเพิ่ม IP แบบคงที่ ให้เปิดและแก้ไขไฟล์การกำหนดค่า NIC ของคุณซึ่งอยู่บนเส้นทาง /etc/sysconfig/network-scripts/ และเพิ่มค่าต่อไปนี้

บน RHEL/CentOS/Scientific Linux
nano /etc/sysconfig/network-scripts/ifcfg-eth0

ใช้ไฟล์นี้เป็นเทมเพลตและแทนที่ด้วยค่าที่คุณกำหนดเอง

DEVICE="eth0"
BOOTPROTO="static"
HWADDR="00:0C:29:01:99:E8"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="7345dd1d-f280-4b9b-a760-50208c3ef558"
NAME="eth0"
IPADDR=192.168.1.40
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=192.168.1.1
DNS2=8.8.8.8

หลังจากที่คุณแก้ไขไฟล์ NIC ของคุณเสร็จแล้ว ให้เปิดไฟล์เครือข่ายจากตำแหน่งเดียวกันกับด้านบน และเพิ่มชื่อโฮสต์ที่ไม่ผ่านการรับรองของเซิร์ฟเวอร์ของคุณในคำสั่ง HOSTNAME

nano /etc/sysconfig/network-scripts/network

บน Debian/Ubuntu/Linux Mint
nano /etc/network/interfaces

แทนที่ค่าต่อไปนี้ด้วยการตั้งค่าของคุณ

auto eth0
iface eth0 inet static
  address 192.168.1.40
  netmask 255.255.255.0
  gateway 192.168.1.1
  dns-nameservers 192.168.1.1
  dns-search 8.8.8.8

เมื่อคุณจัดการไฟล์เครือข่ายเสร็จแล้ว ให้เพิ่มชื่อโฮสต์ของคุณในไฟล์ /etc/hostname

nano /etc/hostnames

3. จากนั้นเปิดไฟล์ /etc/resolv.conf และต่อท้ายระบบเซิร์ฟเวอร์ DNS IP ของคุณตามภาพหน้าจอด้านล่าง

nano /etc/resolv.conf

เพิ่มเนื้อหาต่อไปนี้ด้วยเนมเซิร์ฟเวอร์ที่คุณชื่นชอบ

search mydomain.lan
nameserver 8.8.8.8
nameserver 8.8.8.8

4. หลังจากที่เขียนการกำหนดค่าทั้งหมดข้างต้นลงในไฟล์ที่เกี่ยวข้องแล้ว ให้รีสตาร์ทบริการเครือข่ายของคุณเพื่อใช้การกำหนดค่าใหม่ และตรวจสอบโดยใช้คำสั่ง ping และ ifconfig

service network restart	[On RedHat based systems]

service networking restart	[On Debian based systems]

ifconfig

5. ขณะนี้เครือข่ายแบบคงที่ของคุณทำงานได้อย่างสมบูรณ์แล้ว ให้แก้ไขไฟล์ /etc/hosts และเพิ่มชื่อโฮสต์ที่ไม่ผ่านการรับรองและ FQDN ดังตัวอย่างด้านล่าง

nano /etc/hosts
127.0.0.1   centos.mydomain.lan centos localhost localhost.localdomain
192.168.1.40 centos.mydomain.lan centos

หากต้องการตรวจสอบปัญหาการกำหนดค่าชื่อโฮสต์ของคุณ ให้รันคำสั่งชื่อโฮสต์และชื่อโฮสต์ –f

hostname
hostname -f

6. แพ็คเกจที่มีประโยชน์อีกอย่างคือ bash-completion (ลำดับคำสั่งเติมอัตโนมัติโดยใช้ปุ่ม [Tab]) ซึ่งจัดทำโดยที่เก็บ EPEL ภายใต้ RedHat ระบบพื้นฐานแล้วอัปเดตแหล่งที่มาของคุณ

บน RHEL/CentOS/Scientific Linux
rpm –Uvh http://fedora.mirrors.romtelecom.ro/pub/epel/6/i386/epel-release-6-8.noarch.rpm
yum repolist && yum upgrade

หลังจากที่แหล่งที่มาของคุณได้รับการอัปเดตแล้วให้ติดตั้งยูทิลิตี bash-completion (ตอบ ใช่ ในทุกคำถาม)

yum install bash-completion

บน Debian/Ubuntu/Linux Mint

แพ็คเกจ bash-completion ภายใต้ระบบที่ใช้ Debian สามารถติดตั้งได้อย่างง่ายดายโดยใช้คำสั่งต่อไปนี้

apt-get install bash-completion

7. ขั้นตอนสุดท้ายคือการเพิ่มผู้ใช้ระบบที่มีสิทธิ์ใช้งานรูท ขั้นแรกให้เพิ่มผู้ใช้และตั้งค่ารหัสผ่าน

adduser your_user
passwd your_user

หลังจากที่เพิ่มผู้ใช้ของคุณแล้ว ให้เปิดไฟล์ /etc/sudoers และยกเลิกการใส่เครื่องหมายกลุ่ม %wheel จากนั้นเพิ่มผู้ใช้ที่คุณสร้างขึ้นใหม่ไปยังกลุ่มล้อ

nano /etc/sudoers

ค้นหาและยกเลิกการใส่เครื่องหมายกลุ่มกลุ่มล้อเพื่อให้มีลักษณะเช่นนี้

%wheel                ALL=(ALL)            ALL

ปิดไฟล์และเพิ่มผู้ใช้ของคุณในกลุ่มล้อโดยออกคำสั่งต่อไปนี้

usermod -aG wheel your_user

8. ก่อนที่เราจะเริ่มดาวน์โหลดและติดตั้งซอฟต์แวร์ iRedMail ให้รีบูตระบบของคุณ จากนั้นเข้าสู่ระบบด้วยผู้ใช้ที่สร้างขึ้นใหม่ และตรวจสอบให้แน่ใจว่าทุกอย่างทำงานได้อย่างสมบูรณ์

ขั้นตอนที่ 2: ติดตั้ง iRedMail

9. เพื่อดาวน์โหลดแพ็คเกจเก็บถาวร iRedMail คุณต้องไปที่ส่วนหน้าดาวน์โหลดอย่างเป็นทางการ หรือคุณสามารถใช้คำสั่ง wget เพื่อดาวน์โหลดเวอร์ชันล่าสุด ( 0.8.7 ในขณะที่เขียนบทความนี้)

wget https://bitbucket.org/zhb/iredmail/downloads/iRedMail-0.8.7.tar.bz2

10. หลังจากดาวน์โหลดไฟล์เก็บถาวร iRedMail เสร็จสิ้น ให้แตกไฟล์โดยใช้คำสั่งต่อไปนี้

tar xvjf iRedMail-0.8.7.tar.bz2

11. จากนั้นป้อนเส้นทางไดเร็กทอรี iRedMail ที่แตกออกมาใหม่ ทำเครื่องหมายสคริปต์ iRedMail.sh ด้วยสิทธิ์ที่ปฏิบัติการได้ จากนั้นจึงเรียกใช้

cd iRedMail-0.8.7
chmod +x iRedMail.sh
sudo ./iRedMail.sh

12. หลังจากตรวจสอบระบบเบื้องต้นแล้ว โปรแกรมจะเริ่มเพิ่มพื้นที่เก็บข้อมูลที่จำเป็น จากนั้นคำแนะนำแรกจะถามคุณว่าคุณต้องการติดตั้งต่อหรือยกเลิก เลือก ใช่ เพื่อดำเนินการต่อ

13. iRedMail ใช้รูปแบบ Maildir เพื่อจัดเก็บอีเมลบนเส้นทางของระบบ /var/vmail โดยจะสร้างไดเร็กทอรีแยกกันสำหรับทุกโดเมนที่คุณต่อท้าย ไปยังเซิร์ฟเวอร์ MTA ของคุณ หากคุณพอใจกับเส้นทางนี้ ให้กด ถัดไป เพื่อดำเนินการต่อด้วยการกำหนดค่าเซิร์ฟเวอร์ หรือระบุตำแหน่งที่คุณต้องการ จากนั้น ถัดไป

14. ในขั้นตอนถัดไป ให้เลือกฐานข้อมูลที่คุณต้องการเพื่อจัดเก็บชื่อโดเมนเมลและผู้รับที่จะเชื่อมต่อกับ Postfix บทช่วยสอนนี้มุ่งเน้นไปที่ฐานข้อมูล MySQL ดังนั้นให้เลือก MySQL โดยใช้แถบ [Space] จากนั้นดำเนินการต่อด้วย Next และระบุรหัสผ่านที่รัดกุมสำหรับบัญชีรูท MySQL

15. ในขั้นตอนถัดไปให้เพิ่มชื่อโดเมนเสมือนชื่อแรกของคุณ หากคุณเป็นเจ้าของชื่อโดเมนที่จดทะเบียนเพิ่มที่นี่ (เพิ่มเฉพาะชื่อโดเมน ไม่ใช่ระบบ FQDN)

16. ตามค่าเริ่มต้น iRedAdmin จะสร้างผู้ใช้ระดับผู้ดูแลระบบที่มีอำนาจเต็มเหนือเซิร์ฟเวอร์ของคุณ ซึ่งสามารถเข้าถึงได้ผ่านแผง iRedAdmin หรือผ่านโปรโตคอล Dovecot (อินเทอร์เฟซเว็บเมล Roundcube เริ่มต้นหรือซอฟต์แวร์ IMAP/POP MUA อื่น ๆ เช่น SquirrelMail, Rainloop , Microsoft Outlook, Mozilla Thunderbird, Evolution, Mutt, Elm ฯลฯ )

นอกจากนี้ ระบบยังใช้บัญชีผู้ดูแลระบบ postmaster นี้เพื่อรายงานเหตุการณ์ที่เกี่ยวข้องกับฟังก์ชันเมลหรือความล้มเหลวของระบบอื่นๆ หรือข้อมูลที่เป็นประโยชน์ โดยปกติแล้ว logwatch จะส่งสถิติมาที่นี่ ดังนั้นให้เลือกรหัสผ่านที่รัดกุมและดำเนินการต่อด้วย ถัดไป

17. ในขั้นตอนถัดไป ให้เลือกส่วนประกอบเมลเซิร์ฟเวอร์อื่นๆ ของคุณ เช่น แผงการดูแลระบบอย่างเป็นทางการของ iRedAdmin เป็น Postfix, คีย์โดเมน DKIM – (เพิ่มลายเซ็นให้กับส่วนหัวของข้อความเพื่อประเมินความน่าเชื่อถือของข้อความสำหรับการจัดส่งขั้นสุดท้ายหรือการส่งต่อเพิ่มเติม), Roundcube อินเทอร์เฟซเว็บเมลเริ่มต้น (หากคุณวางแผนที่จะใช้ Mail Delivery Agent อื่นให้ข้าม Roundcube), PhpMyadmin (หากคุณพอใจกับบรรทัดคำสั่ง MySQL คุณควรข้ามการติดตั้ง PhpMyAdmin ), Awstats (สถิติบันทึกและตัววิเคราะห์ที่มีประโยชน์), Fail2ban (ปกป้องเซิร์ฟเวอร์ของคุณจาก การโจมตีด้วยกำลังอันรุนแรง)

18. สำหรับคำถามชุดถัดไป คุณควรตอบ ใช่ ทั้งนี้ขึ้นอยู่กับส่วนประกอบเสริมที่คุณติดตั้งไว้ ให้ความสนใจเป็นพิเศษกับไฟล์ iRedMail.tips ที่อยู่ในไดเรกทอรีที่แยกออกมาของ $HOME เนื่องจากมีข้อมูลเมลเซิร์ฟเวอร์ที่ละเอียดอ่อน เช่น ชื่อผู้ใช้และรหัสผ่านสำหรับแอปพลิเคชันเซิร์ฟเวอร์ ไฟล์การกำหนดค่าเซิร์ฟเวอร์ URL เริ่มต้น และ ข้อมูลสำคัญอื่นๆ

19. หลังจากการติดตั้งเสร็จสิ้น รีบูต ระบบของคุณและตรวจสอบไฟล์ iRedmail.tips เพื่อดูการตั้งค่าเริ่มต้นของเซิร์ฟเวอร์ของคุณ – คุณควรย้ายไฟล์นี้ไปที่ที่ปลอดภัย เส้นทางของระบบที่มีสิทธิ์ 600 รายการ

20. เข้าถึงเว็บแอปพลิเคชันเริ่มต้นบน URL ต่อไปนี้

  1. เว็บเมล Roundcube – https://domain_name หรือ server_IP/mail/
  2. แผง IRedAdmin – https://domain_name หรือ server_IP/iredadmin/
  3. PhpMyadmin – https://domain_name หรือ server_IP /phpmyadmin/
  4. Awstats – https://domain_name หรือ server_IP/awstats/awstats.pl?config=web (หรือ ?config=smtp)
  5. นโยบายปลั๊กอินป้องกันสแปม – https://domain_name หรือ server_IP/cluebringer/

ขั้นตอนที่ 3: การกำหนดค่าเว็บเมลเริ่มต้น

21. แผงการดูแลระบบ iRedAdmin นำเสนออินเทอร์เฟซเว็บเมลพื้นฐานที่คุณสามารถเพิ่มโดเมนและบัญชีเสมือนสำหรับเซิร์ฟเวอร์เมลของคุณที่ Postfix สามารถจัดการผ่านแบ็กเอนด์ MySQL หากต้องการเข้าสู่ระบบแผง iRedAdmin ให้ชี้เบราว์เซอร์ของคุณไปที่ URL https://domain_name/iredadmin/ หรือ https://server_IP/iredadmin/ และใช้ข้อมูลรับรองเริ่มต้นต่อไปนี้

  1. ชื่อผู้ใช้: postmaster@your_domain_name.tld
  2. รหัสผ่าน: รหัสผ่านของ postmaster ตั้งไว้ที่ #16

22. หากต้องการเพิ่มผู้ใช้ ให้ไปที่ เพิ่ม -> ผู้ใช้ จากนั้นระบุที่อยู่อีเมลและรหัสผ่านที่คุณต้องการ คุณยังสามารถตั้งค่าจำนวนพื้นที่ที่กล่องจดหมายของผู้ใช้ของคุณสามารถจัดการได้ด้วยโควต้า และคุณยังสามารถเลื่อนระดับผู้ใช้ที่มีอำนาจในการจัดการผ่านแผง iRedAdmin โดย ทำเครื่องหมายผู้ใช้เป็นผู้ดูแลระบบส่วนกลาง

23. การอ่านอีเมลของผู้ใช้นั้นมาจากเว็บอินเตอร์เฟสของ Roundcube หากต้องการเข้าถึงให้ไปที่ https://domain_name/mail หรือ https://server_IP/mail/ URL และระบุข้อมูลรับรองบัญชีอีเมลของคุณในรูปแบบ [ มีการป้องกันอีเมล]

เมื่อเข้าถึงผู้ดูแลไปรษณีย์ของบัญชีผู้ดูแลระบบเริ่มต้น คุณจะพบอีเมลเริ่มต้นสองฉบับ หนึ่งในนั้นรวมข้อมูลที่ละเอียดอ่อนของเซิร์ฟเวอร์ด้วย จากที่นี่ คุณสามารถอ่านอีเมล เขียน และส่งอีเมลไปยังผู้ใช้โดเมนอื่นได้แล้ว

24. ในการเข้าถึงเซิร์ฟเวอร์ นโยบายป้องกันสแปมนโยบาย ให้ไปที่ https://domain_name/cluebringer หรือ https://server_IP/ cluebringer/ และระบุข้อมูลรับรองต่อไปนี้

  1. ชื่อผู้ใช้: [ป้องกันอีเมล]
  2. รหัสผ่าน: รหัสผ่านของ postmaster

25. หากต้องการดูสถิติเมลเซิร์ฟเวอร์ของคุณ ให้ไปที่ https://mydomain.lan/awstats/awstats.pl/?config=smtp หรือ https:// mydomain.lan/awstats/awstats.pl และใช้ข้อมูลรับรองต่อไปนี้

  1. ชื่อผู้ใช้: [ป้องกันอีเมล]
  2. รหัสผ่าน: รหัสผ่านของ postmaster

26. หากคุณต้องการตรวจสอบการเชื่อมต่อที่เปิดอยู่ของเซิร์ฟเวอร์และสถานะ Listening Daemon ด้วยซ็อกเก็ตที่เกี่ยวข้อง ให้ใช้คำสั่งต่อไปนี้

netstat -tulpn   ## numerical view
netstat -tulp    ## semantic view

27. หากต้องการแก้ไขปัญหาอื่นๆ เกี่ยวกับธุรกรรมเมลหรือดูเซิร์ฟเวอร์ของคุณทำงานอยู่ คุณสามารถใช้คำสั่งต่อไปนี้

tailf /var/log/maillog   ## visualize mail logs in real time
mailq    		   ##  inspect mail queue
telnet    		   ## test your server protocols and security form a different location
nmap                     ## scan your server opened connections from different locations

28. ตอนนี้ คุณได้ปรับใช้สภาพแวดล้อมเมลแบบเต็มแล้ว สิ่งเดียวที่ขาดหายไป อย่างน้อยในหัวข้อนี้ก็คือชื่อโดเมนที่ถูกต้องซึ่งมีบันทึก MX DNS เพื่อรับเมล จากโดเมนอินเทอร์เน็ตอื่น ๆ แต่เซิร์ฟเวอร์ SMTP ในพื้นที่สามารถและจะส่งต่ออีเมลบนโดเมนอินเทอร์เน็ตที่ถูกต้องอื่น ๆ ดังนั้นควรให้ความสนใจเป็นพิเศษกับใครที่คุณส่งอีเมล เนื่องจากคุณอาจประสบปัญหาที่ผิดกฎหมายกับ ISP ของคุณ

จากภาพหน้าจอด้านล่าง คุณจะเห็นว่าฉันได้ส่งอีเมลจากโดเมนที่ไม่ถูกต้องในพื้นที่ของฉันไปยังบัญชี google.com ของฉัน และบัญชี Google ของฉันได้รับอีเมลเรียบร้อยแล้ว

แตกต่างจากบริการเครือข่ายอื่น ๆ ที่คุณติดตั้งและลืมมันมาเป็นเวลานาน การจัดการเมลเซิร์ฟเวอร์นั้นเป็นงานหนักอย่างต่อเนื่องเนื่องจากปัญหาที่เกี่ยวข้องกับบริการเมล เช่น สแปม รีเลย์แบบเปิด และการตีกลับข้อความ

ลิงค์อ้างอิง

หน้าแรกของ iRedMail