EST. 2026 — บันทึกงานเซิร์ฟเวอร์จริง SYSADMIN · SECURITY · AI · DIRECTADMIN เล่มที่ 01
THE SYSADMIN ALMANAC
หน้าหลัก / แท็ก / Tools
Tools

#Tools

20 บทความ
Workflow
ผ่าน sandbox ไม่ได้แปลว่าใช้ได้จริง — สัญญาณหลอก 7 แบบ
Linux

ผ่าน sandbox ไม่ได้แปลว่าใช้ได้จริง — สัญญาณหลอก 7 แบบ

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

#api#rest-api#testing#debugging
อ่าน 9 นาที·26 ต.ค.
ฉลากพิมพ์ไม่ตรงกระดาษ ตั้งระยะเริ่มพิมพ์ให้จบทีเดียว
Hardware

ฉลากพิมพ์ไม่ตรงกระดาษ ตั้งระยะเริ่มพิมพ์ให้จบทีเดียว

หลังจากสั่งเครื่องพิมพ์ฉลากให้ยิงหัวพิมพ์ได้แล้ว ปัญหาถัดมาคือตัวหนังสือไม่อยู่บนดวงสติกเกอร์ ผมเลิกเดาแล้วพิมพ์ไม้บรรทัดกับหมุดมุมออกมาวัดจริง แล้วแยกให้ชัดว่าขนาดกระดาษ พื้นที่พิมพ์ และระยะเยื้อง เป็นคนละค่ากันสามค่า

#printer#kotlin#android#hardware
อ่าน 9 นาที·25 ต.ค.
ย้ายเว็บ .aspx เก่าทั้งเว็บ ทำเป็น catalog JSON แล้วคัดรูปขยะออกเอง
Web

ย้ายเว็บ .aspx เก่าทั้งเว็บ ทำเป็น catalog JSON แล้วคัดรูปขยะออกเอง

เจ้าของเว็บ .aspx เก่าขอให้ทำเว็บใหม่ แต่เนื้อหาสิบกว่าปีอยู่ในฐานข้อมูลที่เข้าไม่ถึงแล้ว ผมเลยไล่เก็บหน้าเว็บของเขาเองมาทำเป็น catalog JSON ที่คง legacy_id ไว้ทั้งหมด แล้วเขียนตัวคัดรูปสามชั้นกันไม่ให้ QR ของแถมกลายเป็นรูปปกบทความ

#python#web-scraping#crawler#migration
อ่าน 10 นาที·23 ต.ค.
ให้ลูกค้าเลือกรูปเองผ่านหน้าเว็บ โดยไม่ต้องมีระบบล็อกอิน
Web

ให้ลูกค้าเลือกรูปเองผ่านหน้าเว็บ โดยไม่ต้องมีระบบล็อกอิน

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

#php#javascript#web-security#permissions
อ่าน 8 นาที·23 ต.ค.
กรอกฟอร์มราชการลง PDF ด้วยสคริปต์ และทำสำเนาบัตรให้ปลอดภัย
AI

กรอกฟอร์มราชการลง PDF ด้วยสคริปต์ และทำสำเนาบัตรให้ปลอดภัย

ฟอร์มราชการที่แจกมาเป็น PDF กรอกได้ มักกรอกภาษาไทยไม่ได้จริง ช่องแบบตารางย่อยทำให้ตัวเลขไหลทับเส้น และวรรณยุกต์ลอยไปชนสระบน บทความนี้คือวิธีไล่ชื่อช่องออกมาก่อน กรอกผ่านฟอร์มแล้วอบให้เป็นเนื้อเอกสารจริง วาดข้อความไทยเองด้วยฟอนต์ที่มีสระครบ และทำสำเนาบัตรขนาดเท่าของจริงพร้อมลายน้ำที่ระบุวัตถุประสงค์

#pdf#python#document#printing
อ่าน 10 นาที·22 ต.ค.
ทำแอปคุมเพจผ่าน Graph API สามปลายทางที่ลืมแล้วไม่ผ่านรีวิว
Web

ทำแอปคุมเพจผ่าน Graph API สามปลายทางที่ลืมแล้วไม่ผ่านรีวิว

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

#api#rest-api#php#web-security
อ่าน 10 นาที·22 ต.ค.
ฟอร์มแจ้งปัญหาบนเว็บ static ที่ไม่มีแบ็กเอนด์สักตัว
Web

