อัปเดต Apache2 ให้ได้เวอร์ชั่นล่าสุดด้วย Third-Party PPA ของ ondrej

พบว่า ubuntu 16.04 จะใช้ apache2 v 2.4.18 แม้ว่าเราจะสั่ง apt update; apt upgrade แล้วก็ตามเมื่อเช็คด้วยคำสั่ง apache2 -v จะพบว่ายังคงเป็นเวอร์ชั่น 2.4.18 เช่นเดียวกับ ubuntu 18.04 จะใช้ apache2 v 2.4.29 เท่านั้น หลังจากหาข้อมูลอยู่ทั้งวัน มีผู้ให้ข้อมูลใน google search ว่า ทีมพัฒนาจะไม่เปลี่ยนเวอร์ชั่นใน ubuntu ตาม upstream developer จนกว่าจะทดสอบและออก ubuntu next release หากต้องการเป็นเวอร์ชั่น 2.4.39 ณ วันนี้ (4 เม.ย. 62 หลังจากข่าวช่องโหว่ apache2 2 วัน) ก็ต้องใช้ Third-Party PPA ของ ondrej (ผู้พัฒนาคนหนึ่งที่ทำ Debian Package) เพิ่มเติมล่าสุด (5 เม.ย. 62) ทำใน ubuntu server อีกเครื่องที่ยังไม่ได้ทำแบบ PPA $ sudo apt-get update ; sudo apt-get dist-upgrade $ apache2 -v Server version: Apache/2.4.18 (Ubuntu) Server built: 2019-04-03T13:34:47$ dpkg -l | grep apache2 ii apache2 2.4.18-2ubuntu3.10 amd64 Apache HTTP Server พบว่ามีการปรับปรุงเวอร์ชั่น Server built 2019-04-03 ซึ่งตามหลัง patch PPA ไม่กี่ชั่วโมง ใครยังไม่สนใจจะเปลี่ยนเป็นเวอร์ชั่น 2.4.39 ก็น่าจะไม่ต้องทำแบบ PPA ตามข้อมูลใน link นี้ https://usn.ubuntu.com/3937-1/ และ https://launchpad.net/ubuntu/xenial/+source/apache2/+changelog ข้อควรระวัง ให้ตรวจสอบว่ามีการเข้าไปปรับแต่งไฟล์ apache2.conf ไว้หรือไม่ ต้องมีการทำ backup ไว้ก่อนอัปเดต เช่น บางท่านอาจไปเขียน Rewrite Rule ในไฟล์นี้ เป็นต้น ก็ต้องแก้ไขหลังจากอัปเดต รวมถึง Apache configuration files อื่น ๆ ที่เราใช้ เราต้องมี backup อย่างไรก็ตามก่อนทำอัปเดต ต้องมั่นใจว่าถ้า server เราเป็น VM ก็ต้องมีการ backup VM ไว้ก่อน จะอุ่นใจขึ้น sudo add-apt-repository ppa:ondrej/apache2sudo apt-get updatesudo apt-get upgrade หลังจากอัปเดต เช็คเวอร์ชั่นด้วยคำสั่ง apache2 -v ได้เวอร์ชั่นล่าสุด Server version: Apache/2.4.39 (Ubuntu)Server built: 2019-04-02T20:30:08 หากพบว่า ยังคงได้ version เดิม ตรวจสอบดู output จะพบว่า Reading package lists… DoneBuilding dependency treeReading state information… DoneCalculating upgrade… DoneThe following packages have been kept back: apache2 apache2-bin apache2-data apache2-utils libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap openssl 0 upgraded,

Read More »

แนะนำการใช้เครื่องมือ Quick Analysis ใน Excel 2016 : ชุดคำสั่ง “Text”

