ผลต่างระหว่างรุ่นของ "คู่มือการพัฒนา EAI Mail Server บน CentOS 8"

จาก Wiki_EAI
ไปยังการนำทาง ไปยังการค้นหา
บรรทัดที่ 20: บรรทัดที่ 20:
=== [[ตั้งค่า hostname]] ===
=== [[ตั้งค่า hostname]] ===


=== [[2. ตั้งค่า firewall ของ EAI Email Server บน CentOS 8]] ===
=== [[ตั้งค่า firewall]] ===
1. ตรวจสอบสถานะ firewalld service บน mail server
*ต้องมีสถานะ active (running)
 
'''# systemctl status firewalld'''
 
''ตัวอย่าง''
 
'''Active: <span style='color:red'>active (running)</span> since Mon 2019-11-18 14:12:03 +07; 1h 13min ago'''
 
2. ตรวจสอบ firewall zone และ network interface ที่เปิดอยู่
'''# firewall-cmd --get-active-zones'''
''ตัวอย่าง''
'''public
'''interfaces: ens32
 
3. ตรวจสอบรายการ services ของ firewall ที่เปิดอยู่ที่ zone public
'''# firewall-cmd --zone=public --list-services'''
 
''ตัวอย่าง''
''' cockpit dhcpv6-client ssh '''
 
4. เปิด firewall services ที่ zone public ของ mail server (สามารถเปิดเท่าต้องการได้)
'''# firewall-cmd --permanent --zone=public --add-service=http
'''# firewall-cmd --permanent --zone=public --add-service=https
'''# firewall-cmd --permanent --zone=public --add-service=mysql
'''# firewall-cmd --permanent --zone=public --add-service=smtp
'''# firewall-cmd --permanent --zone=public --add-service=smtps
'''# firewall-cmd --permanent --zone=public --add-service=imap
'''# firewall-cmd --permanent --zone=public --add-service=imaps
'''# firewall-cmd --reload
 
5. ตรวจสอบรายการ services ของ firewall ที่เปิดอยู่ที่ zone public อีกครั้ง จะพบ services เปิดเพิ่มขึ้นมา
 