ฟอร์มแจ้งปัญหาบนเว็บ static ที่ไม่มีแบ็กเอนด์สักตัว

เว็บคำนวณที่เป็นไฟล์นิ่งล้วน ไม่มีเซิร์ฟเวอร์ให้รับฟอร์ม แต่ยังต้องมีช่องให้คนใช้แจ้งว่าสูตรผิดตรงไหน บทความนี้คือเส้นทางเดียวที่ผมเลือกใช้ คือ worker ไฟล์เดียวที่รับ POST เส้นทางเดียว ตรวจ Turnstile ฝั่งเซิร์ฟเวอร์ด้วยไอพีจริง รับรูปที่ผู้ใช้กดวางจากคลิปบอร์ด แล้วยิงเมลออกจากขอบเครือข่าย พร้อมกับดักสามอย่างที่กินเวลาผมไปทั้งคืน

#cloudflare#static-site#javascript#web-security
อ่าน 9 นาที·21 ต.ค.
ตารางเกณฑ์ในสเปรดชีตที่ไม่ได้ผูกสูตร ถอดค่าคงที่กลับเป็นสูตร
AI

ตารางเกณฑ์ในสเปรดชีตที่ไม่ได้ผูกสูตร ถอดค่าคงที่กลับเป็นสูตร

ชีตที่มีตารางเกณฑ์วางอยู่ข้าง ๆ แต่ไม่ได้ผูก VLOOKUP คนอ่านตารางแล้วพิมพ์ค่าลงช่องเอง พลาดเมื่อไรไม่มีใครรู้ บทความนี้ว่าด้วยการแยกช่องสูตรกับช่องพิมพ์มือออกจากกัน แล้วถอดคอลัมน์ตัวคูณ 16 ค่ากลับมาเป็นสูตรเดียวที่ตรงทั้งตาราง

#spreadsheet#python#reverse-engineering#audit
อ่าน 10 นาที·20 ต.ค.
เร่งคลิปจอเป็นช่วง ๆ แต่ให้นาฬิกาบนภาพเดินตามเวลาต้นฉบับ
AI

เร่งคลิปจอเป็นช่วง ๆ แต่ให้นาฬิกาบนภาพเดินตามเวลาต้นฉบับ

วิธีทำไทม์แลปส์จากคลิปอัดหน้าจอที่เร่งช่วงนิ่งแรงกว่าช่วงทำงาน ด้วย split กับ trim กับ setpts แล้ว concat กลับ พร้อมกับดักใหญ่คือ drawtext ต้องวางก่อน setpts นาฬิกาถึงจะเดินตามเวลาต้นฉบับ ไม่ใช่เวลาที่ถูกเร่งไปแล้ว

#ffmpeg#video-editing#python#automation
อ่าน 9 นาที·20 ต.ค.
ยิง API สองหมื่นกว่าครั้ง ให้หยุดกลางทางแล้วต่อได้ และไม่ได้ไฟล์เสีย
Linux

ยิง API สองหมื่นกว่าครั้ง ให้หยุดกลางทางแล้วต่อได้ และไม่ได้ไฟล์เสีย

งานยิง API สร้างไฟล์ 26,850 ไฟล์บนโควตาที่จำกัด 20 ครั้งต่อนาที สามชิ้นที่ขาดไม่ได้คือ ตัวหน่วงที่นับรวมกันทั้งระบบ การต่องานจากของที่มีอยู่บนดิสก์ และตัวตรวจไฟล์แยกต่างหาก เพราะไฟล์ที่หลุดตอนเน็ตสะดุดมีนามสกุลถูกและขนาดไม่เป็นศูนย์

#python#api#rate-limiting#automation
อ่าน 9 นาที·19 ต.ค.
ให้เว็บอ่านเครื่องอ่านบัตรที่เคาน์เตอร์ ด้วย agent บน localhost
Hardware

ให้เว็บอ่านเครื่องอ่านบัตรที่เคาน์เตอร์ ด้วย agent บน localhost

