บันทึกการสร้าง LVM Partition

เนื่องจากมี disk ขนาดแค่ 560 GB หลายลูก แต่ต้องการเอามารวมกันให้เป็น Volume ใหญ่ๆ และไม่ใช้ RAID เขียนเป็นบันทึกเก็บไว้ จึงอยากเอามานำเสนอ เผื่อเป็นประโยชน์ 1. มี /dev/sdb , /dev/sdc , /dev/sdd ก้อนละ 560 GB อยู่ ต้องทำ LVM เป้าหมายคือ ต้องการได้ Device สำหรับการ mount ชื่อ /dev/virtual1/logical1 reference: http://www.howtoforge.com/linux_lvm http://www.linuxquestions.org/questions/linux-hardware-18/lvcreate-with-max-size-available-749253/ 2. ติดตั้ง lvm software ด้วยคำสั่ง apt-get install lvm2 dmsetup mdadm reiserfsprogs xfsprogs 3. สร้าง partition ใน physical disk ให้เป็นของ LVM Partition sudo su fdisk /dev/sdb Command (m for help): n Partition type: p Partition number (1-4, default 1): 1 First sector (2048-1073741823, default 2048): Last sector, +sectors or +size{K,M,G} (2048-1073741823, default 1073741823): Command (m for help): t Hex code (type L to list codes): 8e Command (m for help): w ทำเช่นเดียวกับกับทั้ง /dev/sdc, /dev/sdd 4. ต่อไป สร้าง Physical Volume ของ LVM pvcreate /dev/sdb1 /dev/sdc1 /dev/sdd1 pvdisplay 5. ต่อไป สร้าง Group Volume ของ LVM vgcreate virtual1 /dev/sdb1 /dev/sdc1 /dev/sdd1 vgdisplay vgscan 6. ต่อไป สร้าง Logical Volume ของ LVM (เต็มพื้นที่ที่มี) lvcreate –name logical1 -l 100%Free virtual1 lvdisplay lvscan 7. ต่อไป สร้าง Filesystem แบบ ext4 mkfs.ext4 /dev/virtual1/logical1 8. แก้ fstab แล้ว mount vi /etc/fstab /dev/virtual1/logical1 /var/spool/mailbackup ext4 rw,noatime 0 0 mount -a

Read More »

แนวทางการ Backup บน Ubuntu Server (กรณีระบบ PSU EMail)

