ฉันโดนแฮ๊กหรือเปล่า !?!?!

หลายท่านอาจจะเคยได้รับ email หน้าตาประมาณนี้ ข้อเท็จจริงคือ เราสามารถปลอมเป็นใคร ส่ง email ออกไปให้ใครก็ได้ Truth … แล้ว จะรู้ได้อย่างไร !?! ต้องดูสิ่งที่เรียกว่า Header … โดยทำตามวิธีการต่อไปนี้ 1. คลิกที่ View Full Header จะได้ผลประมาณนี้ จากภาพ จะเห็นว่า ส่งจาก (ดูจาก ล่าง ขึ้น บน) Received: from [154.117.164.59] (unknown [154.117.164.59])     by mailscan.in.psu.ac.th (Postfix) with ESMTP id 69F2B150768     for <kanakorn.h@psu.ac.th>; Thu, 5 Mar 2020 13:24:42 +0700 (ICT) แล้วจึงส่งเข้าระบบ PSU Email Received: from mailscan.in.psu.ac.th (unknown [192.168.107.12])     by mail.psu.ac.th (Postfix) with ESMTP id A034D464FC7     for <kanakorn.h@psu.ac.th>; Thu, 5 Mar 2020 13:24:46 +0700 (+07) แล้วจึงเข้า Mailbox ของ PSU (ข้อมูล version ของ cyrus เอาออกไม่ได้จริง ๆ ครับ ไว้รอ Upgrade) Received: from mail.psu.ac.th ([unix socket])     by mail (Cyrus v2.4.18-Debian-2.4.18-3) with LMTPA;     Thu, 05 Mar 2020 13:24:46 +0700 จะเห็นได้ว่า ต้นทางคือ IP Address : 154.117.164.59 ตรวจสอบว่าอยู่ที่ไหนในโลก ด้วย https://whatismyipaddress.com/ip/154.117.164.59 ประมาณ South Africa สรุป ! ไม่ได้โดน Hack (ไม่ได้เข้ามาใช้ PSU Email ส่ง) ครับ

Read More »

วิธีแจ้งเตือนจาก Google Forms เข้า LINE

ต้องยอมรับว่า ปัจจุบันพฤติกรรมผู้ใช้ “ทั่วไป” จะเปิด LINE อ่านบ่อย และเร็วกว่าการเปิดอ่าน Email ต่อไปนี้ เป็นวิธีการ ตั้งค่าที่ Google Forms ว่า เมื่อมีคน Submit แบบฟอร์มมา ให้มา Alert ที่ LINE ของเรา หรือ ส่งเข้า LINE Group ก็ได้ โดยอาศัยความสามารถของ Google App Scripts ที่เรียก REST API ของ LINE สร้าง หรือ แก้ไข Google Forms ที่ต้องการ จากนั้น ไปที่ “More” หรือ ปุ่มสามจุดแนวตั้งด้านขวามือบน แล้ว คลิกที่ Script Editor จากนั้น ใส่ Google App Script ตามนี้ ในที่นี้ ตั้งชื่อ Function คือ sendLineNotification **** อย่าลืมเปลี่ยน YOUR-TOKEN-GO-HERE ที่จะได้จากขั้นตอนต่อไป **** ตั้งชื่อ Project, Save แล้ว Run ** อย่าลืม ตั้งชื่อ Project แล้ว Save ด้วย จากนั้น กดปุ่ม Run เพื่อให้เกิดการขอ Authorization ตาม OAuth Scope ซึ่งจะเจอ Error นี้ ก็ไม่เป็นไร (เพราะไม่มี ข้อมูลส่งมาจริง ๆ นั่นเอง) ให้กด Dismiss ไป ไปตั้ง Trigger ไปที่ เมนู Edit > Current project’s triggers ตั้งค่า Trigger ให้ทำงานทันทีที่มีการ Submit แบบฟอร์ม Trigger คือการตั้งค่าให้ Script นี้ทำงานอัตโนมัติ เมื่อมีการ Submit แบบฟอร์ม คลิก Add Trigger แล้วเลือก Function “sendLineNotification” เลือก “on form submit” และ “Notify me immediately” เพื่อให้เมื่อมีการ Submit แบบฟอร์ม ก็จะแจ้งทาง LINE ทันที จากนั้น กดปุ่ม Save ผลที่ได้คืออย่างนี้ ขั้นตอนการขอ LINE Token ไปที่เว็บไซต์ https://notify-bot.line.me/my/ แล้ว Login ด้วย LINE Account ของท่าน จากนั้น คลิกปุ่ม Generate token ตั้งชื่อ และ เลือกว่าจะ Notify ไปที่ใด เราสามารถเลือกได้ว่า ให้ Notify ไปที่เราคนเดียว ให้ Notify ไปยัง Group Chat *** เราต้องเพิ่ม Line Notify เป็นเพื่อนก่อน และ Invite เข้าไปใน Group Chat นั้น ๆ ด้วย จากนั้น คลิกปุ่ม Generate Token ก็จะได้ Token ให้คลิกปุ่ม Copy แล้วคลิก Close จากนั้น นำไปแทนที่ YOUR-TOKEN-GO-HERE ใน Google