เบราว์เซอร์แตะเครื่องอ่านบัตรสมาร์ตการ์ดเองไม่ได้ ทางที่ใช้ได้คือเขียน agent ตัวเล็กเปิดพอร์ตบน localhost แล้วให้หน้าเว็บเรียก บทความนี้เก็บครบทั้ง secure context, CORS preflight, การแย่งพอร์ตกับ agent เจ้าอื่น, PC/SC แบบ SHARED, การถอด TIS-620 เอง และวันที่โดนแอนตี้ไวรัสเหมาว่าเป็น backdoor

#hardware#cpp#windows#gui
อ่าน 11 นาที·16 ต.ค.
ถอดแบบจาก PDF ที่วาดไม่ตรงสเกล แล้ววาดกลับให้ตรงระยะ
AI

ถอดแบบจาก PDF ที่วาดไม่ตรงสเกล แล้ววาดกลับให้ตรงระยะ

แบบแปลนงานนำเสนอมักวาดทีละบล็อก สเกลแกน x กับ y ไม่เท่ากัน และแต่ละห้องยังไม่เท่ากันอีก คาลิเบรตครั้งเดียวทั้งหน้าแล้ววาดตามคือผิดทุกจุด บทความนี้เป็นวิธีถอดพิกัดจากกระดาษเป็นเมตรแบบคิดสเกลใหม่ทุกห้อง นับจำนวนชิ้นด้วย colour-blob BFS แทนการนับด้วยตา แล้ววาดกลับลงโมเดลให้ตรงระยะจริง

#3d-modeling#sketchup#python#pdf
อ่าน 10 นาที·1 ต.ค.
แอปเก็บเอกสารหน้าเดียวด้วย PHP กับ SQLite ที่เก็บต้นฉบับไว้เสมอ
Linux

แอปเก็บเอกสารหน้าเดียวด้วย PHP กับ SQLite ที่เก็บต้นฉบับไว้เสมอ

แอปเก็บรูปเอกสารสำหรับงานยื่นราชการที่ถ่ายจากมือถือหน้างาน ออกแบบให้หนึ่งการอัปโหลดกลายเป็นสามไฟล์ คือไฟล์ที่ใช้แสดง ไฟล์ต้นฉบับ และค่าครอปที่บันทึกไว้ กลับมาปรับใหม่ได้โดยไม่เสียคุณภาพ พร้อมการย้ายจาก JSON มาเป็น SQLite แบบดูดของเดิมเข้าให้เอง และการปิดโฟลเดอร์ข้อมูลส่วนบุคคลที่เว็บเซิร์ฟเวอร์

#php#sqlite#document#security
อ่าน 9 นาที·27 ก.ย.
ทำเอกสารยื่นราชการหลายสิบแผ่นจาก HTML ให้กดพิมพ์เองแล้วตรงขอบ
Linux

ทำเอกสารยื่นราชการหลายสิบแผ่นจาก HTML ให้กดพิมพ์เองแล้วตรงขอบ

ระบบเอกสารยื่นราชการที่ผู้ใช้กดปุ่มพิมพ์ในเบราว์เซอร์เองแล้วต้องได้ทุกแผ่นตรงขอบ ตั้งแต่การวัดพื้นที่พิมพ์จริงเป็นมิลลิเมตร หัวและท้ายที่ต้องซ้ำทุกหน้าโดยห้ามใช้ position fixed กรอบรูปสี่แบบตามชนิดของเอกสาร ไปจนถึงการตรวจหน้าล้นอัตโนมัติด้วย Playwright แทนการเปิดดูทีละแผ่น

#pdf#php#css#printing
อ่าน 10 นาที·26 ก.ย.
ฟีดข่าวค้างสามวันทั้งที่งานรันครบ เพราะฟีดไม่ได้เรียงตามวันที่
Linux

ฟีดข่าวค้างสามวันทั้งที่งานรันครบ เพราะฟีดไม่ได้เรียงตามวันที่

หน้าแรกของเว็บข่าวค้างอยู่ที่ข่าววันเดิมสามวันติด ทั้งที่งานตามเวลารันครบ แปลครบ และรายงานผ่านทุกขั้น ต้นเหตุคือฟีด RSS เรียงตามความเกี่ยวข้องไม่ใช่วันที่ การเรียง pubDate แบบสตริงกลายเป็นเรียงตามชื่อวันในสัปดาห์ และการขอข่าวมาน้อยเกินไปจนด่านกรองตีตกหมดตั้งแต่ยังไม่ทันได้ดู