สำหรับ Excel 2016 ที่เราใช้งานอยู่เป็นประจำในชีวิตประจำวันนั้น มีเครื่องมือที่ช่วยอำนวยความสะดวกมากมาย จนบางครั้งเราจะลืมไปว่า มันสามารถช่วยอำนวยความสะดวกอะไรได้บ้าง สำหรับบทความนี้ จะกล่าวถึงคำสั่ง “Quick Analysis” ซึ่งอาจจะไม่ได้เป็นความรู้ใหม่สำหรับผู้ที่ได้ใช้อยู่เป็นประจำ หรือใช้อยู่แล้ว แต่ก็เพื่อเป็นความรู้ เป็นข้อมูลให้กับสำหรับคนที่ยังไม่เคยใช้แล้วกันนะค่ะ ก่อนอื่นเรามาสร้างข้อมูลสมมุติใน Excel ก่อนนะค่ะ ในที่นี้ทำการสร้างข้อมูลตารางการออกกำลังกาย และการพักผ่อน ในเดือนมีนาคมกันค่ะ ตามข้อมูลในรูปนะค่ะ การใช้ Quick Analysis ในชุดคำสั่ง “Text”ตั้งโจทน์กันก่อน เราจะมาหา Record ที่มีคำที่สนใจกันนะค่ะสามารถทำได้โดย เลือกช่วงของข้อมูลที่ต้องการright click >> ทำการ right click >> เลือก Quick Analysis เลือก Formatting >> เลือก Text จะปรากฎหน้าจอ เพื่อให้กำหนดเงื่อนไขFormat cell that contain the text : ให้ระบุคำที่ต้องการหา ในที่นี้ระบุ “Run”with : เป็นการดำเนินการ กรณีที่พบข้อมูลตามที่ต้องการ ในที่นี้จะเลือก “Yellow Fill with Dark Yellow Text”จากนั้นกดปุ่ม “OK” เพื่อยืนยันเงื่อนไขที่ระบุ ผลลัพธ์ที่ได้จะเป็นดังนี้ ข้อมูลที่มีคำว่า “Run” อยู่ก็จะมีพื้นเป็นสีเหลือง ง่าย ๆ ใช่ไม๊ค่ะ สำหรับในชุดคำสั่ง “Formatting” ก็ยังมีคำสั่งอีกนะค่ะ ได้แก่Duplicate : หา Record ที่มีข้อความซ้ำกับกันUnique : หา Recored ที่มีข้อความไม่ซ้ำกับ Record อื่นEqual To : หา Record ที่มีข้อความเหมือนกับคำที่ต้องการค้นหา ซึ่งจะคล้ายกับคำสั่ง “Text” ต่างกันที่ คำสั่ง “Equal To” จะต้องเหมือนเท่านั้น แต่ “Text” คือมีคำที่ต้องการอยู่ในข้อความ เอาแบบเริ่มต้นกันแค่นี้ก่อนนะค่ะ วันหลังจะมาบรรยายในชุดคำสั่งต่อไปให้ดูกันอีกนะค่ะ….ติดตามชมกันนะค่ะ

Read More »

ติดตั้ง Let’s Encrypt Certificate สำหรับ SSL Sites บน IIS

หลังจากที่พี่หนุ่ม คณกรณ์ หอศิริธรรม  ได้เขียนเรื่อง วิธีติดตั้ง HTTPS ด้วย Certificate ของ Let’s Encrypt ไปแล้วนั้น ก็จะมาถึงทางฝั่ง Windows กันบ้าง ซึ่งจะติดตั้งผ่านเครื่องมือ บน Command Line ครับ ตัวอย่างนี้จะเป็นวิธีการติดตั้งโดยใช้เครื่องมือที่ชื่อว่า WinACME ซึ่ง ดาวน์โหลดได้ที่นี่ (จริงๆ มีหลายตัวให้เลือกใช้ครับ ซึ่งส่วนใหญ่จะเป็นการพัฒนาผ่าน ACME API มีทั้งแบบเป็น Command Line, Power shell และเป็น GUI ครับ) หลังจากดาวน์โหลดไฟล์มาแล้ว ผม Extract ไปไว้ที่ C:\LetsEncryptSSL จากนั้นก็เปิด Command Prompt ด้วยสิทธิ Administrator(เปิดด้วยสิทธิ Administrator เพื่อให้มีการสร้าง Schedule Task ในการ Renew Cert. โดยอัตโนมัติครับ) จากนั้นทำการเรียกด้วยคำสั่ง letsencrypt จะพบกับเมนูดังภาพนี้ครับ ผมเลือกตอบตัว “n” จะพบกับเมนูให้เลือกด้านล่างนี้ (สำหรับผู้ที่มีความชำนาญ สามารถเลือก M เพื่อเปิด advanced option ได้ครับ) และเนื่องจากเครื่องที่แสดงอยู่นี้ เป็น multiple site และผมจะทำการติดตั้งลงไปเพียง 1 site ตามนี้ครับ เลือก site จากนั้นกด Enter จะพบว่าโปรแกรมเริ่มทำการ Generate SSL Cert. และ Assign ไปยัง Site ของเรา พร้อมทั้งกำหนด Schedule Task เรียบร้อยแล้ว ลองดูผลลัพธ์ใน II ลองเปิดเว็บดู ผ่าน Google Chrome ปรากฎว่ามีรูปกุญแจขึ้นแล้วและเป็น Cert. ของ Let’s Encrypt ตามที่ต้องการ กลับไปตรวจสอบ Schedule Task พบว่ามีการสร้าง Task เพื่อ Renew Cert. เอาไว้แล้ว จบปิ๊ง…