เนื่องจากจะจัดทำระบบ Backup and Recovery ระบบ Mail ซึ่งทำงานอยู่บน Ubuntu จึงทำการรบรวมข้อมูล และหาแนวทางที่เหมาะสม   ก่อนจะตัดสินใจเลือก แผนการ Backup ที่เหมาะสม ก็ควรพิจารณาเรื่องต่อไปนี้ด้วย [1] 1. WHY: จุดประสงค์การ Backup/Restore, ถ้าข้อมูลสูญหายจริงๆจะเกิดความเสียหายขนาดไหน ? 2. WHAT: สิ่งที่จะทำการ Backup, ทั้ง Hard Drive? หรือเป็นข้อมูลบางส่วน? 3. WHEN: เวลาที่ดีที่สุดที่จะ Backup, บ่อยขนาดไหน, จะทำการ Full/Incremental Backup เมื่อใดบ้าง ? 4. WHERE: เก็บ Backup ไว้ที่ใด, ในเครื่องนั้นๆ, เก็บไว้ภายนอก หรือใช้บริการ Cloud Storage 5. MEDIUM: สื่อที่ใช้จัดเก็บ, USB Stick, External HDD, Tape หรือ Backup Server   ประเภทของการ Backup [1] 1. Full: สำรองทุกสิ่งอย่าง 2. Incremental: สำรองเฉพาะสิ่งที่เพิ่มขึ้นมา นับจากการสำรองครั้งล่าสุด 3. Differential:  เหมือนกับ Incremental แต่เก็บเฉพาะไฟล์ที่ยังไม่ปรับค่า Archive bit (ในกรณี Windows Filesystem)   วิธีการ Backup : จากการสำรวจ พบว่าบน Ubuntu มีเครื่องมือ และวิธีการให้ใช้มากมาย เช่น SimpleBackupSuite, grsync, pybackpack หรือที่ติดมาพร้อมกับ Ubuntu Desktop อย่าง Déjà Dup [1] แต่เครื่องมือเหล่านี้เหมาะสำหรับการใช้งานแบบ Desktop Computer มากกว่า แต่ในระบบ Mail Server ซึ่งมีปริมาณข้อมูลจำนวนมาก และเป็นของผู้ใช้จำนวนมาก (ในระบบมีผู้ใช้รวม 6000 คน) จึงควรต้องมีการทำงานที่ยืดหยุ่นกว่า และสามารถปรับแต่งตามต้องการได้ จึงพิจารณาใช้ tar เพื่อทำการ Full [2] และ Incremental Backup [3] แล้วจึงใช้ rsync ส่งไฟล์ไปเก็บไว้ที่ Backup Server ต่อไป   ในกรณี PSU Email มีลักษณะดังนี้ 1. เก็บ email แต่ละฉบับเป็นแบบไฟล์ ไฟล์ขนาดเล็กๆ 2. ไม่มีการเขียนทับไฟล์เดิม (เว้นแต่ Index ของ Mailbox ซึ่งไม่จำเป็นนัก เพราะ ต้อง rebuild ใหม่เมื่อทำการ restore) 3. เมื่อมี email ใหม่เข้ามา จะทำการสร้างไฟล์ใหม่ โดยแต่ละไฟล์จะเป็นตัวเลข เพิ่มขึ้นเรื่อยๆ ไม่ซ้ำเดิมแน่นอน 4. เมื่อผู้ใช้สามารถ สร้าง และ rename ชื่อ directory ได้ พิจารณาคำถามข้างต้น แล้วให้ตำตอบ WHY: เพื่อสำรอง email ไว้ให้ ในกรณีฉุกเฉินที่ผู้ใช้ลบ email ไปโดยไม่ตั้งใจ WHAT: email อยู่บน disk แยกออกไป, ทำการสำรองเฉพาะไฟล์ใน directory จัดเก็บ ซึ่งใช้เนื้อที่รวม 600 GB ซึ่งเป็นของผู้ใช้ในระบบ 6,000 คน, ข้อมูลมีลักษณะเป็นไฟล์ขนาดเล็กจำนวนมาก และมีการเพิ่มและลดจำนวน แต่ไม่มีการแก้ไขไฟล์, มีการเพิ่ม/ลบ/เปลี่ยนชื่อ directory WHEN: จากสถิติการใช้งาน พบว่า ผู้ใช้ใช้งานน้อยที่สุดหลังเวลา 03:00 ของทุกวัน

Read More »

วิธีตรวจสอบเว็บไซต์ที่โดน Hack #1