#python#javascript#rss#automation
อ่าน 10 นาที·25 ก.ย.
ส่งไฟล์จากงานอัตโนมัติเข้า Telegram กับเพดาน 50 MB ของ Bot API
Linux

ส่งไฟล์จากงานอัตโนมัติเข้า Telegram กับเพดาน 50 MB ของ Bot API

วางบริการเล็ก ๆ ในเครื่องที่รับไฟล์จากสคริปต์แล้วส่งเข้า Telegram ให้ตัวเอง เป็นช่องทางออกทางเดียวล้วน ไม่มี polling ไม่รับคำสั่งกลับ พร้อมเพดานจริงของ Bot API ที่ต้องรู้ก่อนเขียน ทั้ง 50 MB ต่อไฟล์ รูปเกิน 10 MB ที่ต้องส่งเป็นเอกสาร และกับดักภาษาไทยใน curl บน Windows

#telegram#bot#automation#python
อ่าน 8 นาที·24 ก.ย.
ออกใบเสนอราคา PDF ภาษาไทยจาก HTML ด้วย Chromium และกับดักที่เจอ
Linux

ออกใบเสนอราคา PDF ภาษาไทยจาก HTML ด้วย Chromium และกับดักที่เจอ

ทำระบบออกใบเสนอราคาเป็น PDF จาก HTML ด้วย Chromium ให้รองรับหลายบริษัทในเครือและหลายเทมเพลต ตั้งแต่ error Executable doesn't exist ที่ไปหยิบ headless shell ผิดตัว การจัด A4 กับแบ่งหน้า การ sanitize ชื่อไฟล์ภาษาไทย จนถึงระบบเลขเอกสารแบบ token ที่เผลอใส่ slash แล้ว path พัง

#pdf#chromium#playwright#python
อ่าน 9 นาที·31 ส.ค.
ขับ AutoCAD จาก PowerShell ผ่าน COM — วาดแบบด้วยสคริปต์
AI

ขับ AutoCAD จาก PowerShell ผ่าน COM — วาดแบบด้วยสคริปต์

AutoCAD เปิด COM ไว้ให้เขียนสคริปต์สั่งได้เหมือน Excel เกาะเข้าตัวที่เปิดอยู่ด้วย New-Object แล้ววาดเส้น วงกลม ข้อความ กล่องสามมิติ สร้างเลเยอร์ ใส่เส้นบอกระยะ และเซฟไฟล์ได้ครบจาก PowerShell พร้อมกับดักสี่ข้อที่เจอมาเองรอบเดียวจำไปตลอด

#autocad#powershell#com#automation
อ่าน 8 นาที·27 ส.ค.
วางแผนช่อง WiFi 2.4GHz ไม่ให้ทับกัน 1/6/11 พร้อมทำ heatmap หลายชั้น
Network

วางแผนช่อง WiFi 2.4GHz ไม่ให้ทับกัน 1/6/11 พร้อมทำ heatmap หลายชั้น

อาคารห้าชั้น ชั้นละเจ็ดจุด ต้องวางช่อง 2.4GHz ให้ไม่ทับกันทั้งแนวราบและแนวตั้ง บทความนี้ลงรายละเอียดหลัก 1/6/11 ตารางแผนช่องต่อชั้น ค่า Tx power กับ RSSI threshold ที่ตั้งจริง แล้วเขียนสคริปต์ Python วางป้ายช่องลงผังชั้นด้วย PIL ก่อนเดินวัดทำ heatmap

#wifi#networking#rf#python
อ่าน 9 นาที·23 ส.ค.
เขียนแอปมอนิเตอร์ ping จอเดียวด้วย C++ ImGui กับ DirectX 11
Network

เขียนแอปมอนิเตอร์ ping จอเดียวด้วย C++ ImGui กับ DirectX 11

แอปเล็กๆ ที่ ping อุปกรณ์ทั้งวงพร้อมกันแล้วสรุปลงจอเดียว ยิง ICMP ตรงผ่าน iphlpapi ไม่เรียก ping.exe แยกหนึ่ง thread ต่อหนึ่ง host คุยกับ UI ด้วย std::atomic วาดด้วย Dear ImGui บน DirectX 11 แล้ว build ด้วย CMake กับสคริปต์ PowerShell ตัวเดียวจบ

#cpp#networking#windows#monitoring
อ่าน 9 นาที·21 ส.ค.