Read More »

PSU Webmail ทำไมลบ email ออกไปตั้งเยอะแล้ว แต่ Quota ยังเต็ม ?

เหตุ: แบ่งเป็น 4 กรณี (1) ลบแล้ว แต่ยังไม่ Expunge ก่อนหน้านี้ เคยตั้งค่าให้ Delete แล้วก็ให้ลบหายไปเลย แต่ก็มีบางคน (หลายคน) แจ้งว่า อยากให้แค่ Mark Delete กล่าวคือ … ลบแล้ว แต่ให้เปลี่ยนใจได้ จึง … ทำให้คนอื่น ๆ เมื่อลบแล้ว ก็ต้องกดปุ่ม Expunge ด้วย เพื่อให้ลบถาวร *** ระบบ PSU Email เมื่อลบและกด Expunge แล้วจะเป็นการลบ ถาวร ไม่สามารถกู้คืนได้ไม่ว่ากรณีใด ๆ *** (2) ลบแต่จดหมายเล็ก ๆ บางที เราก็มีจดหมายไม่กี่ฉบับ แต่ว่า แต่ละฉบับ อาจจะแนบไฟล์ขนาดใหญ่ ๆ ทั้งนั้น วิธีการคือ สั่งให้ PSU Webmail แสดง ขนาดของ email แต่ละฉบับ โดยไปที่ Options > Index Order จากนั้นคลิกปุ่ม Add ข้าง ๆ Size แล้ว คลิก Inbox อีกครั้ง จะปรากฏ Column “Size” ด้านขวามือ ให้คลิกเรียงลำดับ ตามขนาดของ email ให้เลือกลบฉบับที่มีขนาดใหญ่ ๆ ก่อน แล้ว *** และเมื่อลบแล้ว ก็อย่าลืม Expunge และ อย่าลืม เรียงลำดับใหม่ด้วย มิฉะนั้น จะไม่เห็นอีเมลใหม่สุด อยู่บนสุด *** เพราะระบบกำลังแสดงผลแบบเรียงลำดับตาม ขนาดของอีเมลอยู่ (3) ลบใน Inbox หมดแล้ว แต่พื้นที่ยังเต็ม เป็นเพราะ มันเต็มใน Folder อื่น ให้คลิกที่ Folder Size ด้านล่างซ้ายของ PSU Webmail จะแสดงผลให้เห็นว่า จริง ๆ แล้ว Folder ใดที่กินพื้นที่ เมื่อทราบแล้ว ก็ไปจัดการให้ถูกที่ (4) ทำตามข้อ 1-3 แล้ว ยังเต็ม ก็เป็นเพราะมี Folder “Trash” ซึ่งซ่อนอยู่ มันมาได้ไง ?? มาจากการใช้ Mail Client บน โทรศัพท์มือถือ แล้วต่อ IMAP มายัง PSU Email Server มักจะสร้าง “Trash” Folder ไว้ เมื่อผู้ใช้ ลบอีเมล ก็จะย้ายไปไว้ใน Trash นี้ (ไม่ใช่ INBOX.Trash ของระบบ) ซึ่งจะมองเห็นได้บนโทรศัพท์มือถือ แต่ มักจะมองไม่เห็นบน PSU Webmail วิธีการแก้ไขคือ เลือกให้แสดง Folder นี้ โดยคลิกที่ Folders > Trash > Subscribe แล้วกด Refresh folder list ก็จะปรากฏ Trash อยู่ในรายการด้าน ซ้ายมือ ให้ทำการลบได้ตามปรกติ

Read More »

djsurvey – Google Forms Alternative #01

