• วิธีตั้งค่า HTTPS บน Apache2 รุ่นที่สูงกว่า 2.4.8


    จากบทความ การแก้ไข Certificate สำหรับ Apache Web Server (Ubuntu 14.04 LTS) ตอนนี้ Apache2 รุ่นที่สูงกว่า 2.4.8 ประกาศให้ SSLCertificateChainFile นั้น obsolete หรือ จะไม่ใช้อีกต่อไป จากเดิม เราเคยใช้ SSLCertificateFile /etc/apache2/cer/[cer-file-name].crt SSLCertificateKeyFile /etc/apache2/cer/[cer-file-name].key SSLCertificateChainFile /etc/apache2/cer/[cer-file-name].ca-bundle ต่อไปนี้ แนะนำให้ใช้แค่ SSLCertificateFile /etc/apache2/cer/[cer-file-name]_combined.crt SSLCertificateKeyFile /etc/apache2/cer/[cer-file-name].key แล้ว  /etc/apache2/cer/[cer-file-name]_combined.crt มาจากไหน ??? มันมากจากการเอาไฟล์ [cer-file-name].crt แล้วต่อท้ายด้วยไฟล์ [cer-file-name].ca-bundle ด้วยคำสั่ง cat [cer-file-name].crt [cer-file-name].ca-bundle > [cer-file-name]_combined.crt เช่น cat in_psu.crt intermediate_ca.crt > in_psu_combined.crt เป็นต้น เสร็จแล้ว ก็ Restart Apache —…

    >> Read More <<

  • django – Deploy to Production #02


    ต่อจาก django #01 Development Environment เริ่มจาก ไปที่ command prompt แล้วใช้คำสั่งต่อไปนี้ เพื่อ เก็บรายละเอียดของ Package และ Version ที่ใช้ในการพัฒนา ไว้ในไฟล์ myenv.txt และ เก็บไฟล์ myproject ทั้งหมดไว้ในไฟล์ myproject.tar.gz (บน Windows อาจจะใช้ 7zip สร้าง) แล้ว Upload ไฟล์ myenv.txt และ myproject.tar.gz ขึ้นบน Projection Server Production Server ในที่นี้ ลองไปใช้ Google Compute Engine สร้าง Instance ขึ้นมา เป็น Ubuntu 18.04 และ ได้ Upload ไฟล์ myenv.txt…

    >> Read More <<

  • django (ดี)จังโก้ ดีอย่างไร #01


    ขอไม่ลงรายละเอียดว่า อะไรคือ Web Framework, MVC, MVT พวกนั้นนะครับ อ่านเองที่ https://www.djangoproject.com/ และ เขียนวิธีติดตั้งบน Windows ไว้คร่าว ๆ ที่ ขั้นตอนการติดตั้ง django บน Windows และในที่นี้ใช้ Visual Studio Code เป็น Editor (สั่งด้วยคำสั่ง code …) โจทย์ สมมุติในทีม มีคน 10 คน ต้องการ ระบบบันทึกการปฏิบัติงาน จัดเก็บข้อูล วันเวลาของงานที่ทำ, ประเภทของงงาน (ตาม TOR), รายละเอียดของงานที่ทำ, ระยะเวลาที่ใช้ไป (ชั่วโมง) แต่ละคน ต้อง Login เข้ามาก่อน จึงจะบันทึกปฏิบัติงานได้ วิถีแบบ django สร้าง project ชื่อ myproject django-admin startproject myproject สร้าง…

    >> Read More <<

  • Everything are connected together


    “ทุกสรรพสิ่งเชื่อมต่อกัน” สวัสดี ผู้อ่านทุกท่านนะครับ นี่คือบทความฉบับปฐมภูมิของผู้เขียน ที่จะนำพาท่านไปพบกับบทความในอีกรูปแบบหนึ่ง ที่ผู้เขียนพยามสรรสร้างบทความนี้เพื่อให้เกิดแนวความคิดที่เรียบง่าย แต่ได้ไอเดีย เพื่อนำไปสร้างนวัตกรรมหรือนำไปประยุกต์ใช้งานกับหน้าที่การงาน ที่เราต่างร่วมกันทำเพื่อองค์กรของเราให้มีความก้าวหน้าอย่างยั่งยืนต่อไป กล่าวถึงหัวข้อที่ผู้เขียนเรื่อง “Everything are connected together” เป็นเรื่องราวที่ผู้เขียนได้สกัดมาจากงานที่ผู้เขียนปฏิบัติจริงและได้มีการดำเนินการมาเป็นระยะเวลา 2 ปี ตั้งแต่เริ่มตั้งไข่ จนกระทั่งเริ่มยืนและเดินได้ เติบโตขึ้นทีละเล็ก ทีละน้อย ค่อยๆ เพิ่มทักษะในการเรียนรู้ไปพร้อม ๆ กัน ในบทความนี้จะไม่เน้นเนื้อหาในเชิงลึก แต่จะนำเสนอแก่นสาร ที่รวบรวมแนวความคิดของผู้เขียนที่มีต่อการปฏิบัติงาน เพื่อนำเสนอไอดีย และแง่มุมต่าง ๆ ที่มันสะท้อนให้เห็นอะไรบางอย่างจากการปฏิบัติงาน เพื่อเป็นแนวทางให้กับผู้อ่านต่อไป ปัจจุบันโลกของเรามีการเปลี่ยนอย่างก้าวกระโดด โดยเฉพาะในด้านเทคโนโลยีตลอดจนเครื่องมือต่าง ๆ เกิดขึ้นมากมายให้เราเลือกนำมาใช้งาน สิ่งที่จะกล่าวต่อไปนี้คือ “ทุกสรรพสิ่งเชื่อมต่อกัน” เมื่ออ่านมาถึงจุดนี้ผู้อ่านคงจะเริ่มคิดถึงสิ่งต่าง ๆ ที่อยู่รอบตัวเรา ในชีวิตประจำวันที่เราใช้ Internet มันเชื่อมโยงทุกสิ่งอย่าง อย่างไรก็ตามในหลาย ๆ มิติของการเปลี่ยนแปลงมันก็เป็นไปตามธรรมชาติของมัน นั่นคือทุกอย่างล้วน เกิดขึ้น ตั้งอยู่ และดับไป ผู้เขียนพยามสะท้อนให้เห็นถึงความเป็นจริง หากเราจะก้าวไปข้างหน้า จงอย่างไปยึดติด…

    >> Read More <<

  • รวมร่าง Windows กับ Linux ใช้งานในเครื่องเดียวกันแบบเนียนๆ


    จุดประสงค์ สามารถใช้งาน Windows กับ Linux ได้ในเครื่องเดียวกันและในเวลาเดียวกันเหมือนเป็นทองแผ่นเดียวกัน แก้ปํญหา Dev / SysAdmin ส่วนใหญ่ที่ต้องใช้ Linux เป็นหลักในการทำงานแต่ต้องเผื่อใจต้องทำงานบน Windows ด้วยในบางเวลา เช่น ทำเอกสาร MS Word ไม่ให้เพี้ยน หรือ Adobe PhotoShop หรือโปรแกรมที่ไม่สามารถทำการติดตั้งลงใน Linux ได้ และที่สำคัญคือการทำงานระหว่างสองระบบต้องไหลลื่นและรวดเร็ว ประหยัด กินทรัพยากรน้อย หากยังนึกภาพไม่ออก สามารถดูวิดีโอนี้ครับ  Windows 10 + Linux Lite (Seamless)  สเปกเครื่อง สามารถใช้บน windows 7, 8, 10 แต่ขอให้มี RAM อย่างน้อย 4 GB จะดีมากถ้า RAM 8 GB แต่ในที่นี้จะเป็นการติดตั้งและใช้งาน Linux บน Windows…

    >> Read More <<

  • วิธีแก้ไข Excel เปิดไฟล์ CSV แล้วอ่านภาษาไทยไม่ออก


    ผู้ใช้จะใช้คำประมาณว่า “เป็นภาษาต่างดาว” เอ่อ … ภาษาต่างดาวเนี่ยเป็นไงครับ ? อย่างคนเขียนคำว่า “私はあなたを愛している” ทำไมเราถึงรู้ว่า นี่คือภาษาญี่ปุ่น หรือ “我愛你”  ทำไมเราถึงรู้ว่า นี่เป็นภาษาจีน หรือ “Я люблю тебя” เป็นภาษารัสเซีย เปลี่ยนเป็นคำว่า “เป็นภาษาที่อ่านไม่ออก” หรือ “ไม่ออกมาเป็นภาษาไทย” จะถูกต้องกว่านะครับ ปัญหา ผู้ใช้เปิดไฟล์ที่แน่ใจได้ว่า Export จากระบบมาเป็น Unicode/UTF-8 แน่นอน เหตุ Microsoft Excel เค้าจะ Default ใช้ Charset เป็น Windows-874 วิธีการแก้ไข สร้างไฟล์ Excel ใหม่ คลิกเมนู Data -> From Text/CSV(ของใครเมนูภาษาไทย เทียบเคียงเอาเองนะครับ) เลือกไฟล์ CSV ที่ต้องการ เบื้องต้นตอนจะ Import จะได้เห็นสิ่งที่…

    >> Read More <<

  • Hardening your HTTP response headers


    Introduction HTTP Response headers คือ ค่าของสตริงที่ส่งกลับมาจากเซิร์ฟเวอร์ที่มีเนื้อหาตามที่ถูกร้องขอ โดยปกติจะใช้บอกข้อมูลทางเทคนิค เช่น เบราเซอร์ควรแคชเนื้อหา, ประเภทของเนื้อหาคืออะไร, ซอฟต์แวร์ที่ทำงานบนเซิร์ฟเวอร์ และอื่น ๆ   HTTP Response headers ถูกใช้เพื่อส่งต่อนโยบายความปลอดภัยไปยังเบราเซอร์  ทำให้การเปิดเว็บไซต์ของเรามีความปลอดภัยเพิ่มมากขึ้น Header ของ Apache2 ที่ควรต้องใส่เพื่อเพิ่มความปลอดภัยมีดังนี้ Content Security Policy Header เรื่อง Content Security Policy (CSP) ช่วยให้กำหนดต้นทางของเนื้อหาที่อนุญาตสำหรับเว็บไซต์ โดยการจำกัดเนื้อหาที่เบราเซอร์สามารถโหลดได้ ได้แก่ js และ css สามารถสร้าง CSP ได้จาก https://report-uri.com/home/generate ทั้งนี้ต้องทดสอบการทำงานทุกครั้งเนื่องจาก การกำหนดค่าบางอย่างอาจทำให้เว็บไซต์ ทำงานไม่ถูกต้อง ดูรายละเอียดเพิ่มเติมได้ที่ https://scotthelme.co.uk/content-security-policy-an-introduction/ สำหรับ Apache2 เพิ่ม Header ต่อไปนี้ ในแฟ้มของไซต์ที่ต้องการ เช่น /etc/apache2/site-enabled/lsc-ssl.conf  หรือแฟ้ม…

    >> Read More <<

  • วิธีทำให้โปรไฟล์บน Google Scholar เป็น Public


    Google Scholar เป็นบริการหนึ่งของ Google ทำให้เรามีโปรไฟล์  “อีกช่องทางหนึ่ง” เพื่อแสดงผลงานที่ได้รับการเผยแพร่ หรือตีพิมพ์ในที่ต่าง ๆ  อ่านเพิ่มเติม https://scholar.google.com/intl/en/scholar/about.html ปัญหาอยู่ที่ว่า ในการสร้างครั้งแรกโปรไฟล์ (Profile) ของท่าน จะยังไม่ Public หมายความว่า จากหน้า Google จะค้นหาไม่เจอ Google Scholar Profile ของท่านนั่นเอง ( พอดีมีอาจารย์ท่านหนึ่งถามมา เห็นว่าเป็นประโยชน์ จึงเขียนบันทึกนี้ไว้ให้ ) วิธีการทำให้เป็น Public Profile จากหน้า Profile ของท่าน คลิกที่รูป ดินสอ (Edit) ด้านหลังชื่อ คลิก Make my profile public แล้วคลิกปุ่ม Save แต่ต้องรอสักหน่อย เคยอ่านเจอมาว่า ใช้เวลาประมาณ 4 weeks กว่าจะค้นหาบน Google เจอ

    >> Read More <<

  • ELK #07 LogStash


    จากที่ได้กล่าวถึงมายาวนานในเรื่อง ELK  และ  ELK #02 ที่ได้กล่าวถึงการติดตั้ง LogStash ไว้เบื้องต้น ในบทความนี้จะมาลงลึก ถึงกระบวนการทำงานของ LogStash ซึ่งเป็นส่วนสำคัญในการเปลี่ยนข้อมูล Unstructured ให้เป็น Structured ตอนนี้ เราจะทำงานใน /etc/logstash/conf.d/ Simple input – output plugin สร้างไฟล์ 01-input-file.conf มีเนื้อหาดังนี้ input { file { path => [“/tmp/input.txt”] mode => “tail” } } ในส่วนนี้ เป็นการกำหนดว่า ให้ LogStash อ่านไฟล์ /tmp/input.txt โดยให้อ่านบรรทัดล่าสุด (ต่อจาก Checkpoint ก่อนหน้า) เข้ามา โดยถ้าไม่กำหนด mode => “tail” ระบบจะอ่านไฟล์ก็ต่อเมื่อ มีการสร้างไฟล์ใหม่เท่านั้น สร้างไฟล์ 98-output-file.conf มีเนื้อหาดังนี้…

    >> Read More <<