Install Zimbra on CentOS 7 x64
**************************************************************************
คู่มือนี้จัดทำโดย นายเกษม ธิยาเวช เมือ 8 ธันวาคม 2016 (แก้ไขจาก 16 มกราคม 2016)
การติดตั้งระบบ Mail Server ในองค์กร ด้วยโปรแกรม แบบ Open Source
Zimbra Collaboration Open Source Edition รุ่น 8.7.1 GA (สร้างในปี 2016)
ติดตั้งบน ระบบปฏิบัติการ Linux CentOS 7 แบบ 64 บิต
**************************************************************************
1.ไปจด โดเมนเนม ที่ www.name.com
สมมุติว่าเป็น asemmail.com ในราคา $10.99/ปี
2.ไปสมัครใช้บริการ clound ที่ www.digitalocean.com
เลือกสร้าง droplet ในราคา $10/เดือน 1GB RAM +30GB SSD 2TB DATA tranfer/mo
โดยเลือกเป็น CentOS 7 x64 Location เลือก Singapore
Host กำหนดเป็น mail.asemmail.com
หลังจากสร้างเสร็จแล้วมันจะส่ง password ของ SSH ไปให้เราในเมล์
สมมุติว่าได้ IP มาเป็น 128.199.95.43
3.นำ IP ที่ได้ไปใส่ใน asemmail.com
โดยเข้าไปกำหนดใน DNS Record
A asemmail.com 128.199.95.43 300
A mail.asemmail.com 128.199.95.43 300
A pop.asemmail.com 128.199.95.43 300
A imap.asemmail.com 128.199.95.43 300
A smtp.asemmail.com 128.199.95.43 300
A ftp.asemmail.com 128.199.95.43 300
A mx1.asemmail.com 128.199.95.43 300
A mx2.asemmail.com 128.199.95.43 300
MX asemmail.com mx1.asemmail.com 300 10
MX asemmail.com mx2.asemmail.com 300 15
-----------------------------------------------
4. ให้รอจนกว่า DNS Records ที่เราใส่ไป ได้ ลงทะเบียนกับ internic เรียบร้อยแล้ว
โดยเข้าไปตรวจสอบได้ที่ CMD ใน วินโดว์
C:>\nslookup
>set type=mx
>asemmail.com
จะต้องมีบรรทัดแบบนี้ปรากฏขึ้นมา
asemmail.com MX preference = 10, mail exchanger = mx1.asemmail.com
asemmail.com MX preference = 15, mail exchanger = mx2.asemmail.com
------------------------------------------
5. เริ่มการ คอนฟิค และติดตั้ง Zimbra mail server บน CentOS 7 x64
เปิดโปรแกรม Putty แล้วใส่ IP 128.199.95.43
login as:root
pass = ก๊อบปี้จากที่ digitalocean ส่งไปให้ในเมล์ เอามา past ลงตรง เคอร์เซอร์กะพริบ
หลังจากนี้ CentOS จะบังคับให้เปลี่ยน pass ใหม่ ก็เอา pass เก่าแปะลงไปอีกที
แล้วตั้ง pass ใหม่ สองครั้ง ให้ตรงกัน จะได้ prompt ของ root มา
#
อันดับแรก อัพเดทและ ติดตั้ง โปรแกรมที่จำเป็นในการใช้งาน
# yum -y update
# yum -y install nano sudo unzip perl sysstat nc wget sudo libstdc++.i686 libaio perl-core
แก้ไข Host ก่อน ให้เหมือนด้านล่าง
# nano /etc/hosts
127.0.0.1 localhost.localdomain localhost
128.199.95.43 mail.asemmail.com mail
กด CTRL+O เพื่อ save ตามด้วย CTRL+X ออกโปรแกรม
เปลี่ยน Hostname
# nano /etc/hostname
------------------------------
6. ดรวจดู resolve
# nano /etc/resolve.conf
nameserver 8.8.8.8
nameserver 8.8.4.4
****** หมายเหตุ หากมีปัญหาในเรื่อง IP หรือ Network ให้ลงไปดูข้อ 13. ท่ายบทความ ************
-----------------------------------------
7. # nano /etc/selinux/config
SELINUX=enforcing
เปลี่ยนเป็น
SELINUX=disabled
------------------------------------------------------------------------------------------------------------
8. เนืองจาก เซอร์ฟเวอร์มีแรม 1 GB ไม่เพียงพอต่อการ เปิด Zimbra mail server
ต้องทำ swap เพิ่ม ในที่นี่เลือกเพิ่ม swap 2 GB ( Ram + Swap > 3GB )
ให้เลือก ข้อ 2GB แล้วทำไปตามขั้นตอน
**** ถ้าแรมมีน้อยกว่า 2.5 GB ให้ทำ swap ก่อน ดังนี้ ***********************************
8.1. First, create an empty file which will serve as a swap file by issuing the following command:
# dd if=/dev/zero of=/swap bs=1024 count=524288 <<---- 512MB
# dd if=/dev/zero of=/swap bs=1024 count=1048576 <<---- 1GB
# dd if=/dev/zero of=/swap bs=1024 count=1572864 <<----- 1.5GB
# dd if=/dev/zero of=/swap bs=1024 count=2097152 <<----- 2GB
# dd if=/dev/zero of=/swap bs=1024 count=3145728 <<----- 3GB
# dd if=/dev/zero of=/swap bs=1024 count=4194304 <<----- 4GB
# dd if=/dev/zero of=/swap bs=1024 count=6291456 <<----- 6GB
# dd if=/dev/zero of=/swap bs=1024 count=8388608 <<----- 8GB
8.2. Set up a Linux swap area with:
# mkswap /swap
8.3. It’s wise to set the permissions as follows:
# chmod 0600 /swap
8.4. The last thing – add the new swap file to /etc/fstab:
# nano /etc/fstab
/swap swap swap defaults,noatime 0 0
This way it will be loaded automatically on boot.
8.5. To enable the new swap space immediately, issue:
# swapon -a
**************************************************************
9. ZIMBRA ใช้งานกับ VPS ที่ interface ที่เป็น DHCP ได้
ตั้งค่า Hostaname ใน hosts กับ network ให้ถุกต้องเป็นพอ
***************************************************************
10. Copy คำสั่งไปวางใน putty ได้เลย ไม่ต้องพิมพ์ให้เมือยมือ
# nano /etc/selinux/config
# chkconfig postfix off <---- ยกเลิกการทำงาน
# service postfix stop <---- หยุดการทำงานที่ port 25 เพือให้ zimbra เอาไปใช้แทน
# chkconfig sendmail off <---- ยกเลิกการทำงาน
# service sendmail stop <---- หยุดการทำงานที่ port 25 เพือให้ zimbra เอาไปใช้แทน
# service httpd stop
# chkconfig httpd off
# service iptables stop
# chkconfig iptables off <<--------- ปิด firewall
*** การจัดการ ไฟร์วอลล์ สำหรับ CentOS 7 *****
Check the Status of Firewalld
And finally, to check the status of firewalld, run the following command as root:
# systemctl status firewalld
Disable Firewalld
To disable firewalld, run the following command as root:
# systemctl disable firewalld
Stop Firewalld
To stop firewalld, run the following command as root:
# systemctl stop firewalld
คำสั่งเปิด Port ใน firewall
# firewall-cmd --permanent --add-port=53/tcp
--------------------------------------------------------
(postfix แพคเก็จจะรวมกับ sysstat ถอน postfix จะไปถอน sysstat ด้วย ลบ postfix หรือ ลบ sysstat ก้จะลบทั้งหมด)
เสร็จแล้วก็สั่ง
# reboot
------------------------------------------------------------------------------------------------------------
เวปไซท์ ที่จะไปดาวน์โหลด Zimbra มาติดตั้ง
https://www.zimbra.com/downloads/zimbra-collaboration-open-source/
---------------------------------------------------------------------------------------------------------------------------
11. ใช้รุ่นล่าสุด มาติดตั้ง สำหรับ CentOS 7 64Bit
**** 8.7.1 GA Release ****
# wget https://files.zimbra.com/downloads/8.7.1_GA/zcs-8.7.1_GA_1670.RHEL7_64.20161025045328.tgz
# tar -xzvf zcs-8.7.1_GA_1670.RHEL7_64.20161025045328.tgz
# cd zcs-8.7.1_GA_1670.RHEL7_64.20161025045328
# ./install.sh --platform-override
**** 8.7.9 GA Release ****
# wget https://files.zimbra.com/downloads/8.7.9_GA/zcs-8.7.9_GA_1794.RHEL7_64.20170505054622.tgz
# tar -xzvf zcs-8.7.9_GA_1794.RHEL7_64.20170505054622.tgz
# cd zcs-8.7.9_GA_1794.RHEL7_64.20170505054622
# ./install.sh --platform-override
ตอนให้เลือก ติดตั้ง ตอน no ที่ memcached กับ proxy ถ้าเลือก เซอร์ฟจะอืดมาก ๆๆ จนค้างไปเลย
พอติดตั้งจนผ่านการตรวจสอบ domain และ MX แล้ว จะมี menu มา รอให้ ตั้งค่า
ให้กด 7 Zimbra-store
กด 4 Admin Password แล้วเลือก ตั้ง admin password สมมุติว่าตั้งเป็น 123456
เสร็จกด r ย้อนกลับมาเมนู แรก
กด 1 Common Configuration
กด 1 Hostname เปลี่ยน hostname จาก mail.asemmail.com เป็น asemmail.com
กด 7 TimeZone ใส่เลข 42 หมายถึง Asia/Bangkok
กด r กลับไปเมนูแรก
มันจะให้ apply โดยกด a แล้วกด Enter ไปมันจะให้เซฟ คอนฟิคเป็นไฟล์
โปรแกรมจะมาถาม ให้ตอบ Yes ไป
จากนั้น มันจะทำการติดตั้งโดย อัตโนมัติ ใช้เวลานาน พอสมควร
ขั้นตอนสุดท้าย มันจะให้ส่ง notify ไปยัง zimbra ก็ตอบ Yes ไป
โปรแกรมจะ ทำการ start service จนครบ แล้วบอกให้เรา
press any key เพื่อจบการติดตั้ง
# reboot
-----------------------------------------------------------------------------------------------------------
12. การเริ่มใช้งาน Zimbra Collaboration Open Source Edition
12.1 เข้าไปจัดการในฐานะ ผู้ดูแลระบบ
เปิด browser แล้วพิมพ์ http://asemmail.com:7071
user = admin
pass = ที่กำหนดไว้ตอนติดตั้งคือ 123456
12.2 เข้าไปจัดการในฐานะ ผู้ใช้งาน
เปิด browser แล้วพิมพ์ https://asemmail.com
----------------------------------------------------------------------------------------------------------
13. ปัญหาจากการติดตั้ง CentOS ในเครื่องเซอร์ฟเวอร์โดยตรง โดยไม่ได้เช่า cloud service
2.centos ติดมาครั้งแรกและลืมตั้งค่า Network ตอนติดตั้ง
จะไม่ activate eth0 มาให้ต้องตั้่งค่าเองด้วยมือหมด
และไม่มีโปรแกรม nano มาให้ต้องใช้ vi ไปก่อน
หาดู mac address ของ Lan card ก่อน ทำการ config
# ifconfig
สมมุติ เจอแบบนี้
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
ether 04:01:9f:c2:2b:01
หมายเลข mac address คือ 04:01:9f:c2:2b:01 ให้จดไว้
13.1 การใช้ vi เบื้องต้น
ต้องการพิมพ์ กด i
ทำเสร็จแล้วกด esc
ต้องการ save กด shift + :
พิมพ์ :w กด enter
ต้องการออก พิมพ์ :q! กด enter
** Network Configuration ***
- # vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
DHCPCLASS=
HWADDR=04:01:9f:c2:2b:01
IPADDR=128.199.95.43
NETMASK=255.255.255.0
ONBOOT=yes
13.2 อันนี้เป็น ระบบ network ที่ digitalocean ทำการติดตั้งให้แบบ อัตโนมัติ เอาไว้ดูเปรียบเทียบ
DEVICE='eth0'
TYPE=Ethernet
BOOTPROTO=none
ONBOOT='yes'
HWADDR=04:01:9f:c2:2b:01
IPADDR=128.199.95.43
NETMASK=255.255.192.0
GATEWAY=128.199.64.1
NM_CONTROLLED='yes'
IPADDR2=10.15.0.8
PREFIX2=16
DNS1=8.8.8.8
DNS2=8.8.4.4
----------------------------------------------------------------------
14. ต้องการถอนการติดตั้ง
./install.sh -u
rm -rf /opt/zimbra
rm -rf /var/log/*zimbra*
rm -rf /tmp/*zimbra*
rm -rf /tmp/hsperfdata*
rm -rf /tmp/install.*
rm -rf /tmp/*swatch*
rm -rf /tmp/log*
---------------------------------------------------------------------
คำสั่งเปิด Port ใน firewall
firewall-cmd --permanent --add-port=53/tcp
--------------------------------------------------------------------
ในกรณีที่ต้องใช้ DNS ภายนอก กับ Private IP เช่นจาก AIS Fiber ให้เปลี่ยน Port จาก 7071 ไปเป็น Port ใน THDDNS.NET
ที่ใช้ Forward เข้ามาที่เซอร์ฟเวอร์เช่น 5441
change default zimbra port 7071.
Postby gettyless » Sat May 29, 2010 12:21 pm
Try this:
zimbra@mail:~$ zmprov gs unixmen.local | grep Port
zimbraAdminPort: 7071
zimbraImapBindPort: 143
zimbraImapProxyBindPort: 7143
zimbraImapSSLBindPort: 993
zimbraImapSSLProxyBindPort: 7993
zimbraLmtpBindPort: 7025
zimbraMailPort: 81
zimbraMailProxyPort: 8080
zimbraMailSSLPort: 444
zimbraMailSSLProxyPort: 8443
zimbraMemcachedBindPort: 11211
zimbraNotifyBindPort: 7035
zimbraNotifySSLBindPort: 7036
zimbraPop3BindPort: 110
zimbraPop3ProxyBindPort: 7110
zimbraPop3SSLBindPort: 995
zimbraPop3SSLProxyBindPort: 7995
zimbraRemoteManagementPort: 22
zimbraSmtpPort: 25
คำสั่งเปลี่ยน port
zimbra@mail:~$ zmprov ms unixmen.local zimbraAdminPort 55555
Requires Login