Read More »

Protect Windows Computer LAB using Toolwiz Time Freeze and Cygwin

Toolwiz Time Freeze เป็น open source software freeware ติดตั้งเพิ่มใน Windows 10 สำหรับจัดการเครื่องคอมพิวเตอร์ในห้องบริการ ซึ่งจะทำให้เมื่อ restart เครื่อง จะกลับคืนสู่สภาพเหมือนครั้งที่ติดตั้งเสร็จไว้ให้บริการในตอนแรก Toolwiz Time Freeze ไม่ได้ให้ซอฟต์แวร์ควบคุมรวมศูนย์กลางแบบโปรแกรมอื่นประเภทเดียวกันนี้ เราจะต้องทำการเดินไปปลด Lock ที่หน้าเครื่อง Windows ทีละเครื่องเอง แต่อย่างไรก็ตาม Toolwiz Time Freeze ก็ให้คำสั่งรันแบบ command line มาด้วย ผมจึงลองเสนอไอเดีย วิธีใช้ linux ubuntu ในการควบคุมไม่ต้องเดินไปทำหน้าเครื่อง นั่นคือ ใช้คำสั่ง ssh ในการรัน ToolwizTimeFreeze.exe ด้วย option /freeze หรือ /freezealways หรือ unfreeze หลักการคร่าว ๆซอฟต์แวร์ที่เครื่องคอมพิวเตอร์ที่จะให้บริการ1.ติดตั้ง Windows 102.login เข้าใช้งานด้วยบัญชีผู้ใช้ (user) สิทธิเทียบเท่า Administrator3.ติดตั้ง Cygwin for Windows จะได้ Linux emulator โดยเลือกติดตั้ง service sshd ทำงานอัตโนมัติเมื่อเปิดเครื่อง Windows 4.ติดตั้ง Toolwiz Time Freeze ตั้ง Lock พร้อมตั้งค่า password ป้องกันการเปิดเข้าโปรแกรม ซอฟต์แวร์ที่เครื่องของ admin ผู้ดูแล1.ติดตั้ง Ubuntu server หรือ Desktop เพิ่ม 1 เครื่อง เพื่อที่จะสร้าง ssh key ด้วยคำสั่ง sshkeygen จะได้ key file ชื่อ id_rsa.pub และ id_rsa.key อยู่ในไดเรกทอรี .ssh 2.ทำขั้นตอนส่ง id_rsa.pub ไปใส่เพิ่มต่อท้ายไฟล์ authorized_keys ของ user ที่ติดตั้ง Cygwin for Windows 103.ตอนนี้ เราจะสามารถ ssh user@ip (IP ของ Windows 10) ได้แล้วโดยไม่มีการถาม password ทดสอบดู เมื่อต้องการปลด Lock (Unfreeze) Windows 10 ก็ใช้คำสั่งนี้ได้ คำสั่งเขียนต่อกันเป็นบรรทัดเดียว ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no $user@$ip “/cygdrive/c/Program\ Files/Toolwiz\ Time\ Freeze\ 2017/ToolwizTimeFreeze.exe /unfreeze /usepass=$password” > /dev/null 2>&1 & โดยให้แทนที่ $user ด้วย ชื่อบัญชีผู้ใช้ที่ติดตั้ง Cygwin ให้แทนที่ $ip ด้วยไอพีแอดเดรสของ Windows 10 และให้แทนที่ $password ด้วย password ของโปรแกรม Toolwiz Time Freeze เมื่อรันคำสั่งนี้แล้ว Windows 10 จะ restart เมื่อตรวจสอบดูจะพบว่า Toolwiz Time Freeze อยู่ในสถานะ unprotect เมื่อต้องการ Protect Windows 10 (Freeze) ก็ใช้คำสั่ง 3 คำสั่งนี้ ต้องทำตามลำดับ คำสั่งเขียนต่อกันเป็นบรรทัดเดียว คำสั่งที่ 1/3 ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no $user@$ip “/cygdrive/c/Program\ Files/Toolwiz\ Time\ Freeze\ 2017/ToolwizTimeFreeze.exe /freeze /usepass=$password”