จากการเข้าแก้ไขเว็บไซต์ต่างๆที่โดน Hack ในช่วง 2 ปีที่ผ่าน พบว่า จะมีรูปแบบเดิมๆคือ 1. มีการเปิด Permission ของ directory เป็นแบบ 777 หรือ world writable หรือแม้แต่เปิดสิทธิ์ให้ web user เช่น apache/httpd/www-data สามารถเขียนได้ 2. เมื่อมีพื้นที่ให้ web user เขียนได้ แล้ว Web Application นั้นๆ มีช่องโหว่ หรือไม่ก็มีการทำงานปรกติที่เปิดให้ Web User เขียนไฟล์ได้ตามปรกติ ก็เป็นช่องให้เกิดการ “วางไฟล์” ซึ่ง Hacker จะเข้ามาเรียกไฟล์ดังกล่าว ซึ่งจะได้สิทธิเป็น Web User ทำการแก้ไขไฟล์, นำไฟล์ .c มาวางแล้ว compile ต่อไป ซึ่งอาจจะทำให้เกิด Buffer Overflow จนกระทั่งสามารถครอง Server ได้เลย วิธีการที่แนะนำสำหรับการทำ Website ให้ปลอดภัย 1. ในเครื่องที่เป็น Production Server ต้องไม่มี Compiler, Development Tools เช่น gcc อยู่เลย 2. หากใช้ CMS ต่างๆ เช่น Joomla การปรับปรุงหลักๆเช่นการเปลี่ยน Template, เพิ่ม Component หรือ อะไรที่มีการเปลี่ยนแปลงระดับไฟล์ (ไม่รวมการเขียนพวก Article หรือบทความ เพราะเป็นการเขียนไปยัง Database ไม่ใช่ระดับไฟล์) ก็ควร ยกเลิกการทำงานทาง Backend ผ่าน Web แต่ให้ใช้วิธี สร้างหรือปรับเปลี่ยนจากเครื่องทดสอบ แล้วใช้วิธี FTP ขึ้นไป บน Production Server แทน แล้วปรับให้ Owner เป็นอะไรที่ไม่ใช่ Web User หรือ ต้องไม่ให้ Web User เขียนได้ วิธีนี้ อาจจะไม่สะดวก แต่ แลกกับความปลอดภัย เป็นวิธีที่จำเป็น ลองสังเกตว่า ทำไม Joomla รุ่นใหม่ๆ จึงเปิดให้มีการ Update ผ่านทาง FTP ด้วย 3. ถ้า Website มีความจำเป็นต้องให้ผู้ใช้ทั่วไปสามารถ Upload ไฟล์ได้ ต้องเปลี่ยนสิทธิ์ Permission ใน directory ที่เอาไฟล์ขึ้นไปวางนั้น ต้องไม่สามารถ Execute ได้, ลองพิจารณาการใช้ .htaccess ร่วมด้วย 4. ในกรณี CMS ถ้ามีการใช้ Component หรือ Module อะไร ก็ต้องติดตามดูเรื่อง ช่องโหว่ต่างๆ และทำการปรับปรุงรุ่นสม่ำเสมอ ล่าสุด น่าเป็นห่วงกลุ่มที่ใช้ JCE (รุ่นยังไม่แน่ชัด) กับ Phoca Gallery เพราะมีความสามารถในการ Upload ไฟล์และเป็นที่นิยม ทั้งของกลุ่มผู้ใช้และ Hacker อาจจะทำให้ใช้งานยากขึ้น แต่ ถ้าต้องการความปลอดภัย เรื่องเหล่านี้จำเป็นมาก ต่อไป เมื่อพบว่าโดน Hacker เข้ามาเยี่ยมแล้ว … จะมีอาการอย่างไรบ้าง … ล่าสุด พบ Website ที่ใช้ Joomla โดน Hack, โดยเมื่อเปิดไปยัง URL หลัก จะพบว่ามีการ Redirect ไปยัง Website อื่นๆ และเปลี่ยนไปเรื่อย เมื่อลองดู Source โดยการ View Source พบว่ามีการแทรกบรรทัดสุดท้ายไว้ว่า

Read More »

วิธีลดขนาดไฟล์ Microsoft Word ให้เล็กลง

ในการทำเอกสารต่างๆ โดยเฉพาะ Microsoft Word ผู้ใช้มักจะ ใส่รูปภาพ เข้ามาในไฟล์ เพื่อให้เกิดความสวยงาม และสื่อความหมายในการบรรยาย บ่อยครั้ง เป็นภาพ “หน้าจอ” โดยการ “Print Screen” หรือ การ เอาภาพจากกล้องดิจิตอล ซึ่งปัจจุบันมีความละเอียดสูง เช่นกล้อง 5MP เป็นอย่างต่ำ หรือกล้องใหม่ๆ 12 MP กันเลยทีเดียว ซึ่งภาพที่ได้จะมีขนาดใหญ่มาก เมื่อนำมาใส่ในไฟล์เอกสาร แล้วทำการ Resize ภาพ หรือ Crop เอาเฉพาะบางส่วนของภาพ ก็มักจะคิดว่า ขนาดของไฟล์ จะลดลงไปด้วย ซึ่งความจริงไม่ใช่อย่างนั้น เพราะโปรแกรม Microsoft Word จะยังเก็บภาพขนาดเดิมเอาไว้ เพียงแต่เลือกแสดงบางส่วน หรือ ลดขนาดการแสดงผลเท่านั้น จึงทำให้ไฟล์มีขนาดใหญ่ … และอาจจะเป็นปัญหาได้ เมื่อไฟล์มีขนาดใหญ่มากๆ, การส่งไฟล์ผ่าน email ก็จะมีขนาดใหญ่ จนบางครั้ง ผู้รับไม่สามารถรับได้ เช่นส่งไฟล์ขนาดเกิน 25 MB ไปยัง Gmail/Hotmail เป็นต้น วิธีการลดขนาดไฟล์ 1. คลิกที่ภาพในไฟล์ >Pictures Tools > Format > Compress Pictures แล้วเลือกความละเอียดขนาดแค่ email ก็พอ คลิก OK แล้ว Save 2. ผลการลดขนาด จะทำให้ไฟล์เดิมขนาด 6 MB ลดเหลือ 2 MB ในทันที

Read More »