''*ref: configure firewall services for mail server (https://spalinux.com/2015/06/centos-7-basic-configure-firewall-by-firewall-cmd)''
'''# firewall-cmd --zone=public --list-services'''
 
''ตัวอย่าง''
''' cockpit dhcpv6-client <span style='color:red'>http https imap imaps mysql smtp smtps</span> ssh '''
 
6. ในตัวอย่างนี้เราแนะนำให้ปิดการทำงานของ SELinux เพื่อความสะดวกในการตั้งค่า (ไม่แนะนำให้ทำกับเครื่อง production)
*เปลี่ยน SELinux=enforcing เป็น SELinux=disabled
'''# vi /etc/selinux/config'''
 
''ตัวอย่าง''
 
'''# This file controls the state of SELinux on the system.
'''# SELINUX= can take one of these three values:
'''#      enforcing - SELinux security policy is enforced.
'''#      permissive - SELinux prints warnings instead of enforcing.
'''#      disabled - No SELinux policy is loaded.
'''SELINUX=<span style='color:red'>disabled</span>
'''# SELINUXTYPE= can take one of these two values:
'''#      targeted - Targeted processes are protected,
'''#      mls - Multi Level Security protection.
'''SELINUXTYPE=targeted
7. ตรวจสอบสถานะ SELinux อีกครั้ง
* สั่ง restart server และทำการตรวจสอบ
'''# reboot'''
'''# sestatus'''
 
''ตัวอย่าง''
 
''' disabled '''
 
=== [[3. สร้าง SSL ของ EAI Email Server บน CentOS 8]] ===
=== [[3. สร้าง SSL ของ EAI Email Server บน CentOS 8]] ===
=== [[4. ติดตั้ง mariadb, postfix, dovecot ของ EAI Email Server บน CentOS 8]] ===
=== [[4. ติดตั้ง mariadb, postfix, dovecot ของ EAI Email Server บน CentOS 8]] ===

รุ่นแก้ไขเมื่อ 20:41, 14 มีนาคม 2564

EAI Email Server

คู่มือนี้ได้จัดทำขึ้นมาเพื่อทดสอบและเป็นแนวทางการติดตั้ง Email Server ในรูปแบบรองรับภาษาไทย (EAI) โดยใช้ Opensource Software ในการทดสอบเพื่อหาวิธีการที่สามารถใช้งานได้ และสามารถนำไปพัฒนาต่อยอดได้ ซึ่งค่า configure ที่ผู้จัดทำใช้นั้น ไม่ได้ตายตัว สามารถลองทดสอบในรูปแบบอื่นๆได้

Software ที่นำมาทดสอบ:

  1. CentOS8 x86_64 [ISO] [CentOS for VirtualBox]
  2. VirtualBox [Win] [Mac]
  3. Filezilla [Win] [Mac]
  4. putty [Win]
  5. Postfix 3.x [ดาวน์โหลด]
  6. Dovecot 2.x [ดาวน์โหลด]
  7. MariaDB 10.x [ดาวน์โหลด]
  8. Roundcube 1.4.x [ดาวน์โหลด] [tar]

หมายเหตุ

คู่มือนี้ไม่ได้อธิบายถึงการติดตั้ง Centos 8
Postfix ต้องเป็น Version 3.x.x ขึ้นไป จะรองรับ EAI
หากจะนำไปใช้งานจริงจะต้องจดทะเบียนโดเมน และมี dns server ด้วย

การติดตั้ง EAI Email Server

1. ตรวจสอบสถานะ firewalld service บน mail server

  • ต้องมีสถานะ active (running)
# systemctl status firewalld

ตัวอย่าง

Active: active (running) since Mon 2019-11-18 14:12:03 +07; 1h 13min ago

2. ตรวจสอบ firewall zone และ network interface ที่เปิดอยู่

# firewall-cmd --get-active-zones

ตัวอย่าง

public
interfaces: ens32

3. ตรวจสอบรายการ services ของ firewall ที่เปิดอยู่ที่ zone public

# firewall-cmd --zone=public --list-services

ตัวอย่าง

 cockpit dhcpv6-client ssh 

4. เปิด firewall services ที่ zone public ของ mail server (สามารถเปิดเท่าต้องการได้)

# firewall-cmd --permanent --zone=public --add-service=http
# firewall-cmd --permanent --zone=public --add-service=https
# firewall-cmd --permanent --zone=public --add-service=mysql
# firewall-cmd --permanent --zone=public --add-service=smtp
# firewall-cmd --permanent --zone=public --add-service=smtps
# firewall-cmd --permanent --zone=public --add-service=imap
# firewall-cmd --permanent --zone=public --add-service=imaps
# firewall-cmd --reload

5. ตรวจสอบรายการ services ของ firewall ที่เปิดอยู่ที่ zone public อีกครั้ง จะพบ services เปิดเพิ่มขึ้นมา

*ref: configure firewall services for mail server (https://spalinux.com/2015/06/centos-7-basic-configure-firewall-by-firewall-cmd)

# firewall-cmd --zone=public --list-services

ตัวอย่าง

 cockpit dhcpv6-client http https imap imaps mysql smtp smtps ssh  

6. ในตัวอย่างนี้เราแนะนำให้ปิดการทำงานของ SELinux เพื่อความสะดวกในการตั้งค่า (ไม่แนะนำให้ทำกับเครื่อง production)

  • เปลี่ยน SELinux=enforcing เป็น SELinux=disabled
# vi /etc/selinux/config

ตัวอย่าง

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#       enforcing - SELinux security policy is enforced.
#       permissive - SELinux prints warnings instead of enforcing.
#       disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
#       targeted - Targeted processes are protected,
#       mls - Multi Level Security protection.
SELINUXTYPE=targeted

7. ตรวจสอบสถานะ SELinux อีกครั้ง

  • สั่ง restart server และทำการตรวจสอบ
# reboot
# sestatus

ตัวอย่าง

 disabled