ช่วงนี้บ้านเมืองเราดูวุ่นวายร้อนแรงเหลือเกิน ผมเลยขอลดดีกรีเรื่องเกี่ยวกับ Zimbra มาเป็นเรื่องเบาๆ สบายๆ กันหน่อยครับ
สำหรับท่านที่ใช้ Zimbra 8 ถ้าใช้ Theme มาตรฐาน ถ้ารู้สึกว่าสีสรรไม่มี มันจืดๆ ไปนิด มาลองปรับสีของ Email Folder กันครับ
ขั้นตอนการเปลี่ยนสี Email Folder
1) ไปที่ Email Folder ที่เราต้องการเปลี่ยนสี คลิ๊กเมาส์ปุ่มซ้ายที่ Folder หรือกดทีเครื่องหมายสามเหลี่ยมหลังชื่อ Folder จะมีเมนูถูกเปิดขึ้นมา
2) เลือก Edit Properties หน้าต่าง Folder Property จะถูกแสดงขึ้นมา ตามรูป
3) กดที่เครื่องหมายสามเหลี่ยม ที่บรรทัด Color เพื่อเปิดเมนูเลือกสี
4) เลือกสีที่ต้องการ
5) กดปุ่ม OK เพื่อทำการบันทึก
เท่านี้ Email Folder ของคุณจะเปลี่ยนสีไปตามตัวอย่างนี้ครับ
หมายเหตุ ผมพบว่า Folder มาตรฐานบาง Folder และ Externel Account จะไม่สามารถเปลี่ยนสีได้ครับ
แบ่งปันประสบการณ์ การติดตั้ง ใช้งาน แก้ปัญหา เทคนิคต่างๆ ของ Zimbra open source
สำหรับผู้ที่มีคำถาม สามารถถาม ได้ที่ ThaiZimbra Facebook ได้เลยครับ
วันพุธที่ 18 ธันวาคม พ.ศ. 2556
วันจันทร์ที่ 16 ธันวาคม พ.ศ. 2556
เรื่องที่ Zimbra Admin ทุกคนควรจะ(ต้อง)อ่าน
ช่วงหลังๆ ผมพบว่า มีท่านผู้อ่าน สอบถามปัญหาเกี่ยวกับปัญหาที่ Zimbra โดน hack กันอยู่เรื่อยๆ บางคนโดน hack Zimbra account บางคนหนักๆ โดน hack root ของเครื่อง Linux เลย บางคนไม่โดน hack แต่ setup ไม่ดี สุดท้ายทำให้ Zimbra Server ของเรา กลาย เครื่องส่ง spam ไปก็เห็นกันบ่อย
ที่จริง ผมเคยเขียนบทความที่เกี่ยวข้องกับเรื่องการป้องกันไปแล้วอยู่หลายตอน แต่เนื่องจากการกลับไปดูบทความเก่าๆบน facebook อาจะไม่ค่อยสะดวก ไม่ทราบว่ามีบทความอยู่ หรือบางที่เราก็ไม่รู้ว่าควรจะอ่านเรื่องไหน
ผมจึงอยากจะขอรวบรวมเรื่องที่สำคัญ ที่ Zimbra Admin ควรจะทราบที่เกี่ยวข้องกับการ hack ระบบของ zimbra และช่วยแฟน Thai Zimbra ที่ได้กด like fan page นี้ที่หลัง ได้ทราบถึงสิ่งที่ควรทำ ในการป้องกัน Zimbra Server ของเรา
ตามนี้ครับ
1) เกี่ยวกับเรื่องที่ว่าทำไม hacker ชอบ hack ระบบ Mail server เค้า hack แล้ว ได้อะไร
http://thaizimbra.blogspot.com/2013/03/hack-email-account-part-i.html
http://thaizimbra.blogspot.com/2013/04/hacking-email-account-part-ii.html
2) วิธีป้องกันไม่ให้ hack root เข้ามาทาง ssh
http://thaizimbra.blogspot.com/2013/11/linux-hack-ssh.html
โดยปกติ hacker จะเดาชื่อ user และ password โดย user ที่จะโดนเป็นอันดับแรก คือ root เพราะไม่ต้องเดาชื่อ user มีทุกเครื่อง และ root เป็น user บน Linux ที่ใหญ่ที่สุด ทำได้ทุกอย่าง root โดน hack ก็เป็นอันจบกันครับ เหมือนตั้งเครื่องให้คนอื่นเค้าใช้งานดีๆนี่เอง
และอย่างชล่าใจว่า password root เราตั้งยากแล้ว จะไม่โดน hack นะครับ hacker เค้าไม่ได้นั่งเดา password และลองที่ละตัวนะครับ เค้ามีโปรแกรมทีสร้าง list ของ password โดยเอาอักขระมาผสมกัน ส่วนการ login เค้าก็ใชเโปรแกรมเช่นกันครับ ทำได้วินาทีละหลายๆครั้ง บางคนใช้คำว่าโดน ยิง ซึ่งดูเหมือนจะเหมาะกว่า รอดยากครับ
หมายเหตุ การ setup Linux ให้มีความปลอดภัย (Linux Hardening) มีกระบวนการอยู่มากมายครับ เรื่องนี้เป็นแค่เรื่องเดียวเท่านั้น
3) วิธีการกำหนดให้ user ของ Zimbra ต้องตั้ง password ให้เดาได้ยากๆ
http://thaizimbra.blogspot.com/2013/03/zimbra-tip-and-technique-8-password.html
http://thaizimbra.blogspot.com/2013/03/zimbra-tips-and-technique-9-password.html
เรื่องนี้สำคัญมากครับ admin หลายคนรู้ พยายามจะให้ user ใช้ แต่ user ไม่ยอม อยากได้ password แบบตั้งง่ายๆ จะได้จำง่ายๆ
อันนี้คงขึ้นกับฝีมือ หรือฝีปากของ Admin (หรือหัวหน้าแผนก IT) ในการโน้มน้าว user ซึ่งส่วนใหญ่คนที่มีปัญหามักจะเป็นระดับผู้บริหารหรือคนเก่าคนแก่ขององค์กรขนาดกลางหรือเล็ก ส่วนบริษัทขนาดใหญ่ ไม่ค่อยเจอครับ
ยิ่งถ้าเป็น บริษัทเอาหุ้นเข้าตลาดหลักทรัพย์ จะไม่เจอปัญหานี้ครับ เพราะเค้าต้องมีผู้ตรวจสอบเกี่ยวกับระบบคอมพิวเตอร์ คอยตรวจทุกปี ซึ่งเค้าจะตรวจเรื่องการตั้ง password ของระบบคอมพิวเตอร์ในบริษัทด้วย ถ้าไม่ผ่าน อาจเป็นสาเหตุหนึ่งให้ถูกถอดรายชื่อจากการจดทะเบียนในตลาดหลักทรัพย์ได้ เพราะถือว่า ระบบคอมพิวเตอร์ไม่ปลอดภัย ฟันธง !!!
คำแนะนำของผมก็คือ คุยตกลงกันให้เรียบร้อยก่อนจะขึ้นระบบ Zimbra อธิบายถึงข้อเสียว่าจะเกิดอะไรขึ้นบ้าง (อ่านได้จากในข้อ 1) และเริ่มกำหนดรูปแบบของ password ให้เดายากๆ ตั้งแต่ต้นเลย ถ้าให้ user ใช้งานไปก่อน แล้วค่อยมากกำหนดเรื่องนี้ที่หลัง มีแนวโน้มที่จะเจอ user ไม่เข้าใจ หรืององแง เป็นไปได้สูงมากครับ
4) วิธีกำหนดให้ Zimbra จัดการกับ account ที่ถูก login ผิดๆ ติดๆกัน หลายๆครั้ง ในช่วงเวลาไม่กี่วินาที
http://thaizimbra.blogspot.com/2013/04/zimbra-tip-and-technique-10-failed.html
สำหรับเรื่องนี้ ต่อเนื่องจากข้อ 3) ครับ ถึงแม้ เราจะตั้ง password ให้เดาได้ยาก แต่เนื่องจาก hacker เค้า login โดยใช้โปรแกรม ซึ่งวิธีนี้ เดาไปเรื่อยๆ ก็มีสิทธิที่จะเดา password ได้ถูกเหมือนกันครับ วิธีป้องกันคือ ต้องล็อก account ซะ ถ้ามีการ login ผิดติดๆกัน ถี่ๆ ผิดวิสัยของคนปกติ ซึ่งอาจจะทำเป็นการชั่วคราว หรือวิธีที่ล็อกแล้วต้องรอให้ admin มาปลดล้อกให้ก็ได้ครับ
ผมอยากจะบอกว่า
ถ้าอ่านไม่จบ และไม่สามารถนำไปใช้กับ Zimbraที่คุณดูแลอยู่ได้ ก็อย่า(แม้แต่จะคิด)ตั้ง Zimbra ให้คนอื่นใช้งานเลย
อาจฟังดูแรงไป แต่ผมก็หมายความอย่างนั้นจริงๆ ครับ เพราะถ้าคุณตั้ง Zimbra แบบไม่ป้องกันการ hack ตามหัวข้อต่อไปนี้ ผมว่ามันก็ไม่แตกต่างกับกับการตั้ง Zimbra ให้เค้ามา hack ให้เสียชื่อปล่าวๆ
และอย่าคิดว่าการมี Firewall ราคาแพงๆ อยู่แล้วจะช่วยได้ วิธีการ hack พวกนี้ เค้าเค้ามาทางช่องทางที่คุณเปิดให้คนข้างนอกเข้ามาใช้งาน จะปิดก็ทำให้ระบบใช้งานไม่ได้ ในกรณีนี้ firewall ไม่ใช่ประเด็นครับ ประเด็นอยู่ที่การ setup เครื่อง server มากกว่า
หัวข้อพวกนี้ ไม่ได้จำกัดอยู่แค่ Zimbra เท่านั้น แต่หลายเรื่องสามารถนับไปปรับใช้ กับ Mail Server อื่นทั้งที่ทำงานอยู่บน Linux หรือไม่ได้ทำงานอยู่บน Linux ด้วย แชร์หรือบอกกล่าวให้คนอื่นๆ ได้ทราบกัน จะเป็นบุญอย่างยิ่งครับ
อีกอย่าง ทำตามที่ผมบอก ไม่ได้หมายความว่าจะปลอดภัย 100% นะครับ แต่เรื่องพวกนี้ เป็นเรื่องแค่พื้นฐานที่เราต้องทำ
ยังมีอีกหลายเรื่องเกียวกับความปลอดภัย ที่ผมยังไม่ได้เขียนถึงครับ ไว้มีโอกาส จะค่อยๆเล่าไปทีละเรื่องละกัน
ขอให้ระบบ Zimbra ทีคุณดูแล ปลอดภัยจากเหล่า hacker ที่ชั่วร้ายนะครับ
ที่จริง ผมเคยเขียนบทความที่เกี่ยวข้องกับเรื่องการป้องกันไปแล้วอยู่หลายตอน แต่เนื่องจากการกลับไปดูบทความเก่าๆบน facebook อาจะไม่ค่อยสะดวก ไม่ทราบว่ามีบทความอยู่ หรือบางที่เราก็ไม่รู้ว่าควรจะอ่านเรื่องไหน
ผมจึงอยากจะขอรวบรวมเรื่องที่สำคัญ ที่ Zimbra Admin ควรจะทราบที่เกี่ยวข้องกับการ hack ระบบของ zimbra และช่วยแฟน Thai Zimbra ที่ได้กด like fan page นี้ที่หลัง ได้ทราบถึงสิ่งที่ควรทำ ในการป้องกัน Zimbra Server ของเรา
ตามนี้ครับ
1) เกี่ยวกับเรื่องที่ว่าทำไม hacker ชอบ hack ระบบ Mail server เค้า hack แล้ว ได้อะไร
http://thaizimbra.blogspot.com/2013/03/hack-email-account-part-i.html
http://thaizimbra.blogspot.com/2013/04/hacking-email-account-part-ii.html
2) วิธีป้องกันไม่ให้ hack root เข้ามาทาง ssh
http://thaizimbra.blogspot.com/2013/11/linux-hack-ssh.html
โดยปกติ hacker จะเดาชื่อ user และ password โดย user ที่จะโดนเป็นอันดับแรก คือ root เพราะไม่ต้องเดาชื่อ user มีทุกเครื่อง และ root เป็น user บน Linux ที่ใหญ่ที่สุด ทำได้ทุกอย่าง root โดน hack ก็เป็นอันจบกันครับ เหมือนตั้งเครื่องให้คนอื่นเค้าใช้งานดีๆนี่เอง
และอย่างชล่าใจว่า password root เราตั้งยากแล้ว จะไม่โดน hack นะครับ hacker เค้าไม่ได้นั่งเดา password และลองที่ละตัวนะครับ เค้ามีโปรแกรมทีสร้าง list ของ password โดยเอาอักขระมาผสมกัน ส่วนการ login เค้าก็ใชเโปรแกรมเช่นกันครับ ทำได้วินาทีละหลายๆครั้ง บางคนใช้คำว่าโดน ยิง ซึ่งดูเหมือนจะเหมาะกว่า รอดยากครับ
หมายเหตุ การ setup Linux ให้มีความปลอดภัย (Linux Hardening) มีกระบวนการอยู่มากมายครับ เรื่องนี้เป็นแค่เรื่องเดียวเท่านั้น
3) วิธีการกำหนดให้ user ของ Zimbra ต้องตั้ง password ให้เดาได้ยากๆ
http://thaizimbra.blogspot.com/2013/03/zimbra-tip-and-technique-8-password.html
http://thaizimbra.blogspot.com/2013/03/zimbra-tips-and-technique-9-password.html
เรื่องนี้สำคัญมากครับ admin หลายคนรู้ พยายามจะให้ user ใช้ แต่ user ไม่ยอม อยากได้ password แบบตั้งง่ายๆ จะได้จำง่ายๆ
อันนี้คงขึ้นกับฝีมือ หรือฝีปากของ Admin (หรือหัวหน้าแผนก IT) ในการโน้มน้าว user ซึ่งส่วนใหญ่คนที่มีปัญหามักจะเป็นระดับผู้บริหารหรือคนเก่าคนแก่ขององค์กรขนาดกลางหรือเล็ก ส่วนบริษัทขนาดใหญ่ ไม่ค่อยเจอครับ
ยิ่งถ้าเป็น บริษัทเอาหุ้นเข้าตลาดหลักทรัพย์ จะไม่เจอปัญหานี้ครับ เพราะเค้าต้องมีผู้ตรวจสอบเกี่ยวกับระบบคอมพิวเตอร์ คอยตรวจทุกปี ซึ่งเค้าจะตรวจเรื่องการตั้ง password ของระบบคอมพิวเตอร์ในบริษัทด้วย ถ้าไม่ผ่าน อาจเป็นสาเหตุหนึ่งให้ถูกถอดรายชื่อจากการจดทะเบียนในตลาดหลักทรัพย์ได้ เพราะถือว่า ระบบคอมพิวเตอร์ไม่ปลอดภัย ฟันธง !!!
คำแนะนำของผมก็คือ คุยตกลงกันให้เรียบร้อยก่อนจะขึ้นระบบ Zimbra อธิบายถึงข้อเสียว่าจะเกิดอะไรขึ้นบ้าง (อ่านได้จากในข้อ 1) และเริ่มกำหนดรูปแบบของ password ให้เดายากๆ ตั้งแต่ต้นเลย ถ้าให้ user ใช้งานไปก่อน แล้วค่อยมากกำหนดเรื่องนี้ที่หลัง มีแนวโน้มที่จะเจอ user ไม่เข้าใจ หรืององแง เป็นไปได้สูงมากครับ
4) วิธีกำหนดให้ Zimbra จัดการกับ account ที่ถูก login ผิดๆ ติดๆกัน หลายๆครั้ง ในช่วงเวลาไม่กี่วินาที
http://thaizimbra.blogspot.com/2013/04/zimbra-tip-and-technique-10-failed.html
สำหรับเรื่องนี้ ต่อเนื่องจากข้อ 3) ครับ ถึงแม้ เราจะตั้ง password ให้เดาได้ยาก แต่เนื่องจาก hacker เค้า login โดยใช้โปรแกรม ซึ่งวิธีนี้ เดาไปเรื่อยๆ ก็มีสิทธิที่จะเดา password ได้ถูกเหมือนกันครับ วิธีป้องกันคือ ต้องล็อก account ซะ ถ้ามีการ login ผิดติดๆกัน ถี่ๆ ผิดวิสัยของคนปกติ ซึ่งอาจจะทำเป็นการชั่วคราว หรือวิธีที่ล็อกแล้วต้องรอให้ admin มาปลดล้อกให้ก็ได้ครับ
ผมอยากจะบอกว่า
ถ้าอ่านไม่จบ และไม่สามารถนำไปใช้กับ Zimbraที่คุณดูแลอยู่ได้ ก็อย่า(แม้แต่จะคิด)ตั้ง Zimbra ให้คนอื่นใช้งานเลย
อาจฟังดูแรงไป แต่ผมก็หมายความอย่างนั้นจริงๆ ครับ เพราะถ้าคุณตั้ง Zimbra แบบไม่ป้องกันการ hack ตามหัวข้อต่อไปนี้ ผมว่ามันก็ไม่แตกต่างกับกับการตั้ง Zimbra ให้เค้ามา hack ให้เสียชื่อปล่าวๆ
และอย่าคิดว่าการมี Firewall ราคาแพงๆ อยู่แล้วจะช่วยได้ วิธีการ hack พวกนี้ เค้าเค้ามาทางช่องทางที่คุณเปิดให้คนข้างนอกเข้ามาใช้งาน จะปิดก็ทำให้ระบบใช้งานไม่ได้ ในกรณีนี้ firewall ไม่ใช่ประเด็นครับ ประเด็นอยู่ที่การ setup เครื่อง server มากกว่า
หัวข้อพวกนี้ ไม่ได้จำกัดอยู่แค่ Zimbra เท่านั้น แต่หลายเรื่องสามารถนับไปปรับใช้ กับ Mail Server อื่นทั้งที่ทำงานอยู่บน Linux หรือไม่ได้ทำงานอยู่บน Linux ด้วย แชร์หรือบอกกล่าวให้คนอื่นๆ ได้ทราบกัน จะเป็นบุญอย่างยิ่งครับ
อีกอย่าง ทำตามที่ผมบอก ไม่ได้หมายความว่าจะปลอดภัย 100% นะครับ แต่เรื่องพวกนี้ เป็นเรื่องแค่พื้นฐานที่เราต้องทำ
ยังมีอีกหลายเรื่องเกียวกับความปลอดภัย ที่ผมยังไม่ได้เขียนถึงครับ ไว้มีโอกาส จะค่อยๆเล่าไปทีละเรื่องละกัน
ขอให้ระบบ Zimbra ทีคุณดูแล ปลอดภัยจากเหล่า hacker ที่ชั่วร้ายนะครับ
วันเสาร์ที่ 23 พฤศจิกายน พ.ศ. 2556
การกำหนดให้ Zimbra Block (หรือไม่ Block) Email ให้กับทุก account ใน Zimbra server
ก่อนหน้านี้ ผมได้พูดถึงวิธีการ block spam mail โดยกำหนดที่ preference ของผู้ใช้ Zimbra แต่ละคนโดยดูจาก Email address หรือ Domain ต้นทางที่ส่งมา มีท่านผู้อ่านหลายท่าน ถามมาว่าเราสามารถกำหนดให้ Zimbra block หรือไม่ block mail ให้กับทุก account โดยระบุที่จุดเดียว แล้วให้มีผลกับทุก account ในระบบ แทนที่ต้องกำหนดแยกที่ละคนเหมือนในบทความครั้งที่แล้วได้หรือเปล่า
คำตอบก็คือทำได้ครับ โดยเราสามารถระบุได้สองอย่าง คือ
เปรียบเทียบกับบทความก่อนหน้านี้ ที่พูดถึง วิธี block spam mail สำหรับผู้ใช้ zimbra แต่ละคน whitelist เหมือน allow list ส่วน blacklist ก็เหมือน deny list ครับ
การ setup ต้องทำที่ Linux command line ตามขึ้นตอนดังนี้ครับ
ขั้นตอนการ setup
1) Login Linux ที่เครื่อง Zimbra โดยต้องเป็น root นะครับ
2) copy /opt/zimbra/conf/amavis.conf.in ของเดิม เก็บไว้ (สำคัญมาก) เผื่อทำอะไรผิด จะได้เอาไฟล์ที่ backup ไว้ save กลับมา
3) เพิ่มบรรทัดเข้าไปในไฟล์ /opt/zimbra/conf/amavis.conf.in ตามนี้ครับ
read_hash(\%whitelist_sender, '/etc/zimbra/whitelist')
read_hash(\%blacklist_sender, '/etc/zimbra/blacklist');
จากตัวอย่าง ผมใส่ไปสองบรรทัด บรรทัดแรกสำหรับ whitelist บรรทัดที่สองสำหรับ blacklist โดยทั้งสองบรรทัด ผมระบุให้ไปอ่าน whitelist และ blacklist ที่ /etc/zimbra/whitelist และ /etc/zimbra/blacklist ตามลำดับ
สำหรับบรรทัดที่ใส่ ผมคิดว่า ใส่ตรงไหนก็ได้ แต่ต้องไม่แทรก config ของเดิม และต้องอยู่ก่อนบรรทัดท้ายสุด ที่เขียนว่า
1; # insure a defined return value
ลองดูตัวอย่างตามรูปเลยครับ
4) สร้างที่เกี็บรายขื่อของ whitelist และ blacklist ตามที่เราระบุในข้อ 3) ตามตัวอย่างคือ /etc/zimbra/whitelist และ /etc/zimbra/blacklist และต้องกำหนด owner และ permission ให้ user zimbra อ่านได้ด้วยนะครับ
เสร็จแล้วใส่ ชื่อ domain ที่เราจะระบุเป็น whitelist และ blacklist เข้าไปใน ไฟล์นี้ บรรทัดละ 1 domain หรือ 1 address ครับ
สุดท้ายเราก็จะได้ไฟล์คล้ายๆ กับตัวอย่างนี้ครับ (อันนี้แสดงเฉพาะ blacklist)
5) Restart Zimbra ด้วยคำสั่ง "service zimbra restart"
ผลลัพท์ที่ได้
ถ้ามี email ส่งมาจาก address หรือ domain ที่อยู่ใน whitelist ระบบจะตัดสินว่า email พวกนี้ไม่เป็น spam และส่งตรงไปที่ mailbox ของคนรับเลย และไม่ลง spam folder ด้วย
แต่ถ้า email มี address ถูกส่งมาอยู่ใน blacklist ระบบจะไม่ส่ง email ไปให้ user ครับ ระบบจะตัดสินว่าเป็น spam และคัด email นั้นๆ ทิ้งทันที่ และไม่แม้แต่จะส่งไปเก็บอยู่ใน อยู่ใน spam folder ด้วยครับ
การนำไปประยุกต์ใช้
หรือในกรณีที่เรารู้แน่ๆว่า account ที่ส่งหาเรา ไม่มี spam แน่นอนเช่น เป็นคู่ค้า หรือเป็นลูกค้า แต่หลายๆ account ในระบบ zimbra ของเรา ดันมองว่า email ที่ส่งมาจาก account หรือ domain เหล่านั้นเป็น spam เราสามารถใช้วิธีนี้แก้ปัญหาได้ครับ โดยใส่ Email หรือ ชื่อ domain ของคู่ค้าของเรา เข้าไปใน whitelist
นอกจากนี้ วิธีนี้เป็นการแก้ปัญหาที่หลายคนพบว่ามีบาง account ใน domain เดียวกัน ส่ง email หากันแล้วระบบมองว่าเป็น spam เลยเอา email ที่ได้รับไปเก็บไว้ใน spam folder
เราก็จัดการแก้โดย set domain ที่อยู่ในเครื่อง zimbra ไว้ที่ whitelist เลย ระบบก็จะมองว่า เมล์ที่ถูกส่งจาก domain ที่อยู่ในเครื่องเราเองไม่เป็น spam อีกต่อไปครับ
คำตอบก็คือทำได้ครับ โดยเราสามารถระบุได้สองอย่าง คือ
- whitelist เป็นรายชื่อของ email address หรือ domain ที่เราต้องการให้ระบบมองว่า Email ที่ถูกส่งมา จาก email address หรือ domain นี้ไม่เป็น spam แน่นอน ปล่อยผ่านมาได้
- blacklist เป็นรายชื่อของ email address หรือ domain ซึ่งถ้า email ถูกส่งมาจาก address หรือ domain ชุดนี้ ระบบจะมองว่าเป็น spam ทันที และจะถูก block ไว้
เปรียบเทียบกับบทความก่อนหน้านี้ ที่พูดถึง วิธี block spam mail สำหรับผู้ใช้ zimbra แต่ละคน whitelist เหมือน allow list ส่วน blacklist ก็เหมือน deny list ครับ
การ setup ต้องทำที่ Linux command line ตามขึ้นตอนดังนี้ครับ
ขั้นตอนการ setup
1) Login Linux ที่เครื่อง Zimbra โดยต้องเป็น root นะครับ
2) copy /opt/zimbra/conf/amavis.conf.in ของเดิม เก็บไว้ (สำคัญมาก) เผื่อทำอะไรผิด จะได้เอาไฟล์ที่ backup ไว้ save กลับมา
3) เพิ่มบรรทัดเข้าไปในไฟล์ /opt/zimbra/conf/amavis.conf.in ตามนี้ครับ
read_hash(\%whitelist_sender, '/etc/zimbra/whitelist')
read_hash(\%blacklist_sender, '/etc/zimbra/blacklist');
จากตัวอย่าง ผมใส่ไปสองบรรทัด บรรทัดแรกสำหรับ whitelist บรรทัดที่สองสำหรับ blacklist โดยทั้งสองบรรทัด ผมระบุให้ไปอ่าน whitelist และ blacklist ที่ /etc/zimbra/whitelist และ /etc/zimbra/blacklist ตามลำดับ
สำหรับบรรทัดที่ใส่ ผมคิดว่า ใส่ตรงไหนก็ได้ แต่ต้องไม่แทรก config ของเดิม และต้องอยู่ก่อนบรรทัดท้ายสุด ที่เขียนว่า
1; # insure a defined return value
ลองดูตัวอย่างตามรูปเลยครับ
4) สร้างที่เกี็บรายขื่อของ whitelist และ blacklist ตามที่เราระบุในข้อ 3) ตามตัวอย่างคือ /etc/zimbra/whitelist และ /etc/zimbra/blacklist และต้องกำหนด owner และ permission ให้ user zimbra อ่านได้ด้วยนะครับ
เสร็จแล้วใส่ ชื่อ domain ที่เราจะระบุเป็น whitelist และ blacklist เข้าไปใน ไฟล์นี้ บรรทัดละ 1 domain หรือ 1 address ครับ
สุดท้ายเราก็จะได้ไฟล์คล้ายๆ กับตัวอย่างนี้ครับ (อันนี้แสดงเฉพาะ blacklist)
5) Restart Zimbra ด้วยคำสั่ง "service zimbra restart"
ผลลัพท์ที่ได้
ถ้ามี email ส่งมาจาก address หรือ domain ที่อยู่ใน whitelist ระบบจะตัดสินว่า email พวกนี้ไม่เป็น spam และส่งตรงไปที่ mailbox ของคนรับเลย และไม่ลง spam folder ด้วย
แต่ถ้า email มี address ถูกส่งมาอยู่ใน blacklist ระบบจะไม่ส่ง email ไปให้ user ครับ ระบบจะตัดสินว่าเป็น spam และคัด email นั้นๆ ทิ้งทันที่ และไม่แม้แต่จะส่งไปเก็บอยู่ใน อยู่ใน spam folder ด้วยครับ
การนำไปประยุกต์ใช้
หรือในกรณีที่เรารู้แน่ๆว่า account ที่ส่งหาเรา ไม่มี spam แน่นอนเช่น เป็นคู่ค้า หรือเป็นลูกค้า แต่หลายๆ account ในระบบ zimbra ของเรา ดันมองว่า email ที่ส่งมาจาก account หรือ domain เหล่านั้นเป็น spam เราสามารถใช้วิธีนี้แก้ปัญหาได้ครับ โดยใส่ Email หรือ ชื่อ domain ของคู่ค้าของเรา เข้าไปใน whitelist
นอกจากนี้ วิธีนี้เป็นการแก้ปัญหาที่หลายคนพบว่ามีบาง account ใน domain เดียวกัน ส่ง email หากันแล้วระบบมองว่าเป็น spam เลยเอา email ที่ได้รับไปเก็บไว้ใน spam folder
เราก็จัดการแก้โดย set domain ที่อยู่ในเครื่อง zimbra ไว้ที่ whitelist เลย ระบบก็จะมองว่า เมล์ที่ถูกส่งจาก domain ที่อยู่ในเครื่องเราเองไม่เป็น spam อีกต่อไปครับ
วันพุธที่ 6 พฤศจิกายน พ.ศ. 2556
วิธีป้องกัน Linux ไม่ให้ถูก hack ผ่าน ssh
ขอย้ำอีกทีนะครับ
สำหรับ คนที่ติดตั้ง zimbra แล้วเปิด port 22 (ssh) ให้ ssh login เข้ามาจาก internet ได้
แนะนำให้ setup sshd ไม่อนุญาติให้ root login เข้ามาที่ port 22 โดยตรง
เพื่อป้องกัน hacker (ถ้าไม่ทำ โดน hack มาหลายรายแล้ว)
วิธีการคือ edit /etc/ssh/sshd_config (Redhat, Fedora, CentOS) แล้วแก้หรือเพิ่มบรรทัด PermitRootLogin เป็น no ตามตัวอย่างข้างล่าง
เสร็จแล้ว restart sshd ด้วยคำสั่ง
หรือ reboot เครื่องนะครับถ้าทำแบบนี้แล้ว ถ้าอยากจะเป็น root ต้อง login ที่ console หรือ login ทาง ssh โดยใช้ user อื่น แล้วคำสั่ง su เอานะครับ
ข้อควรระวัง
ก่อนจะ setup เพื่อไม่ให้ root login ผ่าน ssh ควรจะสร้าง user อื่นไว้ก่อน สำหรับ login ผ่านทาง ssh เดี๋ยวจะ remote login ไม่ได้
สำหรับ คนที่ติดตั้ง zimbra แล้วเปิด port 22 (ssh) ให้ ssh login เข้ามาจาก internet ได้
แนะนำให้ setup sshd ไม่อนุญาติให้ root login เข้ามาที่ port 22 โดยตรง
เพื่อป้องกัน hacker (ถ้าไม่ทำ โดน hack มาหลายรายแล้ว)
วิธีการคือ edit /etc/ssh/sshd_config (Redhat, Fedora, CentOS) แล้วแก้หรือเพิ่มบรรทัด PermitRootLogin เป็น no ตามตัวอย่างข้างล่าง
PermitRootLogin No
เสร็จแล้ว restart sshd ด้วยคำสั่ง
service sshd restart
หรือ reboot เครื่องนะครับถ้าทำแบบนี้แล้ว ถ้าอยากจะเป็น root ต้อง login ที่ console หรือ login ทาง ssh โดยใช้ user อื่น แล้วคำสั่ง su เอานะครับ
ข้อควรระวัง
ก่อนจะ setup เพื่อไม่ให้ root login ผ่าน ssh ควรจะสร้าง user อื่นไว้ก่อน สำหรับ login ผ่านทาง ssh เดี๋ยวจะ remote login ไม่ได้
วันอังคารที่ 5 พฤศจิกายน พ.ศ. 2556
Zimbra External Account
Zimbra มีความสามารถอีกอย่างที่น่าสนใจคือ ผู้ใช้แต่ละคน สามารถกำหนดให้ Zimbra Account ของตัวเอง สามารถดึงหรือ sync email ที่อยู่บน Email server เครื่องอื่นได้ (ผมขอเรียกว่า External Email Server ละกัน) โดยใช้การติดต่อแบบ pop3 หรือ imap ซึ่งเปรียบเสมือนการทำให้ Zimbra เป็น Email Client ได้นั่นเอง
Zimbra เรียกความสามารถนี้ว่า External Account ครับ
ประโยชน์ของ External Account
ข้อดีของการใช้ External Account ก็คือ ทำให้เราสามารถอ่าน Email ของเรา ที่กระจายอยู่บน Email Server ต่างๆ จาก account ของเราบน zimbra เพียงที่เดียวครับ
การสร้าง External Account
สำหรับผู้ใช้งาน Zimbra ปกติ External Account จะถูกเปิดให้ใช้งานได้อยู่แล้วครับ วิธีการสร้าง External Account ทำได้โดยการ login ที่ web client แล้ว ทำตามขั้นตอนนี้ครับ
1) ไปที่ Prefrerences Tab
2) เลือก Accounts
3) กดที่ปุ่ม "Add External Account"
4) ใส่ข้อมูลของ External Account Settings ตามนี้ครับ
Email Address: Email address ที่จะใช้ส่ง email สำหรับ External Account
Account Name: ชื่อ External Account ที่เราอยากให้เห็นบน Zimbra
Account Type: เลือกว่า จะติดต่อ โดยใช้ pop3 หรือ imap
Username of Account: ชื่อ user ที่ใช้ในการเข้าใช้ External email server
Email Server: ชื่อ host ของ External email server ที่เราต้องการอ่าน Email
Password : password ของ account บน External Email server
Advance Account Settings : เป็นการกำหนดการเชื่อต่อเพิ่มเติม สามารถกำหนดได้ 2 อย่างครับ
- Use an Encrypt Connection (SSL) when access this server :
เป็นการกำหนดว่า ให้ใช้ pop3 หรือ imap แบบ SSL (pop3s หรือ imaps) เพื่อติดต่อกับ Server หรือไม่ ถ้าใช้ก็ติ๊กถูก
- Change (pop3/imap) port
เป็นการเปลี่ยนเบอร์ port จากมาตรฐานที่ใช้ในการเชื่อมต่อ ตาม protocol ที่กำหนด ถ้าต้องการเปลี่ยน ให้ติ๊กถูกหน้าบรรทัดนี้ และระบุเบอร์ port ด้วยครับ
ปุ่ม Test เป็นการทดสอบว่า จากข้อมูลที่กำหนดใน External Account Settings ตัว Zimbra สามารถติดต่อ กับ External email server ได้หรือเปล่า
5) ทำการบันทึก ค่าที่ตั้งไว้ โดยกดที่ปุ่ม Save ที่มุมบนซ้าย
ตอนที่เรา กดปุ่ม Save ระบบ จะทำการตรวจสอบการเชื่อมต่อ เหมือนกับที่เรากดปุ่ม Test ครับ แต่งแม้การตรวจสอบจะไม่ผ่าน แต่ Zimbra ก็จะยอมให้เราบันทึกค่าที่เราป้อนไว้ครับ แต่ External Account นี้จะไม่ทำงาน จนกว่าเราจะแก้ค่าให้ถูกต้อง และทดสอบแล้ว ผ่านครับ
ผลลัพท์ที่ได้
ถ้าทุกอย่างถูกต้อง กลับไปดูที่ Mail tab จะเห็น email folder เพิ่มขึ้นมาอีกหนึ่งอัน โดยจะมีชื่อเหมือนกับ Account Name ที่เราระบุไปตอนสร้าง External Account ครับ
ตามรูปตัวอย่างด้านล่าง จะเห็นว่ามี email folder ของ external account ชื่อ "My gmail account" ครับ
ส่วน ตัวเลขในวงเล็บ หลังชื่อ folder จะเป็นจำนวน email ที่ยังไม่ได้อ่าน ที่อยู่ใน folder ครับ เหมือนกับ email folder ทั่วๆ ไป ถ้าสังเกตุให้ดีๆ หลังสร้าง External account ค่านี้จะค่อยๆเพิ่มขึ้น ตาม จำนวน Email ใน external account ที่ zimbra ดูด หรือ sync มาให้ครับ
ข้อควรระวัง
สิ่งที่ควรทราบก็คือ เมล์ใน External Account กินเนื้อที่ของ Account ของ user นะครับ ถ้าระบบ Zimbra ของคุณมีการจำกัด quota การใช้งาน disk อาจจะทำให้ quota เต็มได้ครับ
และในขณะเดียวกัน เมล์ใน External Account ก็กินเนื้อที่บน Disk ของ Zimbra server ด้วย ซึ่งถ้ามี user สร้าง external account ไปยัง mail server พวก gmail หรือ hotmail ที่ให้เนื้อที่เก็บ disk เยอะๆ อาจจะทำให้เนื้อที่ disk บน Server เต็มเร็วกว่าปกติได้ครับ
วันเสาร์ที่ 2 พฤศจิกายน พ.ศ. 2556
วิธี Block spam mail สำหรับผู้ใช้ zimbra แต่ละคน
ผู้ใช้ Zimbra แต่ละคน สามารถระบุให้ระบบ Zimbra ไม่ให้รับ email ที่คาดว่าจะเป็น spam mail ตามที่ตัวเองต้องการได้ครับ วิธีการนี้จะดูจาก email address ของคนส่งเป็นหลัก
ขั้นตอนการ setup
ผู้ใช้ Zimbra ต้อง login web client เหมือนตอนที่เราจะใช้งาน Zimbra ผ่าน web ก่อนนะครับ เสร็จแล้ว ทำตามขั้นตอนนี้เลย
1) ไปที่ Preferences Tab
2) เลือก Mail
3) ที่ หน้าจอคอลัมน์ด้านขวา (Content Pane) ให้เลื่อนลงมาจนเจอหัวข้อ Spam Mail Options ในส่วนนี้ จะเห็นว่ามีอยู่สองส่วนแยกกัน คือ Block message from และ Allow message from
Block message from: เป็นการระบุว่า จะไม่รับ email จากใคร
Allow message from: เป็นการระบุว่า จะอนุญาตให้ รับ email จากใคร
- การระบุในช่อง Block และ Allow นอกจากจะระบุเป็น email address ได้แล้ว ยังระบุ เป็น domain ได้ด้วยครับ ซึ่งถ้าระบุเป็น domain จะเป็นการกำหนดให้ระบบดีด email ที่ถูกส่งมาจาก address ที่อยู่ใน domain ที่ระบุทิ้งครับครับ จากตัวอย่าง ผมระบุเป็น xzimbra.com ซึ่งก็คือ ผมอยากให้ zimbra ดีด email ที่ถูกส่งมาจากใครตามใน domain xzimbra.com ทิ้ง
- เราสามารถกำหนดไม่ไห้รับ email จาก domain หนึ่ง แต่เปิดให้เฉพาะบางคนได้ครับ เช่น ผมไม่อยากรับ email จากโดเมน xzimbra.com ยกเว้นถ้าถูกส่งจาก siwat@xzimbra.com เราจะระบุตามนี้ครับ
- Block message from : xzimbra.com
- Allow Message from : siwat@xzimbra.com
- การเพิ่มชื่อ email address หรือ domain ทำได้โดย ป้อนชื่อในช่อง หน้าปุ่ม Add แล้วกดปุ่ม Add
- ส่วนการลบชือ ให้ เลือกชื่อ แล้วกดปุ่ม Remove
4) และสุดท้าย อย่าลืมกดปุ่ม Save นะครับ เป็นอันเรียบร้อย
การทำงานของระบบ
หลังจากที่เรา setup เรียบร้อย ถ้ามีคนส่ง Email จาก Address หรือ Domain ที่เรากำหนดไว้ Zimbra จะรับ Email ไว้ แล้ว ลบทิ้งจากระบบเลยครับ email จะไม่ถูกส่งไปอยู่ใน Spam หรือ Trash Folder ผู้ใช้ Zimbra จะไม่รู้เลยว่ามี email ส่งมาจาก addess หรือ domain ที่ถูก block ครับ
วันพฤหัสบดีที่ 10 ตุลาคม พ.ศ. 2556
วิธีระบุความสำคัญ (Priority) ของ Email ที่ต้องการส่งใน Zimbra
บน Zimbra เราสามารถส่ง Email ไปยังผู้รับ โดยระบุความสำคัญ หรือ Priority ที่เกี่ยวข้องกับ Email ที่ส่งได้ครับ วิธีการนี้ ผู้รับ จะเห็นว่า Email ที่เราส่งไปมีความสำคัญแค่ไหนโดยไม่จำเป็นต้องอ่านข้อความใน Subject หรือ Email เลย โดย Priority ที่ระบุได้ มี 3 ระดับครับ คือ
1) High หรือสำคัญมาก แทนด้วยรูปลูกศรสีแดงชี้ขึ้น
2) Normal หรือ ระดับปกติ อันนี้เป็นค่า Default Priority
3) Low หรือสำคัญน้อย แทนด้วยรูปลูกศรสีฟ้าชึ้ลง
วิธีการระบุ Priorityใน Email ที่จะส่ง
หลักจากที่เรากดปุ่ม "New Message" เพื่อจะเขียน Email ใหม่Compose Tab จะถูกเปิดขึ้นมา
ในหน้าจอนี้ ดูที่ด้านขวาสุดของบรรทัดที่ให้เราใส่ Subject ของ Email จะเป็น drop down menu ที่ให้เลือกใส่ priority ของ email ได้ครับ
การดู priority ของ Email ที่ได้รับ
ถ้าเรากำหนดรูปแบบการแสดงผลใน Mail tab เป็นแบบ "Reading Pane On The Right" ในแต่ละ Email ที่แสดงอยู่ใน Content Pane (ช่องกลางที่แสดง Email ทีมีอยู่) ถ้า Email ที่ได้รับ มี Priority เป็น High หรือ Low ที่หน้า Subject จะมีเครื่องหมาย Priority ปรากฏอยู่ ตามรูปครับ
แต่ถ้าเรากำหนดการแสดงผล เป็นแบบ "Reading Pane At The Bottom" หรือ "Reading Pane Off" ในส่วนของ Content Pane ในคอลัมน์ ที่มีหัวข้อเป็นเครื่องหมาย ลูกศรชี้ขึ้น จะปรากฎ รูป Priority ถ้า Email ที่ได้รับ มี Priority เป็น High หรือ Low เช่นกันครับ
หมายเหตุ
1) High หรือสำคัญมาก แทนด้วยรูปลูกศรสีแดงชี้ขึ้น
2) Normal หรือ ระดับปกติ อันนี้เป็นค่า Default Priority
3) Low หรือสำคัญน้อย แทนด้วยรูปลูกศรสีฟ้าชึ้ลง
วิธีการระบุ Priorityใน Email ที่จะส่ง
หลักจากที่เรากดปุ่ม "New Message" เพื่อจะเขียน Email ใหม่Compose Tab จะถูกเปิดขึ้นมา
ในหน้าจอนี้ ดูที่ด้านขวาสุดของบรรทัดที่ให้เราใส่ Subject ของ Email จะเป็น drop down menu ที่ให้เลือกใส่ priority ของ email ได้ครับ
การดู priority ของ Email ที่ได้รับ
ถ้าเรากำหนดรูปแบบการแสดงผลใน Mail tab เป็นแบบ "Reading Pane On The Right" ในแต่ละ Email ที่แสดงอยู่ใน Content Pane (ช่องกลางที่แสดง Email ทีมีอยู่) ถ้า Email ที่ได้รับ มี Priority เป็น High หรือ Low ที่หน้า Subject จะมีเครื่องหมาย Priority ปรากฏอยู่ ตามรูปครับ
แต่ถ้าเรากำหนดการแสดงผล เป็นแบบ "Reading Pane At The Bottom" หรือ "Reading Pane Off" ในส่วนของ Content Pane ในคอลัมน์ ที่มีหัวข้อเป็นเครื่องหมาย ลูกศรชี้ขึ้น จะปรากฎ รูป Priority ถ้า Email ที่ได้รับ มี Priority เป็น High หรือ Low เช่นกันครับ
หมายเหตุ
- ถ้าคุณสงสัยว่า "Reading Pane On the Right" "Reading Pane At The Buttom" คืออะไร ลองดูใน บทความเรื่อง วิธีเปลี่ยนมุมมองใน Mail Tab ของ Zimbra 8 ครับ
- ถ้าส่ง Email ไปยังระบบอื่น ที่ดู Email Priority ได้ คนรับจะเห็น priority ที่ส่งจาก Zimbra ได้ครับ ในขณะเดียวกัน ระบบอื่นที่ระบุ Email priority ได้ ส่งมาให้ Zimbra ก็จะเห็น priority เช่นกันครับ
วันพุธที่ 25 กันยายน พ.ศ. 2556
วิธีเปลี่ยนมุมมองใน Mail Tab ของ Zimbra 8
สำหรับผู้ที่ใช้งาน Zimbra 8 เราสามารถเปลี่ยนรูปแบบการแสดงผลใน Mail Tab ได้สามแบบครับ ก่อนจะพูดถึงเรื่องนั้น ผมขออธิบายการแบ่งหน้าจอในหน้า Mail Tab สักเล็กน้อยครับ
ชอบแบบไหน เลือกปรับแต่งตามสบายเลยครับ
ในหน้า Mail Tab แบ่งหน้าจอได้เป็นสามส่วน ตามนี้ครับ
- Overview Pane เป็นส่วนที่ใช้แสดงถึง Folder ของ Email ที่มีอยู่
- Content Pane เป็นส่วนที่แสดงถึงรายการของ Email ที่อยู่ใน Folder ที่เราเลือก Overview Pane
- Reading Pane เป็นส่วนที่ใช้แสดงข้อมูล ของ Email แต่ละฉบับ ที่เราเลือกใน Content Pane
ตัวอย่าง ตามนี้ครับ
เราสามารถปรับตำแหน่ง ของ Content Pane กับ Reading Pane ได้ครับ โดยกดที่ปุ่ม View ที่อยู่ บริเวณมุมบนขวา
จากรูป จะเห็นว่ามีตัวเลือกให้เราสามแบบครับ
1. Reading Pane At The Buttom แบบนี้ Content Pane จะอยู่ด้านบน Reading Pane จะอยู่ด้านล่าง (ส่วนตัว ผมชอบแบบนี้ มากกว่า Zimbra version ก่อนๆ default ก็ใช้แบบนี้ครับ
2 . Reading Pane On the Right Content Pane จะอยู่ตรงกลาง ส่วน Reading Pane จะอยุ่ด้านขวา (แบบนี้เป็น default ที่มากับ Zimbra 8 ครับ)
3. Reading Pane Off แบบนี้ ส่วน Reading Pane จะหายไป ถ้าเราต้องการจะดูเนื้อหาของ Email เราต้อง double click ที่ Email Zimbra จะเปิด tab ใหม่ ขึ้นมาแสดงข้อมูลภายใน Email ครับ
แบบนี้มีข้อดีก็คือ ทำให้หน้าจอแสดง Content Pane เพื่อดู Email ที่มีอยู่ทั้งหมด ได้เต็มที่ และก็ต้องแลกกับความไม่สะดวกเมื่อเราต้องการดูเนื้อหาภายใน Email แต่ละฉบับ
2 . Reading Pane On the Right Content Pane จะอยู่ตรงกลาง ส่วน Reading Pane จะอยุ่ด้านขวา (แบบนี้เป็น default ที่มากับ Zimbra 8 ครับ)
3. Reading Pane Off แบบนี้ ส่วน Reading Pane จะหายไป ถ้าเราต้องการจะดูเนื้อหาของ Email เราต้อง double click ที่ Email Zimbra จะเปิด tab ใหม่ ขึ้นมาแสดงข้อมูลภายใน Email ครับ
แบบนี้มีข้อดีก็คือ ทำให้หน้าจอแสดง Content Pane เพื่อดู Email ที่มีอยู่ทั้งหมด ได้เต็มที่ และก็ต้องแลกกับความไม่สะดวกเมื่อเราต้องการดูเนื้อหาภายใน Email แต่ละฉบับ
ชอบแบบไหน เลือกปรับแต่งตามสบายเลยครับ
วันพุธที่ 18 กันยายน พ.ศ. 2556
Enable checkbox เลือก email ใน Zimbra 8
เราสามารถเปิดการใช้งาน checkbox สำหรับเลือกจัดการ email (ย้าย, ลบ ...) ทีละหลายๆ email ได้ ดังรูปตัวอย่างครับ
ปกติใน Zimbra 8 feature นี้จะถูกปิดอยู่ครับ วิธีการเปิด user สามารถทำได้เอง จาก Web Client หรือ admin เป็นคนจัดการให้ จาก Web Admin Console ครับ
วิธีการเปิดการใช้งานจาก Web Clent
หลังจากที่ user login zimbra ผ่านทาง web client แล้ว ให้ไปที่
1) Preference tab
2) ไปที่ General
3) ดูที่หัวข้อ Other
4) ติ๊กถูกที่บรรทัด Settings: Dispaly checkboxes to quickly select items in list
5) Save (อย่าลืมนะครับ)
ถ้าจะให้ใช้งานได้ทันที่ ให้ Reload Web Browser ดูตัวอย่างตามรูปเลยครับ
สำหรับ Admin ถ้าต้องการ Enable feature นี้ให้กับ user ทำได้ดังนี้ครับ
วิธิเปิดการใช้งานจาก Admin Console
หลังจากที่ login Admin Console (https://....:7071) เลือก user ที่ต้องการแก้ไข ( Manage >> Account >> เลือก Account >> Edit )
1) ไปที่ preference
2) ดูที่หัวข้อ General Options
3) ติ๊กถูกที่บรรทัด Show selection checkbox for selecting email ....
4) สุดท้าย อย่าลืมกด Save นะครับ (อยู่แถวๆ มุมบนขวาของช่องกลาง)
ถ้าต้องการแก้ใขเป็นกลุ่ม หรือทุกคน ทำได้โดยการ Edit ที COS ก็ได้ครับ หลังจากเลือก COS แล้ว ขั้นตอนการแก้ไข จะคล้ายกับรูปด้านบนครับ
ปกติใน Zimbra 8 feature นี้จะถูกปิดอยู่ครับ วิธีการเปิด user สามารถทำได้เอง จาก Web Client หรือ admin เป็นคนจัดการให้ จาก Web Admin Console ครับ
วิธีการเปิดการใช้งานจาก Web Clent
หลังจากที่ user login zimbra ผ่านทาง web client แล้ว ให้ไปที่
1) Preference tab
2) ไปที่ General
3) ดูที่หัวข้อ Other
4) ติ๊กถูกที่บรรทัด Settings: Dispaly checkboxes to quickly select items in list
5) Save (อย่าลืมนะครับ)
ถ้าจะให้ใช้งานได้ทันที่ ให้ Reload Web Browser ดูตัวอย่างตามรูปเลยครับ
สำหรับ Admin ถ้าต้องการ Enable feature นี้ให้กับ user ทำได้ดังนี้ครับ
วิธิเปิดการใช้งานจาก Admin Console
หลังจากที่ login Admin Console (https://....:7071) เลือก user ที่ต้องการแก้ไข ( Manage >> Account >> เลือก Account >> Edit )
1) ไปที่ preference
2) ดูที่หัวข้อ General Options
3) ติ๊กถูกที่บรรทัด Show selection checkbox for selecting email ....
4) สุดท้าย อย่าลืมกด Save นะครับ (อยู่แถวๆ มุมบนขวาของช่องกลาง)
ถ้าต้องการแก้ใขเป็นกลุ่ม หรือทุกคน ทำได้โดยการ Edit ที COS ก็ได้ครับ หลังจากเลือก COS แล้ว ขั้นตอนการแก้ไข จะคล้ายกับรูปด้านบนครับ
วันจันทร์ที่ 9 กันยายน พ.ศ. 2556
วิธีเปลี่ยนภาษาที่แสดงผลบน Zimbra (Zimbra Tips & Techniques # 16)
ผมเคยเจอปัญหาว่า ใช้ Chrome กับ Zimbra แล้วเห็นเมนูและข้อความต่างๆที่แสดงผลเป็นภาษาไทย แทนที่จะเป็นภาษาอังกฤษ พอจะเปลี่ยนก็หาไม่เจอ ไม่รู้ว่าอยู่ตรงไหน
ปกติ Default ของ zimbra จะแสดงผลตามที set ไว้ใน web browser แต่เราสามารถกำหนดการแสดงผลให้เป็นภาษาใดภาษาหนึ่งโดยเฉพาะโดยไม่เปลี่ยนตาม browser ได้ครับ วิธีนี้สามารถแก้ปัญหาเหมือนที่ผมเจอได้
สำหรับการเปลี่ยนภาษาของ ผู้ใช้ที่กำลัง login web client อยู่ มีขึ้นตอนตามนี้ครับ
วิธีเปลี่ยนภาษา จาก web client
- ให้ไปที่ Preferences tab >> General
- ดูที่ Sign in Options จะอยู่ที่บรรทัดที่เขียนว่า Language ครับ
- จากบรรทัดนี้ เราสามารถเลือก ภาษาจาก drop down menu ได้ เสร็จแล้วก็กด save
แต่ถ้าจะเปลี่ยนโดยผ่านทาง Admin Console ซึ่งวิธีนี้ คนที่เป็น Admin สามารถเปลี่ยนภาษาที่ใช้แสดงผลของ user คนอื่นๆในระบบได้ด้วย มีขั้นตอนและหน้าจอแตกต่างกันนิดหน่อย ตามนี้ครับ
วิธีการเปลี่ยนภาษาจาก Admin Console
- Manage >> Accounts >> เลือก Account >> Edit (กดปุ่มเมาส์ขวา เพื่อเปิดเมนู) >> Preferences
- ดูที่ส่วน General Options ครับ บรรทัดท้ายสุดของส่วนนี้ ที่เขียนว่า Language เช่นกันครับ
- แก้ภาษา แล้วกด Save
ถ้าจะให้หน้าจอเปลี่ยนภาษาที่ใช้แสดงผลทันทีแค่สั่งให้ web browser ให้ load หน้าจอใหม่ (reload) เท่านี้ ก็จะเปลี่ยนภาษาที่ใช้แสดงผลของ Zimbra ได้ตามที่ต้องการครับ
วันจันทร์ที่ 2 กันยายน พ.ศ. 2556
วิธีดู Disk Quota สำหรับผู้ใช้งาน Zimbra (Zimbra Tips & Technique #15)
ก่อนหน้านี้ ผมได้พูดถึงวิธีการที่ Zimbra Admin จะดู Disk Quota ของ User ทั้งหมดไปแล้ว หลายคนอาจมีคำถามว่า แล้วถ้า User ในระบบ Zimbra อยากรู้ว่า Disk quota ของตัวเอง มีอยู่เท่าไหร่ ถูกใช้ไปเท่าไหร่ จะทำอย่างไร
วิธีการง่ายๆ ครับ User ที่กำลังใช้งาน Web Client หรือ Web Mail ของ Zimbra ถ้าเป็น Zimbra 8 สังเกตุที่มุมบนขวา ข้างๆ search bar จะมีชื่อของ Account ที่กำลัง Login อยู่ ลาก mouse pointer มาวางที่ชื่อนี้ (ไม่ต้องคลิ๊กนะครับ วางเฉยๆ) จะมี ข้อความปรากฏขึ้นมาเหมือนในรูปคตัวอย่าง บอกว่า Quota การใช้งาน Disk ของคุณ ใช้ไปกี่ % แล้ว ใช้ไปเท่าไหร่ Quota ที่ได้รับทั้งหมดมีเท่าไร
ง่ายๆ เท่านี้เองครับ
วันอังคารที่ 27 สิงหาคม พ.ศ. 2556
ZebraTray : Email Notifier ตัวใหม่ สำหรับ Zimbra
มีหลายๆท่าน สอบถามผมเกี่ยวกับโปรแกรม Email Popup Notifier
สำหรับท่านที่ยังไม่เคยเล่น โปรแกรมพวกนี้จะทำงานอยู่บน Desktop คอยตรวจดูว่า มี Email ใหม่ เข้ามาที่ Mailbox ของเราบน Zimbra หรือเปล่า ถ้ามี มีจะ Popup ขึ้นมาบอกที่หน้าจอ หรือที่ที่ Window Tray
เมื่อก่อนมีตัวนึงครับชื่อ Zimbra Notifier แต่หลังๆ ตัวนี้ไม่ฟรีแล้ว อีกตัวนึงที่พอไหวคือ Yahoo Browser Plus แต่เห็นมีบางท่านบอกว่าตัวนี้ติดที่ ลงบน Windows 8 ไม่ได้ ผมคิดว่า Yahoo คงเลิกทำให้ Support Zimbra แล้วครับ เพราะ Yahoo ขาย Zimbra ไปให้คนอื่นแล้ว
มีอีกตัวที่ผมขอนำเสนอครับ ชื่อ ZebraTray version ยังเป็น Pre Release Version อยู่เลยครับ มีข้อจำกัดอยู่ที่ มันจะเช็คเมล์ โดยติดต่อ Zimbra Server ผ่านทาง https port 443 เท่านั้นครับ ซึ่งวิธีการติดต่อนี้จะ เหมือนกับเวลาที่เราติดต่อกับ Zimbra ทาง web browser ครับ ซึ่งถ้าใช้ Zimbra 8 การใช้งานโดยปกติ จะใช้ port นี้อยู่แล้ว แต่ถ้า Zimbra Server ของคุณ เก่ากว่า version 8 สามารถเปลี่ยนให้ติดต่อโดยใช้ https port 443 ได้ครับ ดูได้จากจากบทความเรื่อง การกำหนด Port ที่ใช้เข้าถึง web client ที่ผมเคยเขียนไปแล้ว
ตอนนี้หน้า web ยังเป็น ภาษารัสเซียอยู่เลย แต่ไม่เป็นไรครับ Download ตาม Link นี้ ได้มาแล้วก็จัดการลงเลย ขึ้นตอนการติดตั้งไม่ได้ซับซ้อนอะไรครับ พอลงเสร็จจะมีหน้าให้ setup ตามนี้ครับ
การ Setup มีหน้าเดียวครับ ใส่ข้อมูลตามนี้
จากนี้จะมีโปรแกรมชื่อ ZebraTray อยู่ที่ System Tray ของ Windows แล้วครับ ถ้ามีเมล์ใหม่มาที่ Zimbra Account เราที่ได้ตั้งไว้ จะมีข้อความพร้อมข้อมูลของ email ใหม่ popup ขึ้นมา
นอกจากนี้ เรายังสามารถกดเมาส์ขวา ที่ ZimbraTray icon ใน System Tray เพื่อดูเมล์ (View Mail) โดย โปรแกรมจะเรียก Web Browser และทำการ Login ให้ ตามข้อมูลที่เราใส่ไว้ ใน ZebraTray
ในเมนูนี้ เรายังสามารถแก้ไข Config ได้โดยเลือก Settings ได้ด้วยครับ
ลองใช้งานกันดูนะครับ มีคำถามหรือติดตรงไหน สอบถาม ThaiZimbra ได้ครับ
สุดท้าย ต้องขอขอบคุณ น้อง Fuse ที่ได้ช่วยทดสอบและจัดหารูปประกอบให้ครับ
สำหรับท่านที่ยังไม่เคยเล่น โปรแกรมพวกนี้จะทำงานอยู่บน Desktop คอยตรวจดูว่า มี Email ใหม่ เข้ามาที่ Mailbox ของเราบน Zimbra หรือเปล่า ถ้ามี มีจะ Popup ขึ้นมาบอกที่หน้าจอ หรือที่ที่ Window Tray
เมื่อก่อนมีตัวนึงครับชื่อ Zimbra Notifier แต่หลังๆ ตัวนี้ไม่ฟรีแล้ว อีกตัวนึงที่พอไหวคือ Yahoo Browser Plus แต่เห็นมีบางท่านบอกว่าตัวนี้ติดที่ ลงบน Windows 8 ไม่ได้ ผมคิดว่า Yahoo คงเลิกทำให้ Support Zimbra แล้วครับ เพราะ Yahoo ขาย Zimbra ไปให้คนอื่นแล้ว
มีอีกตัวที่ผมขอนำเสนอครับ ชื่อ ZebraTray version ยังเป็น Pre Release Version อยู่เลยครับ มีข้อจำกัดอยู่ที่ มันจะเช็คเมล์ โดยติดต่อ Zimbra Server ผ่านทาง https port 443 เท่านั้นครับ ซึ่งวิธีการติดต่อนี้จะ เหมือนกับเวลาที่เราติดต่อกับ Zimbra ทาง web browser ครับ ซึ่งถ้าใช้ Zimbra 8 การใช้งานโดยปกติ จะใช้ port นี้อยู่แล้ว แต่ถ้า Zimbra Server ของคุณ เก่ากว่า version 8 สามารถเปลี่ยนให้ติดต่อโดยใช้ https port 443 ได้ครับ ดูได้จากจากบทความเรื่อง การกำหนด Port ที่ใช้เข้าถึง web client ที่ผมเคยเขียนไปแล้ว
ตอนนี้หน้า web ยังเป็น ภาษารัสเซียอยู่เลย แต่ไม่เป็นไรครับ Download ตาม Link นี้ ได้มาแล้วก็จัดการลงเลย ขึ้นตอนการติดตั้งไม่ได้ซับซ้อนอะไรครับ พอลงเสร็จจะมีหน้าให้ setup ตามนี้ครับ
การ Setup มีหน้าเดียวครับ ใส่ข้อมูลตามนี้
- Server: ใส่ Hostname หรือ IP Address ของ Zimbra Server
- Login และ Password ใส่ชื่อ Account และ Password เหมือนที่เรา login Zimbra นั่นและครับ
- ติ๊กถูกที่ Ignore SSL Errors ด้วย
- และถ้าต้องการให้มีเสียงเวลามีเมล์ใหม่มา ติ้กถูกที่ Sound
จากนี้จะมีโปรแกรมชื่อ ZebraTray อยู่ที่ System Tray ของ Windows แล้วครับ ถ้ามีเมล์ใหม่มาที่ Zimbra Account เราที่ได้ตั้งไว้ จะมีข้อความพร้อมข้อมูลของ email ใหม่ popup ขึ้นมา
นอกจากนี้ เรายังสามารถกดเมาส์ขวา ที่ ZimbraTray icon ใน System Tray เพื่อดูเมล์ (View Mail) โดย โปรแกรมจะเรียก Web Browser และทำการ Login ให้ ตามข้อมูลที่เราใส่ไว้ ใน ZebraTray
ในเมนูนี้ เรายังสามารถแก้ไข Config ได้โดยเลือก Settings ได้ด้วยครับ
ลองใช้งานกันดูนะครับ มีคำถามหรือติดตรงไหน สอบถาม ThaiZimbra ได้ครับ
สุดท้าย ต้องขอขอบคุณ น้อง Fuse ที่ได้ช่วยทดสอบและจัดหารูปประกอบให้ครับ
วันพุธที่ 21 สิงหาคม พ.ศ. 2556
วิธีดู mailbox quota ของ account ทั้งหมด (Zimbra Tips and Technique # 14)
จาก Admin Console เราสามารถขอดูได้ว่า แต่ละ Account มีการกำหนด mailbox quota ไว้เท่าไหร่ ใช้ไปเท่าไหร่ เนื้อที่ที่ใช้ไป เป็นกี่เปอร์เซนต์ของ quota ที account นั้นได้สิทธิในการใช้งาน
วิธีการ (zimbra 8 ) คือ จาก Admin console ที่เมนูด้านซ้ายของจอ เลือก
Monitor>> Server Statistics >> เลือกชื่อ Service Hostname (อยู่ box ด้านซ้ายของเมนู) >> Mailbox Quota
จะได้หน้าจอเหมือนกับตัวอย่างในรูป
วันพุธที่ 14 สิงหาคม พ.ศ. 2556
รวมรวม link การสร้าง Logical Volume และ Logical Volume Snapshot เพื่อ backup zimbra
- เกริ่นนำ zimbra backup
- ระบบ filesystem ก่อนจะมี Logical Volume Manager (LVM)
- Logical Volume Manager(LVM): Concept
- LVM : การเตรียม Physical Volume
- การสร้าง Linux Partition เพื่อเป็น Physical Volume
- การนำ Logical Volume มาสร้างเป็น filesystem
- Setup filesystem ที่สร้างใหม่ ให้ mount อัตโนมัติ
- สร้าง lvm snapshort
วันศุกร์ที่ 9 สิงหาคม พ.ศ. 2556
สร้าง lvm snapshort
หลังจากที่เราได้เรียนรู้การสร้าง Filesystem จาก Logical Volume กันไปแล้ว ในตอนนี้ จะถึงเนี้อหาที่ทุกคนรอคอยแล้วครับ คือการสร้าง snapshot ของ Filesystem กันครับ
เหมือนที่ผมเคยเกริ่นไปแล้ว การสร้าง snapshot ก็คือ การการสร้าง filesystem ขึ้นมาอีกหนึ่งอัน ซึ่งจะมีข้อมูลเหมือนกับ filesystem ต้นแบบ ณ.เวลาที่เราสร้าง snapshot หรือกล่าวอีกนัยหนึ่งก็คือ เราสร้าง filesytem อีกอันขึ้นมาที่มีข้อมูลเสมือนเราหยุดเวลาของ filesytem ตัวต้นแบบไว้ครับ
ทำไมเราต้องทำ snapshot ในกรณีของ Zimbra เราจะสร้าง snapshot ของ /opt/zimbra ในขณะที่ zimbra ถุก หยุดการทำงาน (stop) อยู่ เพื่อที่เราจะได้ backup /opt/zimbra ได้ โดย ไม่ต้อง stop zimbra เป็นเวลานาน ขึ้นตอนก็มีประมาณนี้ครับ
1) stop zimbra
2) สร้าง snapshot ของ /opt/zimbra
3) start zimbra
4) mount snapshort ของ /opt/zimbra และทำการ backup
5) ลบ snapshot ทิ้ง
ซึ่งในขึ้นตอน 2) จะกินเวลาไม่นานครับ ซึ่งถ้าเราไม่ทำแบบนี้ เราจะต้อง backup /opt/zimbra ให้เสร้จก่อนที่จะสามารถ start zimbra กลับขึ้นมาได้ ซึ่งถ้าข้อมูลใน /opt/zimbra มีขนาดใหญ่ การ backup จะ กินเวลานาน ซึ่งก็หมายถึง Zimbra จะต้องหยุดเป็นเวลานานด้วยครับ
ถึงตรงนี้ หลายคนอาจจะมีคำถามว่า แล้วเรา backup /opt/zimbra ในขณะที่ zimbra ยังทำงานอยู่ได้ไหม คำตอบก็คือ ได้ครับ แต่ ข้อมูลที่ backup ไป เมื่อ restore กลับมา โอกาสที่จะใช้งานไม่ได้มีสูง (ตัวใครตัวมัน) เพราะ zimbra เอง มีส่วนที่เป็น mysql database และ ldap ซึ่งถ้า backup file ตรงๆ ขณะที่โปรแกรมทั้งสองทำงานอยู่ อาจจะมีปัญหาได้
วิธีการสร้าง snapshot filesystem
ใช้คำสั่ง lvcreate ตามรูปแบบนี้ครับ
lvcreate -Lsize -s -n snapshot_dev_name original_lv_dev_name
size เป็นขนาดเนี้อที่ที่เราจองไว้ให้ snapshot filesystem นี้ครับระบุหน่วยด้วยได้ เช่น 500m หรือ 1G
snapshot_dev_name เป็นชื่อของ device ที่เราจะสร้างครับ ระบุชื่ออย่างเดียว ไม่ต้องระบุเป็น full pathname (ขึ้นต้นด้วย /dev/...) ก็ได้ครับ
original_lv_dev_name เป็นชื่อของ Logical Volume ตัวต้นแบบที่เราจะทำ snapshot อันนี้ต้องระบุชื่อ device แบบเต็ม (ขึ้นต้นด้วย /dev) ครับ
จากตัวอย่างในรูป ผมสร้าง snapshot ที่ชื่อ zimbra_snap จาก Logical Volume /dev/mapper/vol2-lvol0 (หรืออีกชื่อก็คือ /dev/vol2/lvol0) ผมจะได้ snapshot device ที่ชื่อ /dev/vol2/zimbra_snap
จากนั้น เราจะได้ snapshot device อยู่ใน volume group เดียวกันกับตัวต้นแบบครับ เราสามารถ mount และ backup ได้เลย โดยใช้คำสั่ง mount อยาลืมสร้าง directory ที่จะเป็น mount point กันก่อนนะครับ
หลังจากที่ backup เสร็จ เรียบร้อย เราต้องลบ snapshot logical volume นี้ทิ้งเสียครับ จะได้ไม่เปลืองเนื้อที่ โดย unmount ก่อน และใช้คำสั่ง lvremove ซึ่งมีรูปแบบตามนี้ครับ
lvremove snapshot_full_pathname
snapshot_full_pathname เป็นชื่อเต็มของ snapshot logical volume ครับ (/dev/....)
เท่านี้ก็เป็นอันเสร็จสิ้นครับ
เหมือนที่ผมเคยเกริ่นไปแล้ว การสร้าง snapshot ก็คือ การการสร้าง filesystem ขึ้นมาอีกหนึ่งอัน ซึ่งจะมีข้อมูลเหมือนกับ filesystem ต้นแบบ ณ.เวลาที่เราสร้าง snapshot หรือกล่าวอีกนัยหนึ่งก็คือ เราสร้าง filesytem อีกอันขึ้นมาที่มีข้อมูลเสมือนเราหยุดเวลาของ filesytem ตัวต้นแบบไว้ครับ
ทำไมเราต้องทำ snapshot ในกรณีของ Zimbra เราจะสร้าง snapshot ของ /opt/zimbra ในขณะที่ zimbra ถุก หยุดการทำงาน (stop) อยู่ เพื่อที่เราจะได้ backup /opt/zimbra ได้ โดย ไม่ต้อง stop zimbra เป็นเวลานาน ขึ้นตอนก็มีประมาณนี้ครับ
1) stop zimbra
2) สร้าง snapshot ของ /opt/zimbra
3) start zimbra
4) mount snapshort ของ /opt/zimbra และทำการ backup
5) ลบ snapshot ทิ้ง
ซึ่งในขึ้นตอน 2) จะกินเวลาไม่นานครับ ซึ่งถ้าเราไม่ทำแบบนี้ เราจะต้อง backup /opt/zimbra ให้เสร้จก่อนที่จะสามารถ start zimbra กลับขึ้นมาได้ ซึ่งถ้าข้อมูลใน /opt/zimbra มีขนาดใหญ่ การ backup จะ กินเวลานาน ซึ่งก็หมายถึง Zimbra จะต้องหยุดเป็นเวลานานด้วยครับ
ถึงตรงนี้ หลายคนอาจจะมีคำถามว่า แล้วเรา backup /opt/zimbra ในขณะที่ zimbra ยังทำงานอยู่ได้ไหม คำตอบก็คือ ได้ครับ แต่ ข้อมูลที่ backup ไป เมื่อ restore กลับมา โอกาสที่จะใช้งานไม่ได้มีสูง (ตัวใครตัวมัน) เพราะ zimbra เอง มีส่วนที่เป็น mysql database และ ldap ซึ่งถ้า backup file ตรงๆ ขณะที่โปรแกรมทั้งสองทำงานอยู่ อาจจะมีปัญหาได้
วิธีการสร้าง snapshot filesystem
ใช้คำสั่ง lvcreate ตามรูปแบบนี้ครับ
lvcreate -Lsize -s -n snapshot_dev_name original_lv_dev_name
size เป็นขนาดเนี้อที่ที่เราจองไว้ให้ snapshot filesystem นี้ครับระบุหน่วยด้วยได้ เช่น 500m หรือ 1G
snapshot_dev_name เป็นชื่อของ device ที่เราจะสร้างครับ ระบุชื่ออย่างเดียว ไม่ต้องระบุเป็น full pathname (ขึ้นต้นด้วย /dev/...) ก็ได้ครับ
original_lv_dev_name เป็นชื่อของ Logical Volume ตัวต้นแบบที่เราจะทำ snapshot อันนี้ต้องระบุชื่อ device แบบเต็ม (ขึ้นต้นด้วย /dev) ครับ
จากตัวอย่างในรูป ผมสร้าง snapshot ที่ชื่อ zimbra_snap จาก Logical Volume /dev/mapper/vol2-lvol0 (หรืออีกชื่อก็คือ /dev/vol2/lvol0) ผมจะได้ snapshot device ที่ชื่อ /dev/vol2/zimbra_snap
จากนั้น เราจะได้ snapshot device อยู่ใน volume group เดียวกันกับตัวต้นแบบครับ เราสามารถ mount และ backup ได้เลย โดยใช้คำสั่ง mount อยาลืมสร้าง directory ที่จะเป็น mount point กันก่อนนะครับ
หลังจากที่ backup เสร็จ เรียบร้อย เราต้องลบ snapshot logical volume นี้ทิ้งเสียครับ จะได้ไม่เปลืองเนื้อที่ โดย unmount ก่อน และใช้คำสั่ง lvremove ซึ่งมีรูปแบบตามนี้ครับ
lvremove snapshot_full_pathname
snapshot_full_pathname เป็นชื่อเต็มของ snapshot logical volume ครับ (/dev/....)
เท่านี้ก็เป็นอันเสร็จสิ้นครับ
วันจันทร์ที่ 29 กรกฎาคม พ.ศ. 2556
setup filesystemที่สร้างใหม่ ให้ mount อัตโนมัติ
ในครั้งที่แล้ว ผมได้พูดถึงวิธีการสร้าง filesystem จาก Logical Volume เหลืออีกขั้นตอนหนึ่งคือการกำหนดให้ filesystem ที่เราสร้าง mount อัตโนมัติทุกครั้งที่เครื่อง boot
วิธีการง่ายๆ ครับ คือเพิ่มบรรทัดในไฟล์ /etc/fstab ไฟล์นี้ จะเป็นที่เก็บข้อมูลที่ช่วยในเราในการ mount filesystem เข้า file structure ครับ โดย แต่ละบรรทัดใน /etc/fstab จะมีรูปแบบดังนี้ครับ
block_device mount_point filesystem_type mount_options fs_dump check_on_boot
block_device : เป็นชื่อ device ที่จะทำการ mount
mount_point : directory ที่จะ mount filsystem
filesystem_type : ชนิดของ filesystem (ต้องตรงกับ ชนิดของ block_device)
mount_options : option ของการ mount ถ้ามี option หลายตัวใช้ "," คั่นแต่ละ option ปกติเรากำหนดให้เป็น defaults
fs_dump : เป็นการระบุว่า ให้คำสั่ง dump ทำการเก็บข้อมูลของ filesystem นี้ไว้(โดยใช้คำสั่ง dump) หรือเปล่า field นี้เป็นปัจจุบันนี้ field นี้ไม่ได้ใช้แล้วครับ แต่เราต้องระบุค่าไว้
check_on_boot : เป็นการบอกลำดับของการตรวจสอบ filesystem นี้ขณะที่มีการ boot (โดยใช้คำสั่ง fsck ) ปกติ สำหรับ filesystem ทั่วไป ค่าจะเป็น 2 ยกเว้น root filesystem (mount ที่ / ) ค่าจะเป็น 1 ครับ ส่วน filesystem ที่ไม่ต้องการใช้ ตรวจสอบ ค่าจะเป็น 0
จากตัวอย่างในครั้งที่แล้ว ผมจะเพิ่มบรรทัดนี้เข้าไปใน /etc/fstab
/dev/vol2/lvol0 /opt/zimbra ext4 defaults 1 2
เป็นการบอก Linux ว่า ให้ mount /dev/vol2/lvol0 ซึ่งเป็น filesystem ชนิด ext4 ไปที่ /opt/zimbra โดยใช้ default mount option ของ ext4 ครับ ส่วนสอง field สุดท้าย ระบุเป็น 1 กับ 2 ไป
อีกอย่างนึงครับ เวลาเราจะ mount filesystem ไปที่ directory ไหน หรือที่ภาษา *nix (พวก Unix และ linux) เรียกว่า mount point ต้องดูให้ดีนะครับว่า directory นั้นต้องมีอยู่ ถ้าไม่มี ก็จัดการสร้าง directory นั้นซะ
หลังจากเพิ่มบรรทัดนี้ ทดสอบการ mount โดยใช้คำสั่ง mount -a (mount all) หรือ reboot เครื่อง ก็ได้ครับ จะเห็น filesystem ที่เราเพิ่งเพิ่มเข้าไปถูก mount โดยอัตโนมัติ
หลังจากพูดปูพื้นฐานมาซะหลายตอน ครั้งหน้าผมจะพูดถึงวิธีการทำ snapshot logical volume เพื่อ backup zimbra กันนะครับ
วิธีการง่ายๆ ครับ คือเพิ่มบรรทัดในไฟล์ /etc/fstab ไฟล์นี้ จะเป็นที่เก็บข้อมูลที่ช่วยในเราในการ mount filesystem เข้า file structure ครับ โดย แต่ละบรรทัดใน /etc/fstab จะมีรูปแบบดังนี้ครับ
block_device mount_point filesystem_type mount_options fs_dump check_on_boot
block_device : เป็นชื่อ device ที่จะทำการ mount
mount_point : directory ที่จะ mount filsystem
filesystem_type : ชนิดของ filesystem (ต้องตรงกับ ชนิดของ block_device)
mount_options : option ของการ mount ถ้ามี option หลายตัวใช้ "," คั่นแต่ละ option ปกติเรากำหนดให้เป็น defaults
fs_dump : เป็นการระบุว่า ให้คำสั่ง dump ทำการเก็บข้อมูลของ filesystem นี้ไว้(โดยใช้คำสั่ง dump) หรือเปล่า field นี้เป็นปัจจุบันนี้ field นี้ไม่ได้ใช้แล้วครับ แต่เราต้องระบุค่าไว้
check_on_boot : เป็นการบอกลำดับของการตรวจสอบ filesystem นี้ขณะที่มีการ boot (โดยใช้คำสั่ง fsck ) ปกติ สำหรับ filesystem ทั่วไป ค่าจะเป็น 2 ยกเว้น root filesystem (mount ที่ / ) ค่าจะเป็น 1 ครับ ส่วน filesystem ที่ไม่ต้องการใช้ ตรวจสอบ ค่าจะเป็น 0
จากตัวอย่างในครั้งที่แล้ว ผมจะเพิ่มบรรทัดนี้เข้าไปใน /etc/fstab
/dev/vol2/lvol0 /opt/zimbra ext4 defaults 1 2
เป็นการบอก Linux ว่า ให้ mount /dev/vol2/lvol0 ซึ่งเป็น filesystem ชนิด ext4 ไปที่ /opt/zimbra โดยใช้ default mount option ของ ext4 ครับ ส่วนสอง field สุดท้าย ระบุเป็น 1 กับ 2 ไป
อีกอย่างนึงครับ เวลาเราจะ mount filesystem ไปที่ directory ไหน หรือที่ภาษา *nix (พวก Unix และ linux) เรียกว่า mount point ต้องดูให้ดีนะครับว่า directory นั้นต้องมีอยู่ ถ้าไม่มี ก็จัดการสร้าง directory นั้นซะ
หลังจากเพิ่มบรรทัดนี้ ทดสอบการ mount โดยใช้คำสั่ง mount -a (mount all) หรือ reboot เครื่อง ก็ได้ครับ จะเห็น filesystem ที่เราเพิ่งเพิ่มเข้าไปถูก mount โดยอัตโนมัติ
หลังจากพูดปูพื้นฐานมาซะหลายตอน ครั้งหน้าผมจะพูดถึงวิธีการทำ snapshot logical volume เพื่อ backup zimbra กันนะครับ
วันอังคารที่ 16 กรกฎาคม พ.ศ. 2556
การนำ Logical Volume มาสร้างเป็น filesystem
จากตอนที่แล้ว เราได้ Logical Volume ที่พร้อมจะนำสร้างเป็น filesystem และ ไปใช้งานแล้วครับ
แต่ก่อนอื่น เราจะต้องนำ Logical Volume ที่ได้นี้ มาสร้างเป็น filesystem กันก่อนครับ วิธีการจะเหมือนกับการสร้าง filesystem จาก disk partition ทั้วไปครับ เราใช้คำสั่ง mkfs ซึ่งมีรูปแบบดังนี้ครับ
mkfs -t fs_type partition_name
fs_type คือ ชนิดของ filesystem โดยปกติ จะเป็น ext3 หรือ ext4 ใน Linux รุ่นใหม่ๆ จะใช้เป็น ext4 ครับ
partition_name คือ ชื่อของ disk partition ที่เรากำลังจะสร้างเป็น filesystem ในกรณีของเรา ก็คือชื่อของ Logical Volume โดยเราต้องระบบแบบเต็มคือขึ้นต้นด้วย /dev นะครับ โดยปกติ เป็น /dev/pv_name/lv_name
pv_name จะเป็นชื่อของ physical volume ที่ logical volume นั้นอยู่ ส่วน lv_name เป็น ชื่อของ logical volume ดังนั้นจากบทความที่แล้ว ชื่อของ disk partition จะเป็น /dev/vol2/lvol0
เมื่อ run คำสั่ง mkfs ถ้าไม่ติดอะไร จะได้ผลลัพท์คือ filesystem ที่สามารถนำไป mount (เชื่อมต่อ) เข้ากับ directory system ได้เลย จากตัวอย่างในรูป ผมสร้าง filesystem ชนิด ext4 บน /dev/vol2/lvol0 เสร็จแล้ว mount ไปที่ /opt/zimbra ครับ
รูป แบบของคำสั่ง mount คือ
mount device_name mount_point_dir
หลังจากที่เรา mount เสร้จ ต่อจากนี้ถ้าเรามีการสร้างไฟล์หรือ directory ภายใต้ mount_point_dir จะเป็นการใช้เนื้อที่บน device ที่เราเพิ่งทำการ mount เข้าไปนะครับ
แต่อย่างไรก็ตาม การ mount แบบนี้ ถ้าเครื่องมีการ reboot filesystem ที่เรา mount แบบนี้ จะไม่ถูก mount (แต่ยังอยู่) จะให้ mount อัตโนมัติเวลา boot เครื่อง จะมีขั้นตอนเพิ่มเติม ว่ากันในครั้งหน้าครับ
แต่ก่อนอื่น เราจะต้องนำ Logical Volume ที่ได้นี้ มาสร้างเป็น filesystem กันก่อนครับ วิธีการจะเหมือนกับการสร้าง filesystem จาก disk partition ทั้วไปครับ เราใช้คำสั่ง mkfs ซึ่งมีรูปแบบดังนี้ครับ
mkfs -t fs_type partition_name
fs_type คือ ชนิดของ filesystem โดยปกติ จะเป็น ext3 หรือ ext4 ใน Linux รุ่นใหม่ๆ จะใช้เป็น ext4 ครับ
partition_name คือ ชื่อของ disk partition ที่เรากำลังจะสร้างเป็น filesystem ในกรณีของเรา ก็คือชื่อของ Logical Volume โดยเราต้องระบบแบบเต็มคือขึ้นต้นด้วย /dev นะครับ โดยปกติ เป็น /dev/pv_name/lv_name
pv_name จะเป็นชื่อของ physical volume ที่ logical volume นั้นอยู่ ส่วน lv_name เป็น ชื่อของ logical volume ดังนั้นจากบทความที่แล้ว ชื่อของ disk partition จะเป็น /dev/vol2/lvol0
เมื่อ run คำสั่ง mkfs ถ้าไม่ติดอะไร จะได้ผลลัพท์คือ filesystem ที่สามารถนำไป mount (เชื่อมต่อ) เข้ากับ directory system ได้เลย จากตัวอย่างในรูป ผมสร้าง filesystem ชนิด ext4 บน /dev/vol2/lvol0 เสร็จแล้ว mount ไปที่ /opt/zimbra ครับ
รูป แบบของคำสั่ง mount คือ
mount device_name mount_point_dir
หลังจากที่เรา mount เสร้จ ต่อจากนี้ถ้าเรามีการสร้างไฟล์หรือ directory ภายใต้ mount_point_dir จะเป็นการใช้เนื้อที่บน device ที่เราเพิ่งทำการ mount เข้าไปนะครับ
แต่อย่างไรก็ตาม การ mount แบบนี้ ถ้าเครื่องมีการ reboot filesystem ที่เรา mount แบบนี้ จะไม่ถูก mount (แต่ยังอยู่) จะให้ mount อัตโนมัติเวลา boot เครื่อง จะมีขั้นตอนเพิ่มเติม ว่ากันในครั้งหน้าครับ
วันอาทิตย์ที่ 30 มิถุนายน พ.ศ. 2556
สร้าง Volume Group และ Logical Volume
หลังจากที่เราสร้าง partition บน disk เป็น ชนิด Linux LVM เรียบร้อยแล้ว ขั้นตอนถัดมาของการสร้าง logical volume ก็คือ เอา partition หรือ disk ทั้งลูก add เข้าไปใน Volume Group สำหรับตัวอย่างนี้ ผมจะสร้าง Volume Group ใหม่ก่อนก็แล้วกันนะครับ
จากตัวอย่าง ผมมี disk /dev/sdb อยู่ ซึ่งมี partition /dev/sdb1 และ /dev/sdb2 ทีถูกกำหนด type เป็น Linux LVM เรียบร้อยแล้ว
คำสั่งทีใช้ในการสร้าง Volume Group ก็คือ vgcreate (ย่อมาจาก Volume Group Create) รูปแบบการเรียกใช้พื้นฐานก็คือ
vgcreate VolumeGroupName PhysicalDevicePath
โดย VolumeGroupName คือชื่อ ของ Volume Group ที่เราจะสร้าง จากตัวอย่างผมจะให้ชือว่า vol2
ส่วน PhysicalDevicePath จะเป็นชื่อของ disk หรือ partition โดยต้องระบุแบบ full path name หรือต้องอ้างถึงแบบมี /dev นำหน้าชื่อด้วย ในตัวอย่าง ผมใช้ /dev/sdb1
ในกรณีนี้ คำสั่งที่เราเรียกใช้คือ
vgcreate vol2 /dev/sdb
หลังจากที่คำสั่งนี้ทำงานเสร็จเรียบร้อย เราจะได้ Volume Group ชื่อ vol2 โดยจะถูกสร้างเป็น device file อยู่ที /dev/vol2
ต่อจากนั้น เราจะสร้าง Logical Volume จากเนื้อที่ใน Volume Group vol2 ที่เพิ่งถูกสร้างมาหมาดๆ โดยใช้คำสั่ง lvcreate (logical volume create) โดยมีรูปแบบก็คือ
lvcreate -L LogicalVolumeSize VolumeGroupName|VolumeGroupPath
LogicalVolumeSize : เป็นขนาดของ Logical Volume ที่เราจะสร้าง เราสามารถระบบุหน่วยเป็น K,M,G (kilobyte, Megabyte, Gigabyte) ได้ด้วย ตามตัวอย่าง ผมใส่เป็น 5G
VolumeGroupName|VolumeGroupPath : ตรงนี้เราระบุชื่อของ Volume Group โดยจะระบุแค่ชื่อ หรือ ระบุแบบชื่อ device เต็มๆ คือมี /dev นำหน้าได้ด้วยครับ จากตัวอย่าง ผมใช้ vol2
คำสั่งที่เรียกใช้จะเป็น
lvcreate -L 5G vol2
เมื่อคำสั่งทำงานเสร็จ มันจะบอกชื่อของ Logical Volume ทีถุกสร้างขึ้นมา ซึ่งในกรณีนี้ผมไม่ได้ระบุชื่อ Logical Volume ที่จะสร้าง ระบบจะกำหนดชื่อให้เราเอง ในกรณีนี้คือ lvol0 โดยจะมือชื่อ device แบบเต็มๆ คือ /dev/vol2/lvol0 ซึ่งเป็น symbolic link ชี้ไปยังชื่อ device คือ /dev/dm-6 (บน CentOS 6) แต่ผมแนะนำให้ใช้ /dev/vol2/lvol0 ในการอ้างถึง Logical Volume นะครับ เพราะบางกรณี ถ้าเครื่องมีการ reboot ชื่อ device /dev/dm-N นี้ระบบอาจจะมีการกำหนดตัวเลข N กันใหม่ ซึ่งอาจจะเปลี่ยนแปลงไปได้
ถึงจุดนี้เราได้ Logical Volume ที่สามารถนำไปสร้างเป็น filesystem ได้แล้วครับ
จากตัวอย่าง ผมมี disk /dev/sdb อยู่ ซึ่งมี partition /dev/sdb1 และ /dev/sdb2 ทีถูกกำหนด type เป็น Linux LVM เรียบร้อยแล้ว
คำสั่งทีใช้ในการสร้าง Volume Group ก็คือ vgcreate (ย่อมาจาก Volume Group Create) รูปแบบการเรียกใช้พื้นฐานก็คือ
vgcreate VolumeGroupName PhysicalDevicePath
โดย VolumeGroupName คือชื่อ ของ Volume Group ที่เราจะสร้าง จากตัวอย่างผมจะให้ชือว่า vol2
ส่วน PhysicalDevicePath จะเป็นชื่อของ disk หรือ partition โดยต้องระบุแบบ full path name หรือต้องอ้างถึงแบบมี /dev นำหน้าชื่อด้วย ในตัวอย่าง ผมใช้ /dev/sdb1
ในกรณีนี้ คำสั่งที่เราเรียกใช้คือ
vgcreate vol2 /dev/sdb
หลังจากที่คำสั่งนี้ทำงานเสร็จเรียบร้อย เราจะได้ Volume Group ชื่อ vol2 โดยจะถูกสร้างเป็น device file อยู่ที /dev/vol2
ต่อจากนั้น เราจะสร้าง Logical Volume จากเนื้อที่ใน Volume Group vol2 ที่เพิ่งถูกสร้างมาหมาดๆ โดยใช้คำสั่ง lvcreate (logical volume create) โดยมีรูปแบบก็คือ
lvcreate -L LogicalVolumeSize VolumeGroupName|VolumeGroupPath
LogicalVolumeSize : เป็นขนาดของ Logical Volume ที่เราจะสร้าง เราสามารถระบบุหน่วยเป็น K,M,G (kilobyte, Megabyte, Gigabyte) ได้ด้วย ตามตัวอย่าง ผมใส่เป็น 5G
VolumeGroupName|VolumeGroupPath : ตรงนี้เราระบุชื่อของ Volume Group โดยจะระบุแค่ชื่อ หรือ ระบุแบบชื่อ device เต็มๆ คือมี /dev นำหน้าได้ด้วยครับ จากตัวอย่าง ผมใช้ vol2
คำสั่งที่เรียกใช้จะเป็น
lvcreate -L 5G vol2
เมื่อคำสั่งทำงานเสร็จ มันจะบอกชื่อของ Logical Volume ทีถุกสร้างขึ้นมา ซึ่งในกรณีนี้ผมไม่ได้ระบุชื่อ Logical Volume ที่จะสร้าง ระบบจะกำหนดชื่อให้เราเอง ในกรณีนี้คือ lvol0 โดยจะมือชื่อ device แบบเต็มๆ คือ /dev/vol2/lvol0 ซึ่งเป็น symbolic link ชี้ไปยังชื่อ device คือ /dev/dm-6 (บน CentOS 6) แต่ผมแนะนำให้ใช้ /dev/vol2/lvol0 ในการอ้างถึง Logical Volume นะครับ เพราะบางกรณี ถ้าเครื่องมีการ reboot ชื่อ device /dev/dm-N นี้ระบบอาจจะมีการกำหนดตัวเลข N กันใหม่ ซึ่งอาจจะเปลี่ยนแปลงไปได้
ถึงจุดนี้เราได้ Logical Volume ที่สามารถนำไปสร้างเป็น filesystem ได้แล้วครับ
วันศุกร์ที่ 21 มิถุนายน พ.ศ. 2556
การสร้าง Linux Partition เพื่อเป็น Physical Volume
ครั้งที่แล้วเราพูดถึงวิธีหาว่า disk ในระบบมีอะไรบ้าง ครั้งนี้ เราจะพูดถึงการสร้าง Linux Partition เพื่อจะใช้เป็น Physical Volume กันครับ
หลังจากที่เรียกใช้ fdisk แล้ว ถ้าเป็น disk ที่ไม่เคยมี partition อยุ่ก่อน คำสั่งนี้จะแสดง warning message ขึ้นมา ไม่ต้องสนใจก็ได้ครับ ต่อจากนั้น fdisk จะขึ้นบรรทัด prompt มาให้เราป้อนคำสั่ง
Command (m for help) :
fdisk จะขึ้น prompt ให้เราป้อนคำสั่งถัดไป
ถึงตรงนี้ ถ้าเราอยากดูกว่า fdisk เตรียมจะสร้าง partition อะไรให้เราบ้าง เราสามารถกด p (print) เพื่อสั่งให้ fdisk พิมพ์ออกมาให้เราดู ในกรณีที่เรากำหนด partition ให้กับ disk ว่างๆ ในตอนแรก ถ้าถึงขั้นตอนนี้เราจะเป็น /dev/sdb1
ขั้นตอนต่อมาคือ การกำหนด partition system id หรือชนิดของ system partition ซึ่งเราต้องกด t (type)
partition ที่เราสร้างได้ จะชื่อเหมือนกับ disk ครับ แล้วตามด้วยตัวเลข partition number ที่เราระบุตอนสร้าง เช่นในกรณีนี้เราสร้าง partition บน /dev/sdb disk เราจะได้ partition ชื่อ /dev/sdb1 ครับ เอา partition นี้ไปทำอย่างอื่นต่อได้เลยครับ
หลายๆ ท่านคงจะพอทราบแล้วว่า คำสั่งทั่วไปที่ใช้ในการสร้าง partition บน Linux คือ fdisk รูปแบบพื้นฐานการเรียกใช้คำสั่งนี้ คือ fdisk ตามด้วยชื่อ device โดยชื่อ device นี้ต้องระบุแบบเต็มคือระบุ /dev ด้วย เช่น
# fdisk /dev/sdb
อีกอย่างที่ไม่ควรลืมก็คือ การเรียกใช้คำสั่งนี้ ต้อง Login หรือ su เป็น root นะครับ
หลังจากที่เรียกใช้ fdisk แล้ว ถ้าเป็น disk ที่ไม่เคยมี partition อยุ่ก่อน คำสั่งนี้จะแสดง warning message ขึ้นมา ไม่ต้องสนใจก็ได้ครับ ต่อจากนั้น fdisk จะขึ้นบรรทัด prompt มาให้เราป้อนคำสั่ง
Command (m for help) :
ถึงตรงนี้ เราสามารถเรียกดูว่า มีคำสั่งอะไรให้ใช้ได้บ้าง โดยการกด m ครับ
คำสั่งที่ใช้สร้าง partition ใหม่ คือ n (new partition) ถ้าเรากด n จากนั้น fdisk จะให้เราใส่ข้อมูลของ partition ที่เราจะสร้างตามนี้ครับ
- ชนิด partition สร้าง primary (กด p ) หรือ extend partition (กดปุ่ม e) เราเลือก p ครับ
- กำหนด partition number ใส่ค่าแรกที่ fdisk แนะนำ (1-4) คือ 1 ในกรณีที่มี partition อื่นอยู่แล้ว เราก็ใส่หมายเลขต่อไปเลยครับ
- เลือก cylinder แรก ของ partition นี้ ปกติใช้ค่า default ที่ fdisk เลือกให้ ก็กด enter เลย
- เลือก cylinder สุดทัายของ partition นี้ หรือเลือกขนาดของ partition ปกติ ผมกำหนดขนาดของ partition ง่ายกว่า ในกรณีนี้เราต้องใส่เครื่องหมาย + ตามด้วยขนาด และตามด้วยหน่วยของขนาด (K,M,G) ครั้บ ถ้าไม่ใส่หน่วย fdisk จะเข้าใจว่าขนาดที่เราระบุ เป็น byte ครับ
fdisk จะขึ้น prompt ให้เราป้อนคำสั่งถัดไป
ถึงตรงนี้ ถ้าเราอยากดูกว่า fdisk เตรียมจะสร้าง partition อะไรให้เราบ้าง เราสามารถกด p (print) เพื่อสั่งให้ fdisk พิมพ์ออกมาให้เราดู ในกรณีที่เรากำหนด partition ให้กับ disk ว่างๆ ในตอนแรก ถ้าถึงขั้นตอนนี้เราจะเป็น /dev/sdb1
ขั้นตอนต่อมาคือ การกำหนด partition system id หรือชนิดของ system partition ซึ่งเราต้องกด t (type)
จากนั้น fdisk จะให้เราป้อนเลขฐานสิบหก (hex code) ตามชนิดของ partition system id ที่เราจะระบุ ในกรณีของเรา ต้องป้อนค่า 8e ซึ่งก็คือ Linux LVM เสร็จแล้ว fdisk จะกลับมาที่ prompt
ถ้าเราไม่สร้าง partition อื่นต่อ ขั้นตอนสุดท้ายคือ บอกให้ fdisk สร้าง partition ตามที่เราระบุไว้ โดยการป้อนคำสั่ง w (write) ซึ่งเป็นการบอก fdisk ให้เขียนข้อมูลที่เรากำหนดไว้ทั้งหมด ลงไปใน disk เป็นอันเสร็จขั้นตอนครับ
partition ที่เราสร้างได้ จะชื่อเหมือนกับ disk ครับ แล้วตามด้วยตัวเลข partition number ที่เราระบุตอนสร้าง เช่นในกรณีนี้เราสร้าง partition บน /dev/sdb disk เราจะได้ partition ชื่อ /dev/sdb1 ครับ เอา partition นี้ไปทำอย่างอื่นต่อได้เลยครับ
วันอังคารที่ 18 มิถุนายน พ.ศ. 2556
LVM : การเตรียม Physical Volume
หลังจากที่พูดถึงทฤษฏีของ LVM ไปกันแล้ว มาเข้าภาคปฏิบัติกันนะครับ
สิ่งแรกที่ต้องทำ คือเราต้องเตรียมหรือจัดหา physical volume กันก่อน ตัว physical volume จะเป็น disk partition หรือเป็น harddisk ทั้งลูกก็ได้ครับ ถ้าจะใช้ harddisk ทั้งลูก harddisk ต้องไม่มี partition อยู่เลยครับ ถ้ามีต้องลบออกให้หมด แต่ถ้าเป็น disk partition เราต้องกำหนดชนิดของ partition ให้เป็น Linux LVM ครับ
คำสั่งทีใช้จัดการ partition บน Linux คือ fdisk แต่ก่อนที่จะจัดการ harddisk เราต้องรู้ว่าในเครื่องเราจะอ้างถึง harddisk ได้อย่างไร
ใน Linux เราจะอ้างถึง harddisk โดยใช้ชื่อไฟล์ ปกติ จะอยู่ใน directory /dev โดย harddisk ชื่อจะขึ้นต้นด้วย hd ถ้า Linux เห็นเป็น ATA disk และจะขึ้นต้นด้วย sd ถ้า Linux เห็นเป็น SATA disk และชื่อ disk จะลงท้ายด้วยตัวอักษร a-z เรียงกันไปเรื่อยๆครับ แต่ถ้าเราไม่ทราบจริงๆ เราสามารถใช้คำสั่ง lsblk (list block) เพื่อดูว่ามี block device (disk) อะไรอยู่ในระบบบ้าง ในกรณีที่ disk มีการแบ่งเป็น partition ไว้แล้ว คำสั่งนี้จะแสดงถึง partition ที่ถูกแบ่งไว้ด้วย ลองดูตัวอย่างในรูปครับ
จากตัวอย่างนี้ มี disk อยู่สองลูกครับ ดูที่บรรทัดที่คอลัมน์ TYPE เป็น disk จะเห็นว่ามีสองบรรทัดคือ sda และ sdb โดย sda มีการแบ่ง partition อยู่แล้ว ส่วน sdb เป็น disk เปล่าๆ ยังไม่มีแบ่ง partition ครับ สำหรับคำสั่งนี้จะละ /dev/ ที่อยู่หน้าชื่อ disk ไว้นะครับ
สิ่งแรกที่ต้องทำ คือเราต้องเตรียมหรือจัดหา physical volume กันก่อน ตัว physical volume จะเป็น disk partition หรือเป็น harddisk ทั้งลูกก็ได้ครับ ถ้าจะใช้ harddisk ทั้งลูก harddisk ต้องไม่มี partition อยู่เลยครับ ถ้ามีต้องลบออกให้หมด แต่ถ้าเป็น disk partition เราต้องกำหนดชนิดของ partition ให้เป็น Linux LVM ครับ
คำสั่งทีใช้จัดการ partition บน Linux คือ fdisk แต่ก่อนที่จะจัดการ harddisk เราต้องรู้ว่าในเครื่องเราจะอ้างถึง harddisk ได้อย่างไร
ใน Linux เราจะอ้างถึง harddisk โดยใช้ชื่อไฟล์ ปกติ จะอยู่ใน directory /dev โดย harddisk ชื่อจะขึ้นต้นด้วย hd ถ้า Linux เห็นเป็น ATA disk และจะขึ้นต้นด้วย sd ถ้า Linux เห็นเป็น SATA disk และชื่อ disk จะลงท้ายด้วยตัวอักษร a-z เรียงกันไปเรื่อยๆครับ แต่ถ้าเราไม่ทราบจริงๆ เราสามารถใช้คำสั่ง lsblk (list block) เพื่อดูว่ามี block device (disk) อะไรอยู่ในระบบบ้าง ในกรณีที่ disk มีการแบ่งเป็น partition ไว้แล้ว คำสั่งนี้จะแสดงถึง partition ที่ถูกแบ่งไว้ด้วย ลองดูตัวอย่างในรูปครับ
จากตัวอย่างนี้ มี disk อยู่สองลูกครับ ดูที่บรรทัดที่คอลัมน์ TYPE เป็น disk จะเห็นว่ามีสองบรรทัดคือ sda และ sdb โดย sda มีการแบ่ง partition อยู่แล้ว ส่วน sdb เป็น disk เปล่าๆ ยังไม่มีแบ่ง partition ครับ สำหรับคำสั่งนี้จะละ /dev/ ที่อยู่หน้าชื่อ disk ไว้นะครับ
จากตัวอย่างนี้เราสามารถนำ /dev/sdb ไปสร้างเป็น volume group ได้เลยครับ ในครั้งต่อไป ผมจะพูดถึงวิธีการสร้าง partition ของ disk ที่จะนำไปใช้เป็น physical volume กันครับ
วันจันทร์ที่ 3 มิถุนายน พ.ศ. 2556
Logical Volume Manager(LVM): Concept
ครั้งที่แล้ว ผมได้พูดถึงการเพิ่มเนื้อที่ในระบบของ filesystem ก่อนที่จะมี LVM กันไปแล้ว เรามาดูกันว่า LVM คืออะไร ทำงาน และ ช่วยแก้ปัญหาอย่างไร
Logical Volume Manager (LVM) เป็นโปรแกรมระบบ (system software) ทำหน้าที่ช่วย map disk partition ที่กระจัดกระจาย อยู่ใน disk ลูกเดียวกัน หรือ อยู่ข้ามลูกกัน นำมายำรวมกันแล้วสร้างเป็น partition จำลอง ที่เสมือนมีเนื้อที่ติดกัน ที่พร้อมจะนำไปสร้างเป็น filesystem
เราเริ่มจาก มี disk ซึ่งมีที่ว่างอยู่ อาจจะว่างทั้งลูกเหมือนในรูป หรือว่างเป็นส่วนๆ ก็ได้ครับ เนื้อที่ว่างเหล่านี้แต่ละอันเรียกว่า physical volume (PV) เราเอาเนี้อที่เหล่านี้ มารวมกันสร้างเป็น disk จำลองก้อนใหญ่ หรือ ศัพท์ของ LVM เรียกว่า volume group (VG) โดย เนื้อที่ใน PV จะถูกแบ่งย่อยออกเป็นส่วนย่อยๆอีก เรียกว่า physical extent (PE) ซึ่งปกติมีขนาด 4M ตัว PE นี้จะเป็น unit ย่อยของเนื้อ disk ที่เราจะสามารถจองให้กับ volume group ได้ ดังนั้น physical volume แต่ละอันต้องมีขนาดเป็นจำนวนเท่าของ physical extent ด้วย
พอได้แบบนี้ เราก็ตัดแบ่งเนื้อที่ใน volume group มาสร้างเป็น partition ย่อยๆ โดยจะดึงจาก volume group มาเป็นส่วนๆ เท่ากับขนาดของ physical extent มาประกอบกัน เป็น partition จำลองหนึ่งอัน ศัพท์ของ LVM จะเรียก partition นี้ว่า logical volume (LV) เราก็เอา logical volume นี้หละครับ ไปสร้างเป็น filesystem แทน เนื้อที่แต่ละ partition จริงๆ บน disk
ถ้าเราสามารถดูในรายละเอียดย่อยในระดับ PE ของ LV ได้ จะพบว่า LV หนึ่งก้อน ประกอบด้วย PE ซึ่งอาจจะมาจากหลากหลาย PV ครับ
Logical Volume Manager (LVM) เป็นโปรแกรมระบบ (system software) ทำหน้าที่ช่วย map disk partition ที่กระจัดกระจาย อยู่ใน disk ลูกเดียวกัน หรือ อยู่ข้ามลูกกัน นำมายำรวมกันแล้วสร้างเป็น partition จำลอง ที่เสมือนมีเนื้อที่ติดกัน ที่พร้อมจะนำไปสร้างเป็น filesystem
เราเริ่มจาก มี disk ซึ่งมีที่ว่างอยู่ อาจจะว่างทั้งลูกเหมือนในรูป หรือว่างเป็นส่วนๆ ก็ได้ครับ เนื้อที่ว่างเหล่านี้แต่ละอันเรียกว่า physical volume (PV) เราเอาเนี้อที่เหล่านี้ มารวมกันสร้างเป็น disk จำลองก้อนใหญ่ หรือ ศัพท์ของ LVM เรียกว่า volume group (VG) โดย เนื้อที่ใน PV จะถูกแบ่งย่อยออกเป็นส่วนย่อยๆอีก เรียกว่า physical extent (PE) ซึ่งปกติมีขนาด 4M ตัว PE นี้จะเป็น unit ย่อยของเนื้อ disk ที่เราจะสามารถจองให้กับ volume group ได้ ดังนั้น physical volume แต่ละอันต้องมีขนาดเป็นจำนวนเท่าของ physical extent ด้วย
พอได้แบบนี้ เราก็ตัดแบ่งเนื้อที่ใน volume group มาสร้างเป็น partition ย่อยๆ โดยจะดึงจาก volume group มาเป็นส่วนๆ เท่ากับขนาดของ physical extent มาประกอบกัน เป็น partition จำลองหนึ่งอัน ศัพท์ของ LVM จะเรียก partition นี้ว่า logical volume (LV) เราก็เอา logical volume นี้หละครับ ไปสร้างเป็น filesystem แทน เนื้อที่แต่ละ partition จริงๆ บน disk
ถ้าเราสามารถดูในรายละเอียดย่อยในระดับ PE ของ LV ได้ จะพบว่า LV หนึ่งก้อน ประกอบด้วย PE ซึ่งอาจจะมาจากหลากหลาย PV ครับ
วันพฤหัสบดีที่ 23 พฤษภาคม พ.ศ. 2556
ระบบ filesystem ก่อนจะมี Logical Volume Manager (LVM)
ตามที่ได้เขียนไว้ครั้งที่แล้ว ว่าเราจะเกริ่นเรื่อง Logical Volume Manager (LVM) กัน แต่พอลองเรียบเรียงแล้ว เพื่อให้เนี้อหาในแต่ละตอนไม่ยาวมาก เลยจะขอตัดเป็นตอนสั้นๆ ก็แล้วกันนะครับ โดยตอนนี้ จะเล่าถึงประวัติศาสตร์ ระบบการใช้งาน disk และ Linux partition ในยุคแรกๆ ก่อนจะมี LVM
บน Linux (และ Unix) การนำเนื้อที่ของ disk มาใช้งาน เราจะต้องจอง disk เป็นส่วนๆ (partition) แล้ว นำมา format สร้างเป็น filesystem หลังจากนั้นก็นำไป เชื่อมต่อ (mount) กับ directory โดยการ mount เราต้องกำหนด mount point ด้วยครับ ว่า disk partition นั้น จะ mount ที่จุดไหน
โดยปกติ จะมี disk partition แรก mount ที่ "/" directory หรือที่เราเรียกว่า root directory ครับ ใน directory นี้ และ directory ย่อยๆ ลงไป ถ้ามีการสร้างไฟล์ ก็จะกินเนื้อที่ของ disk partition นี้
แต่ถ้าเรามี disk อีก partition ที่สอง เพิ่มเข้ามา และ mount อยู่ที่ /usr การสร้างไฟล์ หรือ sub directory ย่อย ภายใต้ /usr จะใช้เนื้อที่ของ partition ที่สองครับ ไม่เกี่ยวข้องกับ partition แรก
disk แต่ละ partition ที่เรานำมา mount เข้ากับ directory tree ถ้าเราจะดูว่าในเครื่องเรา มี filesystem อะไรอยู่บ้าง mount อยู่ที่ไหน ก็ใช้คำสั่ง df ดูได้ครับ
การเพิ่มขยาย disk ของ Unix และ Linux ยุคแรกๆ ก็จะใช้วิธีการ mount disk เพิ่มแบบนี้หละครับ
การจอง partition เพื่อจะนำมาสร้างเป็น filesystem แบบนี้ มีข้อจำกัดคือ
1) เนื้อที่ในแต่ละ partition ต้องเป็นเนื้อที่ที่อยู่ติดต่อกัน
2) ต้องอยู่บน harddisk ลูกเดียวกันเท่านั้น
การขยายเนื้อที่ใน filesystem จะลำบากมาก ถ้าไม่มีเนื้อที่ติดกันกับ filesystem เดิมเหลืออยู่ ปกติก็คือ
1) ต้องจองเนื้อที่ใน partition ใหม่ ที่ใหญ่กว่าเดิม
2) copy ข้อมูลไป ยัง partition ใหม่
3) unmount filesystem เดิม
4) mount filesystem ใหม่ที่ mount point เดิม
วุ่นวายดีไหมครับ นี่แบบย่อๆ นะที่จริงซับซ้อนกว่านี้อีกนะ
ซึ่งการ unmount filesystem ได้นั้น จะต้องไม่มี process ไหนใช้งาน file หรือ directory บน filesystem นั้น ทำให้ การขยายบาง filesytem ที่ระบบใช้งานตลอด เช่น /usr หรือ /var ทำได้ค่อนข้างยาก ครับ
ถ้าทำได้ ก็จะมีปัญหาอีกอย่างคือ เนื้อที่ filesystem ของเดิมที่เลิกใช้แล้ว จะมีอยู่กระจัดกระจาย ไม่ติดต่อกัน บางที่เนื้อที่ว่างทั้ง disk เหลือพอ แต่อยู่กระจัดกระจาย จะเอามา recycle เพื่อสร้างเป็น filesytem ใหม่ ก็ทำได้แค่ filesystem ขนาดเล็กกว่า partition ที่มีอยู่ หรือเท่าเดิมเท่านั้นครับ
บน Linux (และ Unix) การนำเนื้อที่ของ disk มาใช้งาน เราจะต้องจอง disk เป็นส่วนๆ (partition) แล้ว นำมา format สร้างเป็น filesystem หลังจากนั้นก็นำไป เชื่อมต่อ (mount) กับ directory โดยการ mount เราต้องกำหนด mount point ด้วยครับ ว่า disk partition นั้น จะ mount ที่จุดไหน
โดยปกติ จะมี disk partition แรก mount ที่ "/" directory หรือที่เราเรียกว่า root directory ครับ ใน directory นี้ และ directory ย่อยๆ ลงไป ถ้ามีการสร้างไฟล์ ก็จะกินเนื้อที่ของ disk partition นี้
แต่ถ้าเรามี disk อีก partition ที่สอง เพิ่มเข้ามา และ mount อยู่ที่ /usr การสร้างไฟล์ หรือ sub directory ย่อย ภายใต้ /usr จะใช้เนื้อที่ของ partition ที่สองครับ ไม่เกี่ยวข้องกับ partition แรก
disk แต่ละ partition ที่เรานำมา mount เข้ากับ directory tree ถ้าเราจะดูว่าในเครื่องเรา มี filesystem อะไรอยู่บ้าง mount อยู่ที่ไหน ก็ใช้คำสั่ง df ดูได้ครับ
การเพิ่มขยาย disk ของ Unix และ Linux ยุคแรกๆ ก็จะใช้วิธีการ mount disk เพิ่มแบบนี้หละครับ
การจอง partition เพื่อจะนำมาสร้างเป็น filesystem แบบนี้ มีข้อจำกัดคือ
1) เนื้อที่ในแต่ละ partition ต้องเป็นเนื้อที่ที่อยู่ติดต่อกัน
2) ต้องอยู่บน harddisk ลูกเดียวกันเท่านั้น
การขยายเนื้อที่ใน filesystem จะลำบากมาก ถ้าไม่มีเนื้อที่ติดกันกับ filesystem เดิมเหลืออยู่ ปกติก็คือ
1) ต้องจองเนื้อที่ใน partition ใหม่ ที่ใหญ่กว่าเดิม
2) copy ข้อมูลไป ยัง partition ใหม่
3) unmount filesystem เดิม
4) mount filesystem ใหม่ที่ mount point เดิม
วุ่นวายดีไหมครับ นี่แบบย่อๆ นะที่จริงซับซ้อนกว่านี้อีกนะ
ซึ่งการ unmount filesystem ได้นั้น จะต้องไม่มี process ไหนใช้งาน file หรือ directory บน filesystem นั้น ทำให้ การขยายบาง filesytem ที่ระบบใช้งานตลอด เช่น /usr หรือ /var ทำได้ค่อนข้างยาก ครับ
ถ้าทำได้ ก็จะมีปัญหาอีกอย่างคือ เนื้อที่ filesystem ของเดิมที่เลิกใช้แล้ว จะมีอยู่กระจัดกระจาย ไม่ติดต่อกัน บางที่เนื้อที่ว่างทั้ง disk เหลือพอ แต่อยู่กระจัดกระจาย จะเอามา recycle เพื่อสร้างเป็น filesytem ใหม่ ก็ทำได้แค่ filesystem ขนาดเล็กกว่า partition ที่มีอยู่ หรือเท่าเดิมเท่านั้นครับ
วันพุธที่ 15 พฤษภาคม พ.ศ. 2556
เกริ่นนำ zimbra backup
เรื่องที่กวนใจคนใช้ Zimbra Open Source version อย่างหนึ่งก็คือ ไม่มีระบบ backup มาให้
ที่จริง เราสามารถ backup zimbra ได้หลายแบบ แบบที่ง่ายๆ (ถึกๆ) ก็คือ backup ทั้ง /opt/zimbra (หรือ path ที่เราลง zimbra) ทั้งก้อนเลย เวลาเราจะ restore ก็ restore กลับมาทับทั้งหมด ก็สดวกดี
ข้อดีของวิธีนี้ก็คือ เราได้ตัว zimbra ในส่วนของ binary และรวมไปถึง data ทุกอย่างทั้ง mysql data, openldap data เนื้อเมล์ใน /opt/zimbra/store และ index ใน /opt/zimbra/index เรียกว่าครบทุกอย่างเลย
แต่อย่างไรก็ตาม การ backup /opt/zimbra มีข้อควรระวังก็คือในระหว่างการ backup ต้องมีการ stop zimbra เสียก่อน ตามคำแนะนำของ zimbra open source ครับ (ส่วนเรื่องทำไมต้อง backup ระหว่างที่ zimbra หยุดทำงาน ผมจะเขียนถึงที่หลังละกัน) ปัญหาก็คือ ถ้า data ของ zimbra มีจำนวนมาก เวลาในการ backup จะใช้เวลานาน ซึ่งหมายถึง zimbra จะต้องหยุดทำงานเป็นเวลานานไปด้วย ซึ่งไม่ค่อยดีเท่าไหร่ ใช่ไหมครับ
จุดนี้ไม่ใช่ปัญหาใหญ่ เราสามารถดัดแปลงสิ่งที่ Linux มีมาให้อยู่แล้ว ใช้ในการ backup zimbra ได้ครับ โดยใช้ สิ่งที่เรียกว่า snapshot ของ Logical Volume Manager (LVM) ครับ โดยวิธีนี้ เราต้องสร้าง filesystem /opt/zimbra ให้อยู่บน partition ที่เป็น Logical Volume(LV) แทนที่จะเป็น partition ที่สร้างจากการแบ่งเนื้อที่บน hardisk ตรงๆ ซึ่งผมเคยแนะนำใน Zimbra Tips & Technique ตอนต้นๆ แล้วนะครับ แต่ผมขอสรุปอีกที สำหรับหลายๆท่านที่เพิ่งกด like Thai Zimbra fan page ครับ
เหตุผลที่เราต้องทำแบบนี้ ก็เพราะ เราสามารถที่จะสร้าง copy ที่เสมือนถูก "หยุดเวลา" ไว้ ของ filesystem ที่ถูกสร้างอยู่บน LV ได้ เราเรียกสิ่งนี้หรือการทำแบบนี้ว่า snapshot โดยตัว filesystem ที่เป็นต้นแบบจะสามารถถูกใช้งานต่อ (มีการเปลี่ยนแปลงแก้ไขข้อมูล) ส่วน snapshot จะยังคงมีข้อมูลค้าง ณ.เวลาที่เราสร้าง snapshot นั้นไว้
พอเห็นภาพแล้วใช่ไหมครับ พอเราสามารถ สร้าง copy ที่ถูก "หยุดเวลา" ของ /opt/zimbra ได้ เราจะเสียเวลาในการ stop zimbra อยู่แค่ช่วงที่เราสร้าง snapshot filesystem ของ /opt/zimbra (ซึ่งกินเวลาแป็บเดียว) หลังจากนั้น เราสามารถ start zimbra ขึ้นมาทำงานต่อได้ ส่วนการ backup เราก็ทำในขณะที่ zimbra ทำงานอยู่ได้ โดย backup ข้อมูลจาก snapshot แทน
ตัว snapshot filesystem เอง ก็เสมือนเป็น filesystem ปกติธรรมดา ครับ ต้องมีการ mount ไปยัง directory ในระบบ จึงจะสามารถถูกใช้งานได้ เพียงแต่เราจะอ่านข้อมูลได้อย่างเดียว เปลียนแปลงแก้ไขข้อมูลไม่ได้
ปกติตัว snapshot จะไม่กินเนื้อที่ disk มาก ยกเว้นในกรณีที่ตัว disk ต้นแบบมีข้อมูลเปลี่ยนแปลงไปหลังจากที่มีการทำ snapshot ซึ่งตรงนี้ จะทำให้ snapshot กินเนื้อที่บน disk ครับ ดังนั้น ยิ่งปล่อยให้ snapshot filesystem อยู่ในระบบนาน ก็จะยิ่งกินเนื่อที่ disk ไปเรื่อยๆ แต่พอเราลบ snapshot LV ทิ้ง เนื้อที่ที่ใช้ไป ก็จะถูกคืนกลับสู่ LVM ครับ
บางระบบอาจมีการสร้าง filesystem ที่ /opt/zimbra อยู่ มาจาก disk ที่อยู่บน NAS หรือ SAN ซึ่งพวกนี้ส่วนใหญ่ก็สามารถทำ snapshot ได้นะครับ ไม่ต้องใช้ความสามารถของ LVM เลย
ครั้งต่อไป ผมจะพูดถึงทฤษฏีเบื้องต้นของ Logical Volume Manager เพื่อปูพื้นฐาน ก่อนจะพูดถึงเรื่องการทำ snapshot ในตอนต่อๆไป ครับ
ที่จริง เราสามารถ backup zimbra ได้หลายแบบ แบบที่ง่ายๆ (ถึกๆ) ก็คือ backup ทั้ง /opt/zimbra (หรือ path ที่เราลง zimbra) ทั้งก้อนเลย เวลาเราจะ restore ก็ restore กลับมาทับทั้งหมด ก็สดวกดี
ข้อดีของวิธีนี้ก็คือ เราได้ตัว zimbra ในส่วนของ binary และรวมไปถึง data ทุกอย่างทั้ง mysql data, openldap data เนื้อเมล์ใน /opt/zimbra/store และ index ใน /opt/zimbra/index เรียกว่าครบทุกอย่างเลย
แต่อย่างไรก็ตาม การ backup /opt/zimbra มีข้อควรระวังก็คือในระหว่างการ backup ต้องมีการ stop zimbra เสียก่อน ตามคำแนะนำของ zimbra open source ครับ (ส่วนเรื่องทำไมต้อง backup ระหว่างที่ zimbra หยุดทำงาน ผมจะเขียนถึงที่หลังละกัน) ปัญหาก็คือ ถ้า data ของ zimbra มีจำนวนมาก เวลาในการ backup จะใช้เวลานาน ซึ่งหมายถึง zimbra จะต้องหยุดทำงานเป็นเวลานานไปด้วย ซึ่งไม่ค่อยดีเท่าไหร่ ใช่ไหมครับ
จุดนี้ไม่ใช่ปัญหาใหญ่ เราสามารถดัดแปลงสิ่งที่ Linux มีมาให้อยู่แล้ว ใช้ในการ backup zimbra ได้ครับ โดยใช้ สิ่งที่เรียกว่า snapshot ของ Logical Volume Manager (LVM) ครับ โดยวิธีนี้ เราต้องสร้าง filesystem /opt/zimbra ให้อยู่บน partition ที่เป็น Logical Volume(LV) แทนที่จะเป็น partition ที่สร้างจากการแบ่งเนื้อที่บน hardisk ตรงๆ ซึ่งผมเคยแนะนำใน Zimbra Tips & Technique ตอนต้นๆ แล้วนะครับ แต่ผมขอสรุปอีกที สำหรับหลายๆท่านที่เพิ่งกด like Thai Zimbra fan page ครับ
เหตุผลที่เราต้องทำแบบนี้ ก็เพราะ เราสามารถที่จะสร้าง copy ที่เสมือนถูก "หยุดเวลา" ไว้ ของ filesystem ที่ถูกสร้างอยู่บน LV ได้ เราเรียกสิ่งนี้หรือการทำแบบนี้ว่า snapshot โดยตัว filesystem ที่เป็นต้นแบบจะสามารถถูกใช้งานต่อ (มีการเปลี่ยนแปลงแก้ไขข้อมูล) ส่วน snapshot จะยังคงมีข้อมูลค้าง ณ.เวลาที่เราสร้าง snapshot นั้นไว้
พอเห็นภาพแล้วใช่ไหมครับ พอเราสามารถ สร้าง copy ที่ถูก "หยุดเวลา" ของ /opt/zimbra ได้ เราจะเสียเวลาในการ stop zimbra อยู่แค่ช่วงที่เราสร้าง snapshot filesystem ของ /opt/zimbra (ซึ่งกินเวลาแป็บเดียว) หลังจากนั้น เราสามารถ start zimbra ขึ้นมาทำงานต่อได้ ส่วนการ backup เราก็ทำในขณะที่ zimbra ทำงานอยู่ได้ โดย backup ข้อมูลจาก snapshot แทน
ตัว snapshot filesystem เอง ก็เสมือนเป็น filesystem ปกติธรรมดา ครับ ต้องมีการ mount ไปยัง directory ในระบบ จึงจะสามารถถูกใช้งานได้ เพียงแต่เราจะอ่านข้อมูลได้อย่างเดียว เปลียนแปลงแก้ไขข้อมูลไม่ได้
ปกติตัว snapshot จะไม่กินเนื้อที่ disk มาก ยกเว้นในกรณีที่ตัว disk ต้นแบบมีข้อมูลเปลี่ยนแปลงไปหลังจากที่มีการทำ snapshot ซึ่งตรงนี้ จะทำให้ snapshot กินเนื้อที่บน disk ครับ ดังนั้น ยิ่งปล่อยให้ snapshot filesystem อยู่ในระบบนาน ก็จะยิ่งกินเนื่อที่ disk ไปเรื่อยๆ แต่พอเราลบ snapshot LV ทิ้ง เนื้อที่ที่ใช้ไป ก็จะถูกคืนกลับสู่ LVM ครับ
บางระบบอาจมีการสร้าง filesystem ที่ /opt/zimbra อยู่ มาจาก disk ที่อยู่บน NAS หรือ SAN ซึ่งพวกนี้ส่วนใหญ่ก็สามารถทำ snapshot ได้นะครับ ไม่ต้องใช้ความสามารถของ LVM เลย
ครั้งต่อไป ผมจะพูดถึงทฤษฏีเบื้องต้นของ Logical Volume Manager เพื่อปูพื้นฐาน ก่อนจะพูดถึงเรื่องการทำ snapshot ในตอนต่อๆไป ครับ
วันอังคารที่ 7 พฤษภาคม พ.ศ. 2556
Advance Import/Export Account (Tips and Technique #13)
Advance
Import/Export Account (Tips and Technique #13)
ครั้งที่แล้ว ผมได้พุดถึงการ import/export ข้อมูลของ account ไปบ้างแล้วว่า ว่า user ของ zimbra สามารถ backup หรือ export ข้อมูลมาเก็บไว้ได้ จาก Preference -> import/export ครั้งนี้เรามา...ดูกันต่อครับ
ถ้าเลือก export และ เลือก Type เป็น account จะเห็นว่า มี check box ที่ชื่อ Advanced Settings ถ้าเราติ๊กถูกที่ช่องนี้ zimbra จะแสดงตัวเลือกเพิ่มเติมในการ export ครับ
ครั้งที่แล้ว ผมได้พุดถึงการ import/export ข้อมูลของ account ไปบ้างแล้วว่า ว่า user ของ zimbra สามารถ backup หรือ export ข้อมูลมาเก็บไว้ได้ จาก Preference -> import/export ครั้งนี้เรามา...ดูกันต่อครับ
ถ้าเลือก export และ เลือก Type เป็น account จะเห็นว่า มี check box ที่ชื่อ Advanced Settings ถ้าเราติ๊กถูกที่ช่องนี้ zimbra จะแสดงตัวเลือกเพิ่มเติมในการ export ครับ
เราสามารถเลือก
1. ชนิดของ data type ได้ ว่าจะเป็น Mail ,Addressbook, Calendar Task หรือ Briefcase
2. ช่วงเวลาของ ข้อมูลที่จะถูก export
3. สามารถใช้ filter เพื่อเลือกข้อมูลได้
4.เลือกว่าจะ export เฉพาะข้อมูล หรือเอา Metadata จะเลือกอันนี้ เฉพาะในกรณีที่จะ import ข้อมูลนี้เข้า zimbra เท่านั้นนะครับ
จะเห็นว่าการใช้ export advance setting นี้ทำให้เรา สามารถเลือกข้อมูลที่จะ export ไว้ได้ตรงตามที่เราต้องการมากขึ้นครับ
Zimbra Tip and Technique #10 : Failed Login Policy
อาทิตย์ก่อน ผมได้พูดถึงเรื่องการ hack email account ซึ่ง zimbra สามารถป้องกัน หรือ ทำให้โอกาสเกิดขึ้นได้น้อยลงมาก โดยการกำหนด password policy
อีกสิ่งหนึ่งที่ทำได้ คือการกำหนด Failed login policy ซึ่งเป็นการกำหนดพฤติกรรมให้กับ zimbra ว่า ถ้า user คนหนึ่งมีการ login ผิด ว่าระบบจะใช้อะไรตัดสิน และจะทำอย่างไรกับ account ที่ login ผิด
ซึ่งมีค่าที่เซตได้ดังนี้
Enable failed login lockout : เป็นการ enable feature ว่า ถ้ามีการ login ผิดตามรายละเอียดที่ set ไว้ ระบบจะทำการ lock user ไม่ให้ login ได้
Number of consecutive failed login allowed : เป็นค่าจำนวนครั้งที่อนุญาติให้ user มีการ login ผิด ติดต่อกัน
Time window in which failed login must occure to lock the account : เป็นการระบุว่า การ login ผิดติดต่อกัน ตามค่าที่กำหนด ต้องเกิดขึ้นภายในระยะเวลาเท่าไหร่ ระบบถึงจะ lock account นั้นๆ
Time to lockout the account : เวลาที่ระบบจะ lock user ไม่ให้ login ถ้ามีการ login ผิดติดต่อกัน ตาม จำนวนครั้ง และภายในเวลาที่กำหนด
วิธีนี้สามารถแก้ปัญหาที่ hacker รู้ account และพยายาม เดา password ได้ในระดังหนึ่ง คือเดาได้แค่เท่ากับจำนวนครั้งที่เรากำหนดไว้ หลังจากนั้น ถึงแม้เดาถูก แต่ account ถูก lock ก็ login ไม่ได้
และในขณะเดียวกัน จะทำให้ zimbra admin ทราบได้ว่ามีคนพยายามจะ hack account โดยสังเกตุได้จากมี user หลายๆ คน ถูก lock account เนี่องจาก failed login ด้วยครับ
วันจันทร์ที่ 15 เมษายน พ.ศ. 2556
Backup and Restore Personal Data (Tips and Technique #12)
สำหรับผู้ใช้ Zimbra เราสามารถ เก็บข้อมูล (Email, appointment, contact) ไว้ได้นะครับ
โดยหลังจาก login web console ของ Zimbra แล้ว ไปที่ Preferences tab แล้วก็ Import/Export จากนั้น เราก็เลือกว่า จะ export (backup) หรือ import (restore) อะไร
ในส่วนของ import ไม่มีอะไรมากครับ ก็แค่เลือก file ที่เราเคย export ออกมาแล้วเท่านั้น เสร็จแล้วกดปุ่ม import
แต่ที่น่าสนใจคือในส่วนของการ export ต่างหาก มีตัวเลือกให้เรามากมาย เบื้องต้น คือเราสามารถเลือก "Type" หรือ ชนิดของสิ่งที่เราต้องการจะ export ออกมาได้ เราสามารถเลือกว่าจะเป็น Account, Calendar หรือ Contact ตามรายละเอียดนี้ครับ
ซึ่งในแต่ละ Type เราสามารถเลือก Source ซึ่งทำให้เราเลือกได้ว่าจะ Import ข้อมูลอันไหนหรือกลุ่มไหน Source ซึ่งในกรณีของ Zimbra ตัว Source นี้ก็คือ folder
ค่า default ของ Folder คือ All Folders ครับ เลือกทุกรายการของ Type นั้นๆ ที่เราเลือกครับ
เมื่อเลือก Type และ Folder เสร็จ ก็กดปุ่ม Export อยู่ประมาณด้านล่างซ้ายของจอ Web Browser ที่เราใช้อยู่จะให้เราเลือกว่าจะเก็บ download ไฟล์ไว้ที่ไหน แค่นี้เป็นอันเสร็จสิ้นครับ
จุดที่น่าสนใจคือ ถ้าเราเลือก Account เราสามารถติ๊กถูกที่ Advance Setting ได้ เราสามารถเลือก export ได้ซับซ้อนขึ้นไปอีกครับ ไว้ต่อกันครั้งถัดไปนะครับ
โดยหลังจาก login web console ของ Zimbra แล้ว ไปที่ Preferences tab แล้วก็ Import/Export จากนั้น เราก็เลือกว่า จะ export (backup) หรือ import (restore) อะไร
ในส่วนของ import ไม่มีอะไรมากครับ ก็แค่เลือก file ที่เราเคย export ออกมาแล้วเท่านั้น เสร็จแล้วกดปุ่ม import
แต่ที่น่าสนใจคือในส่วนของการ export ต่างหาก มีตัวเลือกให้เรามากมาย เบื้องต้น คือเราสามารถเลือก "Type" หรือ ชนิดของสิ่งที่เราต้องการจะ export ออกมาได้ เราสามารถเลือกว่าจะเป็น Account, Calendar หรือ Contact ตามรายละเอียดนี้ครับ
- Account: คือข้อมูล (data) ทั้งหมดของ User คนนี้
- Calendar คือการ export บันทึกนัดหมายในปฏิทินครับ โดยการ export จะอยู่ใน format ของ iCalendar หรือ .ics ครับ
- Contact จะเป็นการ export Contact โดยเราสามารถเลือกได้ว่าจะเป็น contact แบบไหน (Outlook, Thunderbird, Window Live, Yahoo, ...) โดยไฟล์ที่ได้จะมีนามสกุลเป็น .csv ครับ
ซึ่งในแต่ละ Type เราสามารถเลือก Source ซึ่งทำให้เราเลือกได้ว่าจะ Import ข้อมูลอันไหนหรือกลุ่มไหน Source ซึ่งในกรณีของ Zimbra ตัว Source นี้ก็คือ folder
- ถ้าเป็น Calendar เลือก folder ก็คือเลือกว่าจะ Export จาก ปฏิทินอันไหน
- ส่วน Contact folder จะ เป็นการเลือกว่า จะ export จาก Address book อันไหน
- ในกรณีของ Email จะเป็นการเลือก mail ว่าจะเอาจาก Email folder ไหนครับ (ตรงไปตรงมา)
ค่า default ของ Folder คือ All Folders ครับ เลือกทุกรายการของ Type นั้นๆ ที่เราเลือกครับ
เมื่อเลือก Type และ Folder เสร็จ ก็กดปุ่ม Export อยู่ประมาณด้านล่างซ้ายของจอ Web Browser ที่เราใช้อยู่จะให้เราเลือกว่าจะเก็บ download ไฟล์ไว้ที่ไหน แค่นี้เป็นอันเสร็จสิ้นครับ
จุดที่น่าสนใจคือ ถ้าเราเลือก Account เราสามารถติ๊กถูกที่ Advance Setting ได้ เราสามารถเลือก export ได้ซับซ้อนขึ้นไปอีกครับ ไว้ต่อกันครั้งถัดไปนะครับ
วันจันทร์ที่ 8 เมษายน พ.ศ. 2556
Reset permission of files in /opt/zimbra (Zimbra Tip and Technique #4)
เราสามารถ reset permission ของไฟล์ของ zimbra (ใน /opt/zimbra) โดยใช้คำสั่ง /opt/zimbra/libexec/zmfixperms ได้ครับ
คำสั่ง zimfixperms นี้จะพิเศษกว่าคำสั่งของ zimbra โดยปกติอยู่นิดนึง ตอน run คำสั่งนี้ต้อง login Linux เป็น root นะครับ
วิธีเปลี่ยน port ที่ใช้เข้าถึง Zimbra Web Client (Zimbra tip & technique)
เราสามารถกำหนด port ที่ใช้ เข้าถึง web client ของ zimbra ได้นะครับ ใช้คำสั่ง zmtlsctl ครับ และเหมือน
กับการใช้คำสั่งอื่นๆ ของ zimbra หลังจากที่เรา Login เป็น root แล้ว ต้อง switch user เป็น zimbra โดยใช้คำสั่ง
"su - zimbra"
ก่อนนะครับ ส่วน Option ทีวิธีการใช้งาน ดุตามรูปครับ
จะเห็นว่ามี 5 options ให้เลือกครับ
http -> กำหนดให้ เข้าถึง webclient โดยใช้ protocol http (TCP port 80)
https -> กำหนดให้ เข้าถึง webclient โดยใช้ protocol https (TCP port 443)
both -> ใช้ ได้ทั้ง http และ https เลย
redirect -> ใช้ได้ ทาง https แต่ถ้ามีคนพยายามจะใช้ http zimbra จะ redirect ไป https ให้
mixed -> ถ้า user connect โดยใช้ http มันจะ redirect ไปใช้ https ตอน login และ switch กลับเป็น http ตอนใช้งาน แต่ ถ้า user connect เป็น https มันจะใช้ https ไปตลอด
หลังจากที่เรียกใช้คำสั่ง zmtlsctl นี้ ต้องมีการ Restart Zimbra หรือ Restart Mailboxd ก่อน ถึงจะเป็นไปตามที่เราแก้ไขนะครับ
วิธี restart zimbra mailbox ใช้คำสั่ง
zmmailboxdctl restartตัวอย่างการใช้งาน ดูตามรูปนี้ครับ
จะ set เป็น แบบไหน อย่าลืมเปิด port ที่ iptables และ firewall ให้สามารถใช้งานได้นะครับ
ต้องขอบคุณคุณ Montree Phomkam ที่แนะนำคำสั่งนี้มาครับ
Zimbra Tip and Technique #8, Password Policy Part II
มาต่อด้วยเรื่อง password policy กันนะครับ
zimbra สามารถ set password policy ได้ หลายรูปแบบ ถ้า user กำหนด password ไม่ตรงตาม policy ที่กำหนดไว้ ระบบจะไม่ยอมรับ password ครับ
password policy กลุ่มแรก เป็นรูปแบบของ password มีดังนี้ครับ
- Minimum password length : กำหนดความยาวของ password ที่สั้นที่สุดที่ระบบยอมรับได้
- Maximum password length : กำหนดความยาวสูงสุดของ password
- Minimum upper case characters : กำหนดจำนวนต่ำสุดของตัวอักษรภาษาอังกฤษตัวใหญ่ (ABCD....) ที่ต้องมีใน password
- Minimum lower case characters: กำหนดจำนวนต่ำสุดของตัวอักษรภาษาอังกฤษตัวเล็ก (abcd....) ที่ต้องมีใน password
- Minimum punctuation symbols: กำหนดจำนวนต่ำสุดของตัวอักษรสัญลักษณ์ (ทีไม่ใช้ตัวอักษรและตัวเลข เช่น !@#$%^....) ที่ต้องมีใน password
- Minimum numeric characters: กำหนดจำนวนต่ำสุดของตัวเลข ที่ต้องมีใน password
password policy ที่เรากำหนดได้ ยังมีอีกนะครับ โปรดติดตามตอนต่อไป
ครั้งที่แล้ว : Password Policy, Part I
ตอนต่อไป : Password Policy, Part III
zimbra สามารถ set password policy ได้ หลายรูปแบบ ถ้า user กำหนด password ไม่ตรงตาม policy ที่กำหนดไว้ ระบบจะไม่ยอมรับ password ครับ
password policy กลุ่มแรก เป็นรูปแบบของ password มีดังนี้ครับ
- Minimum password length : กำหนดความยาวของ password ที่สั้นที่สุดที่ระบบยอมรับได้
- Maximum password length : กำหนดความยาวสูงสุดของ password
- Minimum upper case characters : กำหนดจำนวนต่ำสุดของตัวอักษรภาษาอังกฤษตัวใหญ่ (ABCD....) ที่ต้องมีใน password
- Minimum lower case characters: กำหนดจำนวนต่ำสุดของตัวอักษรภาษาอังกฤษตัวเล็ก (abcd....) ที่ต้องมีใน password
- Minimum punctuation symbols: กำหนดจำนวนต่ำสุดของตัวอักษรสัญลักษณ์ (ทีไม่ใช้ตัวอักษรและตัวเลข เช่น !@#$%^....) ที่ต้องมีใน password
- Minimum numeric characters: กำหนดจำนวนต่ำสุดของตัวเลข ที่ต้องมีใน password
password policy ที่เรากำหนดได้ ยังมีอีกนะครับ โปรดติดตามตอนต่อไป
ครั้งที่แล้ว : Password Policy, Part I
ตอนต่อไป : Password Policy, Part III
Hack Email Account, Part I
พวกเราหลายๆคน ที่ทำหน้าที่ admin ระบบ email
คงเคยต้องรบกับผู้ใช้ระบบเมล์ ว่า ทำไมต้องกำหนด password policy
ให้ยากหรือซับซ้อนจัง
ตัวอย่างเช่น ต้องมีตัวเลขหนึ่งตัว ตัวอักษรตัวใหญ่หนึ่งตัว ความยาวตัวอักษรอย่างน้อยต้องแปดตัว เปลี่ยนทุกสามเดือน ห้ามซ้ำกับของเดิมอย่างน้อย 4 ตัว และอื่นๆ (เอาแค่เบาะๆ ก่อนละกัน)
หลายๆคน ก็เลี่ยงๆตอบว่า เป็นนโยบายบริษัทบ้าง เจ้านายสั่งบ้าง
บางคนหรือหลายๆ บริษัทคิดว่าไม่สำคัญ กว่าจะรู้ตัว (หรือไม่รู้ตัว) ก็ถูก hack ไปแล้ว
ที่ต้องทำให้ยาก เพื่อไม่ให้ hacker สามารถเดา password ได้นะสิครับ
บางคนคิดว่าข้อมูลบริษัทเรา ไม่มีอะไรสำคัญ เอาไปก็ไม่ได้อะไร ....
ถูกครับ hacker พวกนี้เค้าไม่เอาข้อมูลไปหรอก แต่เค้าจะ
1) เอา list รายชื่อ email ของคนที่คุณเคยคุยด้วยไป เอาไปทำหยัง เอาไว้ส่ง spam กับไว้เจาะ ระบบเมล์ต่อสิครับ
2) เอา account ของคุณไว้ส่ง spam
หลายคนคงเคยเจอ หรือเคยได้ยิน อยู่ดีๆ เมล์ของบางบริษัท(หรือทั้งบริษัท) ติด black list ส่งเข้า google หรือ hotmail ไม่ได้ โดยให้สาเหตุว่า email ของคุณส่ง spam ออกมา ก็เพราะสาเหตุข้อ 2) นี้แหละ
ธุรกิจเสียหาย ไปเท่าไหร่ ไม่รู้ คิดเอาเอง ภาพพจน์อีกต่างหาก คิดดูสิ เกิดลูกค้าเจอ spam mail ถูกส่งจาก email address ของบริษัทคุณ เค้าจะคิดยังไง
จบดื้อๆ ตรงนี้เลยละกันนะครับ เดี๋ยวไว้ต่อ ภาคสอง ว่า hacker ได้ list ของ email แล้ว เอาไป hack ต่อได้ไง แล้วมันเกิดอะไรขึ้น
สวัสดีครับ
Hacking Email Account, Part II
ตัวอย่างเช่น ต้องมีตัวเลขหนึ่งตัว ตัวอักษรตัวใหญ่หนึ่งตัว ความยาวตัวอักษรอย่างน้อยต้องแปดตัว เปลี่ยนทุกสามเดือน ห้ามซ้ำกับของเดิมอย่างน้อย 4 ตัว และอื่นๆ (เอาแค่เบาะๆ ก่อนละกัน)
หลายๆคน ก็เลี่ยงๆตอบว่า เป็นนโยบายบริษัทบ้าง เจ้านายสั่งบ้าง
บางคนหรือหลายๆ บริษัทคิดว่าไม่สำคัญ กว่าจะรู้ตัว (หรือไม่รู้ตัว) ก็ถูก hack ไปแล้ว
ที่ต้องทำให้ยาก เพื่อไม่ให้ hacker สามารถเดา password ได้นะสิครับ
บางคนคิดว่าข้อมูลบริษัทเรา ไม่มีอะไรสำคัญ เอาไปก็ไม่ได้อะไร ....
ถูกครับ hacker พวกนี้เค้าไม่เอาข้อมูลไปหรอก แต่เค้าจะ
1) เอา list รายชื่อ email ของคนที่คุณเคยคุยด้วยไป เอาไปทำหยัง เอาไว้ส่ง spam กับไว้เจาะ ระบบเมล์ต่อสิครับ
2) เอา account ของคุณไว้ส่ง spam
หลายคนคงเคยเจอ หรือเคยได้ยิน อยู่ดีๆ เมล์ของบางบริษัท(หรือทั้งบริษัท) ติด black list ส่งเข้า google หรือ hotmail ไม่ได้ โดยให้สาเหตุว่า email ของคุณส่ง spam ออกมา ก็เพราะสาเหตุข้อ 2) นี้แหละ
ธุรกิจเสียหาย ไปเท่าไหร่ ไม่รู้ คิดเอาเอง ภาพพจน์อีกต่างหาก คิดดูสิ เกิดลูกค้าเจอ spam mail ถูกส่งจาก email address ของบริษัทคุณ เค้าจะคิดยังไง
จบดื้อๆ ตรงนี้เลยละกันนะครับ เดี๋ยวไว้ต่อ ภาคสอง ว่า hacker ได้ list ของ email แล้ว เอาไป hack ต่อได้ไง แล้วมันเกิดอะไรขึ้น
สวัสดีครับ
Hacking Email Account, Part II
วันอังคารที่ 2 เมษายน พ.ศ. 2556
Default Web Client Port on Zimbra 8
ลองเล่น zimbra 8 กันหรือยังครับ
นอกจากหน้าตาที่เปลี่ยนไป ผมพบว่า จากเดิม หลังจากที่ install ปกติ user ใช้งาน zimbra หรือที่เรียกว่า web client ได้ ผ่านทาง http (port 80)
ใน version 8 ( ผมลองลง 8.0.2) default จะให้ user ใช้งานผ่านทาง https (port 443) แทนนะครับ
แต่ถ้า upgrade จาก version 7 ที่ default ให้ user ใช้งานผ่าน http หลังการ upgrade เป็น version 8 ก็จะยังคงใช้ http เหมือนเดิมนะครับ
แต่ถ้าอยาก เปลี่ยน port ของ web client บน zimbra มีวิธีครับ
ผมคุ้นๆ ว่าจะมีคน post ไว้แถวนี้ แต่ไม่เป็นไรครับ ครั้งหน้า เรามาพูดถึงวิธีการเปลี่ยน port ของ web client กัน
นอกจากหน้าตาที่เปลี่ยนไป ผมพบว่า จากเดิม หลังจากที่ install ปกติ user ใช้งาน zimbra หรือที่เรียกว่า web client ได้ ผ่านทาง http (port 80)
ใน version 8 ( ผมลองลง 8.0.2) default จะให้ user ใช้งานผ่านทาง https (port 443) แทนนะครับ
แต่ถ้า upgrade จาก version 7 ที่ default ให้ user ใช้งานผ่าน http หลังการ upgrade เป็น version 8 ก็จะยังคงใช้ http เหมือนเดิมนะครับ
แต่ถ้าอยาก เปลี่ยน port ของ web client บน zimbra มีวิธีครับ
ผมคุ้นๆ ว่าจะมีคน post ไว้แถวนี้ แต่ไม่เป็นไรครับ ครั้งหน้า เรามาพูดถึงวิธีการเปลี่ยน port ของ web client กัน
วันจันทร์ที่ 1 เมษายน พ.ศ. 2556
Hacking Email Account , Part II
ผมเคยเขียนถึงเรื่องการ Hack email account
ไปแล้วว่า hacker ทำไปเพื่อเอารายชื่อ email address ที่เราเคยติดต่อ
เก็บไว้เพื่อใช้ส่ง spam
บังเอิญผมได้ยินกรณีที่น่ากลัวก ว่านั้น คือ hacker เอา account เราไว้ส่ง
email หลอกลวง เพื่อให้โอนเงิน
ปกติที่เราเคยได้ยินว่ากรณีนี้จ ะ
เกิดกับ account ส่วนตัวบน hotmail, yahoo,google แต่ถ้าเป็นกรณีที่เป็น
account ของบริษัทหละ แล้วถ้าเกิด email ที่ถูก hack เป็นของ...
sales แล้ว เจ้า hacker ดันจับเรื่องที่ sale กำลังคุยกับลูกค้าได้
แล้วดันปลอม email บอกให้ลูกค้าโอนเงินเข้าบัญชีหล อกๆ ที่ hacker เปิดไว้หละ คิดดูก็แล้วกัน
และถ้าลูกค้ารู้ว่า email account ของบริษัทเราถูก hack
ความน่าเชื่อถือกับลูกค้าเจ้านั ้น
คงหมดกัน
เพราะฉะนั้น เราควรดูแล email account อย่าให้ถูก hack ได้นะครับ
วิธีป้องกันอย่างนึง คือการ set password policy ที่ผมเคยเขียนไปแล้ว ลองหาอ่านดูกันนะครับ
Hacking Email Account, Part I
Setting Password Policy, Part I
Setting Password Policy, Part II
บังเอิญผมได้ยินกรณีที่น่ากลัวก
ปกติที่เราเคยได้ยินว่ากรณีนี้จ
เพราะฉะนั้น เราควรดูแล email account อย่าให้ถูก hack ได้นะครับ
วิธีป้องกันอย่างนึง คือการ set password policy ที่ผมเคยเขียนไปแล้ว ลองหาอ่านดูกันนะครับ
Hacking Email Account, Part I
Setting Password Policy, Part I
Setting Password Policy, Part II
วันอาทิตย์ที่ 31 มีนาคม พ.ศ. 2556
Zimbra Tips and Technique #9, Password Policy Part III (ภาคจบ)
มาต่อกันอีกครั้ง เรื่อง password
policy ของ zimbra ครับ เหลืออีก 3 ค่าที่ admin zimbra
สามารถกำหนดนโยบายการตั้ง password ของผู้ใช้ได้
Minimum password age : กำหนดอายุขั้นต่ำของ password หรืออีกนัยหนึ่งคือ ห้ามเปลี่ยน password บ่อยกว่าระยะเวลาที่กำหนด (เป็นวัน)
Maximum password age: เป็นการกำหนดอายุของ password ระบบจะบังคับให้ผู้ใช้เปลี่ยน password ใหม่ ถ้า password เดิมถุกใช้งานนานเกิดกว่าระยะเว ลาที่กำหนดนี้
Minimum number of unique password history: เป็นการกำหนดว่าจะให้ระบบเก็บ password เก่าของ user แต่ละคนย้อนหลังไปกี่ครั้ง โดยระบบจะตรวจ password ใหม่ด้วยว่า ต้องไม่ซ้ำกับ password เก่าที่ถูกเก็บไว้
ตอนที่แล้ว : Password Policy, Part I
ตอนที่แล้ว : Password Policy, Part II
Minimum password age : กำหนดอายุขั้นต่ำของ password หรืออีกนัยหนึ่งคือ ห้ามเปลี่ยน password บ่อยกว่าระยะเวลาที่กำหนด (เป็นวัน)
Maximum password age: เป็นการกำหนดอายุของ password ระบบจะบังคับให้ผู้ใช้เปลี่ยน password ใหม่ ถ้า password เดิมถุกใช้งานนานเกิดกว่าระยะเว
Minimum number of unique password history: เป็นการกำหนดว่าจะให้ระบบเก็บ password เก่าของ user แต่ละคนย้อนหลังไปกี่ครั้ง โดยระบบจะตรวจ password ใหม่ด้วยว่า ต้องไม่ซ้ำกับ password เก่าที่ถูกเก็บไว้
ตอนที่แล้ว : Password Policy, Part I
ตอนที่แล้ว : Password Policy, Part II
วันศุกร์ที่ 29 มีนาคม พ.ศ. 2556
Data Deduplication on Zimbra
Data Deduplication on zimbra
อีก feature หนึ่งของ zimbra ที่เราไม่ค่อยรู้กัน คือ duduplication (dedup) เป็น feature ที่จะจัดเก็บข้อมูลที่มีการซ้ำซ ้อนกัน แค่เพียง copy เดียว ผลก็คือ
ประหยัดเนื้อที่ในการเก็บเมล์
เวลาที่มีเมล์ที่จ่าหน้าถึงผู้ร ับหลายคน ส่งเข้ามาเก็บในระบบ zimbra
ตัวระบบจะเก็บเมล์นั้นแค่เพียง copy เดียวเท่านั้น
ตอนแรกผมก็ยังไม่มั่นใจ ว่าใน zimbra open source ทำได้จริงหรือเปล่า เลยได้ลองทดสอบดู ผลก็คือ zimbra ทำการเก็บแค่ copy เดียว จริงๆ ครับ และเราไม่ต้องทำอะไรเลย feature นี้ถูกเปิดบน zimbra open source อยู่แล้วครับ
อีก feature หนึ่งของ zimbra ที่เราไม่ค่อยรู้กัน คือ duduplication (dedup) เป็น feature ที่จะจัดเก็บข้อมูลที่มีการซ้ำซ
เวลาที่มีเมล์ที่จ่าหน้าถึงผู้ร
ตอนแรกผมก็ยังไม่มั่นใจ ว่าใน zimbra open source ทำได้จริงหรือเปล่า เลยได้ลองทดสอบดู ผลก็คือ zimbra ทำการเก็บแค่ copy เดียว จริงๆ ครับ และเราไม่ต้องทำอะไรเลย feature นี้ถูกเปิดบน zimbra open source อยู่แล้วครับ
วันจันทร์ที่ 25 มีนาคม พ.ศ. 2556
Zimbra Tips and Technique #7 Password Policy Part I
เราสามารถกำหนดคุณสมบัติของ password (password policy)ที่กำหนดให้
password ของ user เป็นไปตามที่เราต้องการได้
ใน zimbra เราจะกำหนดที่ class of service (COS)
วิธีการคือ
login ที่ admin console (https://your_site:7071)
1) ที่คอลัมน์ด้านซ้าย ใต้เมนู class of service เลือก cos มาสักอัน เช่น default
2)ไปที่หน้าจอด้านขวา เลือก advance tab
3) ใน advance tab scroll ลงมาหากลุ่มของ config ที่ชื่อ password
ครั้งต่อไป เราจะพูดถึง password policy แต่ละอันว่า ถ้า set แล้ว จะเกิดอะไรขึ้นนะครับ
ตอนต่อไป : Password Policy, Part II
ใน zimbra เราจะกำหนดที่ class of service (COS)
วิธีการคือ
login ที่ admin console (https://your_site:7071)
1) ที่คอลัมน์ด้านซ้าย ใต้เมนู class of service เลือก cos มาสักอัน เช่น default
2)ไปที่หน้าจอด้านขวา เลือก advance tab
3) ใน advance tab scroll ลงมาหากลุ่มของ config ที่ชื่อ password
ครั้งต่อไป เราจะพูดถึง password policy แต่ละอันว่า ถ้า set แล้ว จะเกิดอะไรขึ้นนะครับ
ตอนต่อไป : Password Policy, Part II
วันศุกร์ที่ 22 มีนาคม พ.ศ. 2556
Zimbra Tip and Technique #6: Spam Training
user
แต่ละคนสามารถสอน zimbra ให้รับรู้ว่าเมล์ไหนเป็น spam ได้ โดยการย้าย
email ที่เป็น spam ไปอยู่ใน Junk mailbox ครับ
แต่ถ้าพบว่ามันดันย้ายเมล์ที่ไม ่เป็น
spam ไปไว้ใน Junk ก็แค่ย้ายออกมา ก็จะเป็นการสอนมันเหมือนกันว่า
นี่ไม่ใช่ spam นะ
สำหรับวิธีนี้ สิ่งที่ยากที่สุด คือต้องหว่านล้อมให้ user แต่ละคนทำเอง มาบอก admin ให้ช่วยทำให้ คงไม่ไหว
แต่ถ้าพบว่ามันดันย้ายเมล์ที่ไม
สำหรับวิธีนี้ สิ่งที่ยากที่สุด คือต้องหว่านล้อมให้ user แต่ละคนทำเอง มาบอก admin ให้ช่วยทำให้ คงไม่ไหว
สมัครสมาชิก:
บทความ (Atom)