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

ไปที่คำสั่ง Diagnostics เลือก Backup/Restore

วิธีการเลือกเมนู


Continue reading

ตั้งแต่ Proxmox VE 3.0 การใช้งาน Web Interface นั้นไม่ได้ใช้ Apache แล้ว นักพัฒนาของ Proxmox เองได้เปลี่ยนมาใช้ API-server ที่เรียกว่า “pveproxy” ซึ่งทำงานบน TCP port 8006 ผ่าน https สำหรับ how to นี้ เราจะมาดูวิธีการใช้ Nginx ทำ reverse proxy สำหรับ PVE proxy ให้เข้าถึงด้วย standard port อย่าง http:80 กัน

ก่อนอื่นติดตั้ง Nginx กันก่อน

apt-get install nginx

ลบ configuration file เดิม

rm -f /etc/nginx/sites-enabled/default


Continue reading

กฎ (Rule) เป็นส่วนประกอบหลักของ Firewall ที่ใช้ในการบังคับกฎเกณฑ์ต่างๆให้กับระบบ ซึ่งกฎที่มีใน pfSense ค่อนข้างจะยืดหยุ่น โดยเราจะใช้กฎนี้ในการกำหนดสิทธิ์การเข้าถึงทรัพยากร (Resource) บนเครือข่ายของเรา ถ้าเปรียบเทียบกับชีวิตจริงก็เสมือนกับพนักงานรักษาความปลอดภัยประจำอาคาร ซึ่งจะต้องมีการตรวจสอบ ค้นตัว เป็นลำดับขั้นๆ ส่วน Resource ก็เหมือนอาคารที่เก็บเอกสารที่เราต้องการจะเข้าถึงนั่นเอง โดยกฎที่ของ Firewall จะทำงานจากบนลงล่าง ผมแนะนำว่าควรจะใส่กฎที่ห้าม (Denied) ไว้บนสุดเสมอ ส่วนกฎอนุญาต(Allow) ไว้ด้านล่าง ตัวอย่างเช่น

ตัวอย่างไดอะแกรม

จากภาพ เป้าหมายของเราคือ ไม่ให้เครื่องจากวง IP ต้นทาง 192.168.27.0/24 (192.168.27.1 – 192.168.27.254) ไปยัง วง IP 192.168.37.0/24 (192.168.37.1-192.168.37.254) ผ่าน Port 80 (HTTP)


Continue reading

Docker Registry คือพื้นที่ไว้เป็นแหล่งรวมและแจกจ่ายไฟล์ Images ต่างๆทั้ง Base Images และ Images ที่ได้รับการพัฒนาหรือปรับแต่งจากผู้พัฒนาด้วยกระบวนการ Pull/Push Images โดยที่ Docker Registry จะมีการให้บริการอยู่สองรูปแบบคือ

  1. การให้บริการแบบ Public Docker Registry ที่เรียกกันว่า DockerHub ซึ่งทุกคนที่ใช้งาน Docker สามารถเข้าถึงได้อ่านขั้นตอนการใช้งานเพิ่มเติมได้จาก เรียกใช้ Docker Image จาก Docker Hub กัน
  2. การให้บริการเแบบ Private Docker Registry ซึ่งเป็นการให้บริการแบบปิดที่จัดทำขึ้นภายในองค์กร กลุ่มบุคคคล หรือใช้งานส่วนตัว Private Docker Registry นั้นก่อนใช้งานต้องมีการติดตั้งลงบนเครื่อง Server ที่ต้องการก่อนการใช้งานสามารถอ่านข้อมูลการติดตั้งเพิ่มเติมได้จาก ติดตั้ง Docker Registry ไว้ใช้เอง

การที่จะรักษาความปลอดภัยให้กับ Private Docker Registry จะใช้ Key ในการระบุตัวตน Private Key และ Public Key รวมถึงรหัสผ่านและเข้าถึงด้วย https เพื่อความปลอดภัย มาเริ่มกันเลย…


Continue reading