Read More »

Virtual data center with OpenNebula

OpenNebula เป็นชื่อของ open source software สำหรับทำ virtual data center เวอร์ชั่นล่าสุดคือ 5.6.1 (https://opennebula.org) ผมได้ทดลองในห้องปฏิบัติการ และเขียนเป็นขั้นตอนการติดตั้งจนกระทั่งได้ VM ขึ้นมา แต่ยังไม่ลงรายละเอียดถึงขั้นใช้งาน storage network ได้ ซึ่งจะได้ทดลองกันต่อไป ในตอนนี้ จะเรียกว่า basic set up ก็ได้นะ ในการ set up ระบบจริงตามคำแนะนำ แต่ละเครื่องควรมี network card 2 cards เพื่อแยกระหว่าง network ที่ให้บริการ กับ Management network การ set up จะต้องมีเครื่องที่เป็น Front-end เพื่อทำหน้าที่เป็น database และเว็บเพจสำหรับทำ configuration และสั่งการ และจะต้องมีเครื่องที่เป็น Hypervisor อย่างน้อย 1 เครื่อง โดยเลือกได้ว่าจะใช้ KVM หรือ vcenter สเปคเครื่อง hypervisor นี้ต้องรองรับ Virtualization extensions (Intel VT-x or AMD-V) เตรียมการทดลองโดยใช้ เครื่องคอมพิวเตอร์ที่ผมนำมาใช้มี 3 เครื่อง อายุเครื่องก็พอสมควร (ตามกำลังทรัพย์ที่มีในห้องปฏิบัติการ) แต่ทั้ง 3 เครื่องนี้ มีเพียง 1 network card ครับ เครื่อง Front-end 1 เครื่อง สเปค Pentium(R) Dual-Core CPU E5200 @ 2.50GHz มี RAM 4 GB อันนี้เป็นเครื่องทั่วไปที่รัน apache2 web server และ mariadb database ได้ ใช้เครื่อง KVM จำนวน 2 เครื่อง เพื่อจะให้เห็นว่าสามารถสร้าง VM ไปที่ KVM node ที่ต้องการได้ เครื่อง KVM node01 เป็น AMD Phenom(tm) II X4 945 Processor มี RAM 8 GB และ KVM node02 เป็น Intel(R) Core(TM) i5 CPU M 520 @ 2.40GHz มี RAM 4 GB นอกจากเครื่องคอมฯ แล้ว ผมก็มี network switch (L2-managed) เพื่อกำหนด port ให้รองรับ 802.1Q VLAN ผมออกแบบให้มี 2 VLAN คือ VLAN ID 6 (untagged) และ VLAN ID 7 (tagged) ซึ่ง VLAN 6 ก็คือ ครึ่งแรกของ network class C 192.168.6.0 เขียนแบบ CIDR 192.168.6.0/25 มี gateway คือ 192.168.6.1 และ VLAN 7 ก็คือ ครึ่งหลังของ network 192.168.6.128/25 มี gateway คือ 192.168.6.129 ผมเขียนขั้นตอนไว้ในเว็บไซต์

Read More »