ต่อจาก ddready – แพ็ครวม django + bootstrap4 + crispy form + docker พร้อมใช้งาน ในบทความนี้ ผมได้พยายามทำให้ใช้งาน Django ได้ง่ายขึ้น จนได้ แบบสำรวจอย่างง่าย พร้อมใช้งาน ใน 3 ขั้นตอน Prerequesite ติดตั้ง Python 3.6+ หรือ ใช้ Python Container แล้ว Repository https://github.com/nagarindkx/djsurvey ง่าย ๆ 3 ขั้นตอน 1. Clone Repository ใช้คำสั่ง git หรือ Download ไปก็ได้ https://github.com/nagarindkx/djsurvey/archive/master.zip 2. กำหนดข้อคำถามในแบบสำรวจ แก้ไขไฟล์ ตัวอย่างเช่น แบบสำรวจ ประกอบด้วย ชื่อ อีเมล เพศ วันเดือนปีเกิด ผลไม้ที่ชอบ ข้อเสนอแนะ ก็สร้าง Model ตามนี้ ( แรก ๆ อาจจะรู้สึกน่ากลัว แต่พอเข้าใจแล้ว มันง่ายมาก) แนะนำให้ใช้ Visual Studio Code จะทำงานได้ง่ายมาก 3. Migrate แล้ว Run ใช้คำสั่งต่อไปนี้ ชมผลงาน http://localhost:8080/survey/ หรือ ตกแต่งอีกนิดหน่อย ก็จะได้แบบนี้ http://localhost:8080/advancedsurvey/ สำหรับผู้ที่ใช้ Docker สามารถ ทำตามขั้นตอนใน แนวทางการพัฒนา Web Application ด้วย django จาก local docker สู่ Google Cloud Run เพื่อนำขึ้น Google Cloud Run ได้เลย (แต่ต้องเชื่อมกับ Database จริง ๆ ก่อนนะ – โปรดติดตามตอนต่อไป) คุณกำลังเจอปัญหาเหล่านี้อยู่ใช่ไม๊ ? Google Forms ก็ง่ายดีแหล่ะ แต่ จะทำอย่างไรให้เก็บข้อมูลไว้ในฐานข้อมูลได้ ? อยากให้ ผู้ใช้งาน Upload เอกสารเข้ามา / แก้ไขข้อมูล ซึ่ง Google Forms ก็ทำได้ แต่ต้อง Login ด้วย Google Account ก่อน จึงจะทำได้ Google Forms ก็ทำ Conditions ได้แหล่ะ (Go to section base on answer) แต่ ถ้าจะให้มีการคำนวนที่ซับซ้อนกว่านั้น ก่อนจะเลือกคำถามถัดไป จะทำอย่างไร ? ปัญหาเหล่านี้จะหมดไป เมื่อคุณใช้ Django ! ติดตั้งได้ บน Web Server ของคุณ! Login ด้วย Facebook/Twitter/Google/Line หรือ Email หรือ จะเป็น Single Sign-On ก็ยังได้ ทุกอย่างสามารถ Customize ได้ ทำแบบสอบถามที่ซับซ้อนได้ ไว้เจอกันในตอนต่อ ๆ ไปครับ

Read More »

ddready – แพ็ครวม django + bootstrap4 + crispy form + docker พร้อมใช้งาน

สำหรับใครที่อยากจะลองพัฒนา Web Application ด้วย django web framework ผมได้รวบรวมเป็นชุดเริ่มต้น ซึ่งจะสามารถสร้าง Responsive Web และ มีแบบฟอร์มที่สวยงามด้วย crispy form มาเรียบร้อย ใช้งานได้ทั้ง แบบ Python บนเครื่อง และ แบบ Docker ลองทำตามดูได้ครับ Repository สามารถเปิด URL ต่อไปนี้ เพื่อไป Download หรือ จะใช้ git clone ก็ได้ https://github.com/nagarindkx/ddready.git https://gitlab.psu.ac.th/kanakorn.h/ddready.git จากนั้น ให้เปิด cmd ไปยังตำแหน่งที่ clone ลงมา สำหรับผู้ที่ติดตั้ง python อยู่แล้ว แล้วใช้คำสั่งต่อไปนี้ สำหรับผู้ที่จะใช้ Docker บน Windows ใช้คำสั่งต่อไปนี้ ทดสอบใช้งาน http://localhost:8080 ในตอนต่อไป จะแนะนำวิธีการสร้าง แบบสอบถาม ทดแทนการใช้ Google Forms ครับ

Read More »