Ubuntu Core เปิดตัวมาได้ระยะหนึ่งแล้วซึ่งทาง Canonical ตั้งเป้าไว้เอาไว้ว่าจะเอามาใช้เป็น os image สำหรับ virtualization ตลอดจน การเอาไปใช้กับ Embeded System เพราะรองรับ CPU ตระกูล ARM ด้วย คุณสามารถใช้งาน Ubuntu Core ผ่าน Cloud Service Provider อย่างเช่น AWS, Azure ได้แล้ว ช่วงเวลาที่เขียน how-to นี้ยังอยู่ในช่วง Alpha 2 หากเข้าไปดูรายการ image ใน service catalog จะยังไม่มีให้ใช้ทั้ง Azure และ AWS ดังนั้นช่วงนี้อาจจะต้องใช้ command line กันไปก่อน หาก Ubuntu Core ออกตัวจริงแล้วก็คงกดใช้งานผ่าน service catalog กันง่ายมากขึ้น

มาลอง Ubuntu Core บน Azure กัน อันดับแรกติดตั้ง Azure CLI กันก่อนดังนี้

sudo apt-get update

sudo apt-get -y install nodejs npm nodejs-legacy

sudo npm install -g azure-cli

azure account download


Continue reading

OpenShift ให้บริการ Git Repository ทำหน้าที่เก็บ source code ของ application หากต้องการใช้ private Git repository ร่วมด้วย เราก็สามารถใช้คุณสมบัติของ Git ได้ โดยการเพิ่ม remote repository เป็น openshift แล้ว push โค้ดขึ้นไปยัง remote repository นั้น ยกตัวอย่าง PHPMailer ให้ clone repository ลงมาก่อนดังนี้

git clone https://github.com/PHPMailer/PHPMailer.git

เข้าไปที่ไดเร็กทอรี่ด้วยคำสั่ง

cd PHPMailer


Continue reading

จุดกำเนิดของ HHVM คือ HipHop PHP Compiler (HPHPc) ระบบอันเลื่องชื่อของ Facebook ที่คอมไพล์โค้ดภาษา PHP ออกมาเป็น Executable Binary จนทำให้ทุกอย่างทำงานเร็วมากและกิน Resource น้อยกว่าทั่วไปมาก (ก็มันเป็น Native นี่นา) จึงถูกใช้บนเว็บ facebook.com มาช้านานและช่วยประหยัดค่าใช้จ่ายของบริษัทไปได้เยอะมาก

แต่แล้ว HPHPc ถึงจะเทพปานนั้น แต่ก็มีปัญหาอยู่มากมาย หลักๆเลยคือไม่สนับสนุนภาษา PHP เต็มรูปแบบ บางคำสั่งก็ได้ บางคำสั่งก็ไม่ได้ รวมถึงคำสั่งที่ใช้บ่อยในการเขียน Advance PHP Programming ในยุคหลังอย่าง create_function, eval ก็ใช้งานไม่ได้เช่นกัน ผนวกกับปัญหาอีกมากมายก่ายกอง เช่นกิน Resource ในการคอมไพล์มาก ดีบั๊กยาก บลาๆๆๆ จนส่งผลให้ท้ายที่สุด Facebook ก็ประกาศเซย์กู้ดบายกับเจ้า HPHPc ไป

แล้ว Facebook ก็หายไปแว้บนึง โผล่มาอีกทีกับความเท่สุดบรรยาย ด้วยการเปิดตัว HHVM (HipHop Virtual Machine) ที่ทำตัวเป็น Interpreter ทำงานแทน PHP Interpreter เช่นพวก php5-fpm เลยโดยสมบูรณ์ ทำหน้าที่รับโค้ดเข้ามา แล้วแปลงเป็น Bytecode (HHBC) ก่อนจะแปลงเป็น Binary เพื่อรันแบบ Native อีกทีหนึ่งด้วย JIT ผลคือไม่ต้องมานั่งคอมไพล์ก่อนรันเพราะมันคอมไพล์แบบ Runtime ให้ แถมยังคงซึ่งประสิทธิภาพที่เหนือกว่า PHP ทั่วไปอย่างมหาศาล จากการที่มันเป็น Native และ I/O Non Blocking ล่าสุดประสิทธิภาพของมันแซง HPHPc ไปเป็นที่เรียบร้อยแล้วตั้งแต่ปีก่อน


Continue reading