Facebook นั่นแหล่ะ ทำให้มีจดหมายขยะมากขึ้น ?!?!

ต้องยอมรับว่า ทุกวันนี้ ใครที่ทำงานกับคอมพิวเตอร์ เริ่มต้นสิ่งแรกๆที่มักจะทำ คือ เปิด Internet Browser แล้ว เว็บไซต์ที่จะเปิดลำดับแรกๆ คือ Facebook และพฤติกรรมที่มันจะทำคือ Login ค้างเอาไว้ แล้วไปทำงานอย่างอื่นต่อ แล้วเมื่อ Facebook เป็นที่นิยมอย่างมาก ก็ทำให้ website ต่างๆ อำนวยความสะดวกในการใช้งานกับผู้ใช้มากยิ่งขึ้น โดยให้ผู้ใช้ สามารถ Login เข้าใช้งานได้ โดยไม่ต้องสมัคร ขอเพียงมี Facebook Account ก็สามารถเข้าใช้งานได้ สิ่งที่ตามมา แต่ผู้ใช้จำนวนมาก “ไม่รู้” เนื่องจาก “ไม่อ่าน” คือ เมื่อใช้ Facebook Account ในการ Login แล้ว ระบบเหล่านั้น จะสอบถาม “สิทธิ” การเข้าถึงข้อมูล ส่วนตัว บน Facebook Account ด้วย และมันจะเสริมด้วยบริการ “แจ้งให้เพื่อนๆทราบ” ว่าเราได้เข้าใช้งานแล้ว โดยการเข้าไปอ่าน รายชื่อ เพื่อนๆ (Friends) แล้วส่ง Notification ไปยังเพื่อนๆของเรา … ปัญหาคือ เพื่อนๆของเรา ก็ “ไม่อ่าน” เช่นกัน เห็นอะไรมา ก็ คลิก คลิก คลิก ก็เลยทำให้การกระจายข้อมูล Website นั้นๆ ไปทั่วระบบ Social Network อย่างที่เป็นไปในปัจจุบัน ซึ่ง ก็จะบรรลุวัตถุประสงค์ของเจ้าของ Website เขาหล่ะ และนั่น … เป็นที่มาของปัญหา จดหมายขยะ มากมาย เพราะบางอย่างก็เป็นสิ่งที่ต้องการสำหรับบางคน แต่บางคนก็ไม่ต้องการ คราวนี้มาดูรายละเอียด และให้ “อ่าน” ให้มากขึ้นก่อนจะ คลิก อะไรไป 1. ขอยกตัวอย่าง Linked-in และ SkillPage ซึ่งเป็นปัญหาในปัจจุบัน ที่มีผู้ใช้หลายท่านกำลังรู้สึกรำคาญกับข้อมูลเหล่านี้ Linked-in และ SkillPage เป็น Social Network “อีกตัวหนึ่ง” สำหรับผู้ที่อยากจะ หางาน หรือเปิดตัวสู่สังคม ส่วน SkillPage จะไว้สำหรับให้ผู้ที่อยากหางานโดยเน้นให้ใส่ข้อมูลเกี่ยวกับความสามารถ (Skill) ที่มี หน้าจอการ Login ด้วย Facebook Account ของ Linked-in หน้าจอการ Login ด้วย Facebook Account ของ SkillPage จะเห็นว่า มีปุ่มให้คลิก เพื่อ Login ด้วย Facebook Account/ Google Account เป็นต้น 2. เมื่อคลิกเข้ามาแล้ว หาก Login Facebook ค้างเอาไว้ ก็จะมาหน้าที่ระบบจะถาม Permission ในการเข้าถึงข้อมูล … ซึ่งถ้าไม่อ่าน ก็จะเปิดให้พวกนี้เข้าอ่าน Friends ของเราได้ และเป็นช่องทางในการกระจายตัวต่อไป Linked-in SkillPage   3. หลังจากนั้น จะให้เราอนุญาต ให้เขา Post ข้อความต่างๆบน Facebook แทนตัวเรา และมักจะตบท้ายด้วย การ “เชิญเพื่อนๆของคุณสิ” Grow Your Network … ใช่สิ Network เขาคุณไง ไม่ใช่ของฉัน   4. เมื่อคลิก Continue ก็จะพยายามให้ Login ด้วย Gmail Account และจะขออ่าน Google  Contact ของเรา   จากนั้น หากเราหลงกล ระบบก็จะอ่าน Google Contact ของท่าน

Read More »