บางครั้งการที่ Host เครื่องหนึ่งมีหลาย Container อาจทำให้ผู้ดูแลระบบสับสนและลืมรหัสผ่านของ container นั้น ๆ วันนี้เราจะมาดูกันว่าถ้าเราใช้ OpenVZ container แล้วลืมรหัสผ่านจะทำอย่างไรการที่จะตั้งรหัสผ่านหรือรีเซ็ทรหัสผ่าน OpenVZ container นั้นเราสามารถทำได้ง่าย ๆ เพียงเปิด Terminal เข้าไปที่เครื่อง Host และใช้คำสั่ง vzctl เท่านั้น ซึ่งเครื่อง container ต้องทำงานอยู่ด้วย

openvz

ซึ่งการใช้คำสั่งนี้ ข้อมูลของผู้ใช้จะถูกบันทึกไว้ในเครื่อง Container ไม่ได้จัดเก็บลงในไฟล์คอนฟิกของ OpenVZ เช่นเดียวกันกับคำสั่ง vzctl อื่น ๆ ที่จะบันทึกลงในเครื่อง Container โดยที่คำสั่ง vzctl ถ้าเครื่อง Container ไม่ได้ทำงานอยู่ คำสั่งนี้จะเป็นการเริ่มต้น Container แทน


Continue reading

VNoHow ร่วมกับ RedHat Inc จัดงานสัมนา Build.Deploy.Learn about Red Hat Enterprise Linux OpenStack ให้กับผู้ที่สนใจ Private Cloud และ RedHat OpenStack Solution ภายในงานท่านจะพบกับวิทยากรจาก RedHat Inc. และวิทยากรจากประเทศไทย มาร่วมบรรยายในหลากหลายหัวข้อที่เกี่ยวข้องกับ OpenStack ทั้งการติดตั้งและการประยุกต์ใช้งาน งานสัมนาจัดขึ้นในวันที่ 16 กุมภาพันธ์นี้ ตั้งแต่เวลา 13.00-17.00 น. ที่โรงแรม Crowne Plaza Bangkok Lumpini Park ห้อง Crowne 1-3 งานนี้ฟรี ตลอดงาน อย่าลืมลงทะเบียนเข้าร่วมงานสัมนา กันนะครับ

หัวข้อในงานสัมนา

  • Building OpenStack: The Freedom of Imagination
  • Red Hat Training and Certification Roadmap
  • Training and Certification and Market Awareness for OpenStack in Thailand

สิทธิพิเศษสำหรับผู้ที่เข้าร่วมงานสัมนาเท่านั้น!

  • ลงทะเบียนและเข้าร่วมงานสัมนาครั้งนี้ รับสิทธิ์สอบซ่อม (Second Chance) สำหรับการสอบ RHCSA และ RHCE
  • ส่วนลดพิเศษมากถึง 20% สำหรับหรับการฝึกอบรม Red Hat Enterprise Linux System Administration

SSH Key Authentication เป็นหนึ่งในวิธีรักษาความปลอดภัยในการกำหนดสิทธิ์การเข้าถึงให้แก่ผู้ใช้เข้าไปยังเซิร์ฟเวอร์รหัสผ่านตามมาตรฐานที่ใช้ในการเข้าสู่ระบบไปยังเซิร์ฟเวอร์ได้ถูกแทนที่ด้วย SSH Key โดยจะแสดงเมื่อต้องการตรวจสอบ SSH Key จะเพิ่มความปลอดภัยให้มาขึ้น สามารถใช้เป็นรหัสผ่านแม้ในที่สุดจะมีโอกาสถูก Hack โดยใช้ Brute Force โจมตีแบบเดารหัสผ่านโดยการสุ่มไปเรื่อยๆ ทำให้การโจมตีทำได้รวดเร็ว หากรหัสง่ายเกินไปก็จะถูก Hack ได้ง่าย แต่การใช้ SSH key นั้นการ Hack ทำได้ยากขึ้นเพราะต้องใช้ private key และ public key คู่กัน วิธีการสร้าง ssh-key ทำได้ดังนี้

ใช้คำสั่ง ssh-keygen ที่เครื่อง client ดังนี้

ssh-keygen -t rsa

ssh-keygen จะถามว่าจะสร้าง key ไว้ที่ไหนและใช้ชื่อว่าอะไร กำหนดตำแหน่งที่บันทึกภายในไดเรคทอรี home


Continue reading