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

#Tutorial

20 บทความ
Workflow
ต่อ Open API ธนาคารออก QR รับเงิน — จาก sandbox ถึงวงจรสถานะ
Web

ต่อ Open API ธนาคารออก QR รับเงิน — จาก sandbox ถึงวงจรสถานะ

QR พร้อมเพย์แบบ static ที่ประกอบเองได้ ติดตรงไม่มีใครบอกเราว่าลูกค้าจ่ายหรือยัง บทความนี้ไล่การต่อ Open API ของธนาคารใน sandbox ตั้งแต่ขอ token ออก QR แบบ dynamic อ่านวงจรสถานะ REQUESTED/PAID/CANCELLED/VOIDED ไปจนถึงกับดัก requestDt ที่ทำให้ยิงไม่ผ่านทั้งที่ payload ถูกหมด

#api#rest-api#payment#qrcode
อ่าน 10 นาที·25 ต.ค.
Build APM บน Windows: สารบัญ ทำ Apache + PHP 8.4 + MariaDB เอง
Web

Build APM บน Windows: สารบัญ ทำ Apache + PHP 8.4 + MariaDB เอง

ซีรีส์ 7 ตอนพาคอมไพล์ Apache 2.4.69, PHP 8.4.27 และ MariaDB 11.8.9 บน Windows 11 จาก source เอง ให้เวลาที่ PHP ออกแพตช์ความปลอดภัย แก้เลขเวอร์ชันในไฟล์เดียวแล้ว build ใหม่ได้ภายในวัน หน้านี้คือสารบัญ ภาพรวม เวลา ดิสก์ และทางลัดสามคำสั่ง

#devops#php#apache#mariadb
อ่าน 9 นาที·22 ต.ค.
Build APM บน Windows ตอนที่ 7: Deploy รัน และอัปเดต security patch
Web

Build APM บน Windows ตอนที่ 7: Deploy รัน และอัปเดต security patch

ตอนจบของซีรีส์ build Apache + PHP + MariaDB บน Windows ติดตั้งลง C:\APM สตาร์ตครั้งแรกและทดสอบ เปิดให้เครื่องใน LAN เข้าแบบปลอดภัย เล่าบั๊กจริงหกตัว (PidFile, plugin MariaDB, พอร์ต DB, ASLR 500, พาธมีช่องว่างและวงเล็บ) และขั้นตอนอัปเดตเวลามี security release ใหม่

#devops#windows#apache#php
อ่าน 20 นาที·22 ต.ค.
Build APM บน Windows ตอนที่ 6: build PHP 8.4 พร้อม redis imagick
Web

Build APM บน Windows ตอนที่ 6: build PHP 8.4 พร้อม redis imagick

ตอนที่ 6 ของซีรีส์ build Apache + PHP + MariaDB บน Windows จาก source พาไล่ 30-php.ps1 ทีละขั้น ตั้งแต่ php-sdk คำสั่ง configure ทั้งเส้น การคัดลอก DLL จนถึงทดสอบ JIT, redis และ imagick ว่าใช้ได้จริง

#php#windows#powershell#tutorial
อ่าน 14 นาที·22 ต.ค.
Build APM บน Windows ตอนที่ 5: คอมไพล์ ImageMagick 7 ให้ PHP imagick
Web

Build APM บน Windows ตอนที่ 5: คอมไพล์ ImageMagick 7 ให้ PHP imagick

ตอนที่ 5 ของซีรีส์ Build APM บน Windows พาคอมไพล์ ImageMagick 7.1.2-34 กับ delegate library ราว 40 ตัวจาก source ด้วย toolchain ทางการ พร้อมแพตช์ channel mask 64 เป็น 32 ที่ทำให้ imagick build ผ่าน และเหตุผลที่ HEIC เขียนไม่ได้

#windows#php#devops#powershell
อ่าน 14 นาที·22 ต.ค.
Build APM บน Windows ตอนที่ 4: คอมไพล์ MariaDB 11.8 LTS เอง
Web

Build APM บน Windows ตอนที่ 4: คอมไพล์ MariaDB 11.8 LTS เอง

ตอนที่ 4 ของซีรีส์ Build APM บน Windows พาคอมไพล์ MariaDB 11.8.9 จาก source ด้วย CMake และ Ninja ทีละขั้น ตั้งแต่เตรียมเครื่องมือ รันสคริปต์ ทดสอบบนพอร์ต 3399 ไปจนถึงเหตุผลที่ต้องล็อก collation เป็น utf8mb4_unicode_ci

#mariadb#windows#devops#powershell
อ่าน 14 นาที·22 ต.ค.
Build APM บน Windows ตอนที่ 3: build Apache httpd 2.4.69 ด้วย CMake
Web

Build APM บน Windows ตอนที่ 3: build Apache httpd 2.4.69 ด้วย CMake

build APR, APR-util, httpd 2.4.69 และ mod_fcgid ด้วย CMake กับ Ninja บน Windows อธิบายทุก option ว่าใส่ทำไม ไล่ DLL ที่ต้องวางข้าง httpd.exe ด้วย dumpbin ดักไม่ให้ลิงก์ DLL ตัว debug แล้วทดสอบ config ด้วย httpd -t

#apache#windows#web-server#cpp
อ่าน 14 นาที·22 ต.ค.
Build APM บน Windows ตอนที่ 2: ดึง source และ lib ด้วย vcpkg
Web

Build APM บน Windows ตอนที่ 2: ดึง source และ lib ด้วย vcpkg

ขั้นที่ 1 และ 2 ของการ build Apache เองบน Windows อ่านสคริปต์ 00-fetch.ps1 กับ 10-deps-vcpkg.ps1 ทีละบรรทัด ตรวจ sha256 ของ source ทุกตัว แล้วให้ vcpkg build OpenSSL 3.5 LTS กับ lib อีก 8 ตัวจาก source พร้อมคำสั่งตรวจผลทุกขั้น

#devops#windows#apache#powershell
อ่าน 14 นาที·22 ต.ค.
Build APM บน Windows ตอนที่ 1: เตรียมเครื่องมือและแตก build kit
Web

Build APM บน Windows ตอนที่ 1: เตรียมเครื่องมือและแตก build kit

ตอนแรกของซีรีส์ build Apache + PHP 8.4 + MariaDB เองบน Windows ติดตั้ง Visual Studio 2022 Build Tools พร้อม component ที่จำเป็น Git CMake Ninja PowerShell 7 ตั้ง Defender แตก build kit ลง C:\apm-build แล้วไล่ดูโฟลเดอร์ versions.json และสคริปต์ lib.ps1 กับ build-all.ps1 ทีละบรรทัด

#windows#devops#powershell#cpp
อ่าน 14 นาที·22 ต.ค.
เร่งคลิปจอเป็นช่วง ๆ แต่ให้นาฬิกาบนภาพเดินตามเวลาต้นฉบับ
AI

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

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

#ffmpeg#video-editing#python#automation
อ่าน 9 นาที·20 ต.ค.
เว็บสองภาษา 26 หน้า ทำไมต้องกลายเป็น .php แล้วลิงก์พังทั้งเว็บ
Web

เว็บสองภาษา 26 หน้า ทำไมต้องกลายเป็น .php แล้วลิงก์พังทั้งเว็บ

หน้าโปรดักชันโชว์แท็ก PHP เป็นตัวหนังสือดิบ เพราะเว็บเซิร์ฟเวอร์เสิร์ฟ .html เป็นไฟล์ static พอเปลี่ยนทั้ง 26 หน้าเป็น .php ลิงก์ก็พังทั้งเว็บ แล้วพอทำ clean URL ต่อหน้าย่อยก็เด้งกลับเป็น .php เพราะ rewrite กับ 301 ทำครึ่งเดียว บทความนี้คือ .htaccess เต็ม กติกา $base แปดกรณี และสคริปต์ที่ทำทีเดียวทั้งเว็บ

#htaccess#apache#nginx#php
อ่าน 9 นาที·19 ต.ค.
แบนเนอร์คุกกี้ที่กั้นได้จริง โหลด GTM กับ GA4 หลังกดยอมรับเท่านั้น
Web

แบนเนอร์คุกกี้ที่กั้นได้จริง โหลด GTM กับ GA4 หลังกดยอมรับเท่านั้น

แบนเนอร์คุกกี้ส่วนใหญ่ขึ้นมาสวยแต่ไม่ได้กั้นอะไร เพราะ GTM กับ GA4 ถูกโหลดไปตั้งแต่บรรทัดแรกของหน้าแล้ว บทความนี้คือโครงที่โหลด container เมื่อกดยอมรับเท่านั้น วาง GA4 เป็นแท็กข้างใน GTM กันนับซ้ำ ซ่อนช่อง AdSense ไว้ก่อน และตัวตรวจที่นับ request ปลายทางให้เป็นศูนย์

#seo#adsense#javascript#playwright
อ่าน 9 นาที·18 ต.ค.
หน้าเว็บว่างเปล่า ไม่มี error สักบรรทัด เพราะตั้งชื่อฟังก์ชันว่า top
Web

หน้าเว็บว่างเปล่า ไม่มี error สักบรรทัด เพราะตั้งชื่อฟังก์ชันว่า top

deploy ขึ้นไปแล้วหน้าว่าง ไม่มี error ในล็อก ไม่มีอะไรผิดใน node --check แต่เบราว์เซอร์ฆ่าทั้งสคริปต์ตั้งแต่บรรทัดแรกเพราะมีฟังก์ชันชื่อ top ไปชนกับ window.top พร้อมรายชื่อที่ต้องเลี่ยง กับดักลำดับการโหลดสคริปต์ และด่านตรวจด้วย Playwright ที่ควรมีทุกโปรเจกต์

#javascript#debugging#troubleshooting#playwright
อ่าน 8 นาที·18 ต.ค.
สร้าง .ppk ให้ plink/pscp บน Windows โดยไม่ต้องเปิด puttygen
Linux

สร้าง .ppk ให้ plink/pscp บน Windows โดยไม่ต้องเปิด puttygen

puttygen.exe บน Windows เป็น GUI ล้วน สั่งแปลง OpenSSH เป็น .ppk แบบ batch ไม่ได้ (เด้ง unrecognised option) — บทความนี้เขียนไฟล์ PPK v3 ตรง ๆ ด้วย Python พร้อมสูตร MAC HMAC-SHA-256 ที่หาอ่านยาก ใช้กับ plink/pscp/WinSCP ได้ทันที

#ssh#putty#windows#python
อ่าน 7 นาที·15 ก.ค.
สร้าง QR พร้อมเพย์ (EMVCo) ด้วย Python ล้วน — ไม่ต้องพึ่งไลบรารีนอก
Linux

สร้าง QR พร้อมเพย์ (EMVCo) ด้วย Python ล้วน — ไม่ต้องพึ่งไลบรารีนอก

อยากออก QR รับเงินพร้อมเพย์ในระบบ POS/เว็บของตัวเอง โดยไม่ต้องเรียก API ธนาคาร — บทความนี้ประกอบสตริง EMVCo TLV + CRC16 เองด้วย Python ล้วน ได้ payload ตรงสเปกไทยคิวอาร์ สแกนจากแอปธนาคารไหนก็จ่ายได้ พร้อมกับดักที่ทำให้แอปสแกนไม่ติด

#python#promptpay#api#automation
อ่าน 8 นาที·15 ก.ค.
ใช้ Claude ตัดวิดีโอด้วยการพิมพ์สั่งเป็นภาษาไทย ไม่ต้องเปิดโปรแกรมตัดต่อ
AI

ใช้ Claude ตัดวิดีโอด้วยการพิมพ์สั่งเป็นภาษาไทย ไม่ต้องเปิดโปรแกรมตัดต่อ

วิธีที่ผมใช้จริง เอา Claude ใน VS Code มาสั่งตัด ย่อ รวม ใส่เพลงประกอบวิดีโอด้วยการพิมพ์ภาษาไทย ไม่ต้องจำคำสั่ง ffmpeg ไม่ต้องเปิดโปรแกรมตัดต่อ พร้อมวิธีให้ AI แต่งเพลงเอง เร่งด้วยการ์ดจอ NVIDIA และฝั่ง Mac กับ Linux สำหรับคนไม่เคยใช้ Claude มาก่อน

#claude-code#ffmpeg#video-editing#vscode
อ่าน 11 นาที·19 มิ.ย.
คุม Linux server ด้วย AI ผ่าน SSH ให้ปลอดภัย ไม่เผลอพังระบบ
AI

คุม Linux server ด้วย AI ผ่าน SSH ให้ปลอดภัย ไม่เผลอพังระบบ

วิธีที่ผมใช้จริงในการเอา Claude มาช่วย audit และแก้ security ของ Linux server ผ่าน SSH ตั้งแต่เตรียมเครื่อง เก็บความลับ ไปจนกฎเหล็กก่อนแตะ production

#claude-code#ssh#ssh-hardening#security
อ่าน 13 นาที·12 มิ.ย.
ขับ SketchUp ด้วย Claude Code ตอน 2 — ติดตั้งปลั๊กอิน MCP กันบั๊ก
AI

ขับ SketchUp ด้วย Claude Code ตอน 2 — ติดตั้งปลั๊กอิน MCP กันบั๊ก

ทำให้ Claude Code "เห็น" และ "ขับ" SketchUp ได้จริง ด้วยปลั๊กอิน MCP ของชุมชน พร้อมวิธีกัน 2 บั๊กที่ทำเสียเวลา — PyPI wheel พัง และ UI freeze จาก socket แบบ blocking

#mcp#claude-code#claude#sketchup
อ่าน 9 นาที·5 มิ.ย.
ขับ SketchUp ด้วย Claude Code ตอนที่ 1 — เตรียมเครื่องมือ uv กับ PyNite
AI

ขับ SketchUp ด้วย Claude Code ตอนที่ 1 — เตรียมเครื่องมือ uv กับ PyNite

เริ่มซีรีส์ขับ SketchUp ให้เขียนแบบ 3D โครงเหล็กแล้วคำนวณ FEA ด้วย Claude Code ตอนแรกว่าด้วยการเตรียมเครื่องล้วน ตั้งสิทธิ์ Claude ลง uv และสร้าง conda env ใส่ PyNite

#claude-code#claude#ai#sketchup
อ่าน 9 นาที·5 มิ.ย.
สร้างเซิร์ฟเวอร์ AI จากเครื่องเดสก์ท็อป WSL2 + Ollama + OpenClaw
AI

สร้างเซิร์ฟเวอร์ AI จากเครื่องเดสก์ท็อป WSL2 + Ollama + OpenClaw

บันทึกการประกอบเซิร์ฟเวอร์ AI ในบ้านจากศูนย์ เริ่มจาก Windows 11 IoT ลง WSL2 + Ubuntu วาง Ollama รัน LLM บนการ์ดจอสองใบ แล้วต่อด้วย OpenClaw หลาย instance ผ่าน systemd ครบทั้ง driver, custom Modelfile, การแยก user และ benchmark

#wsl2#ollama#openclaw#local-llm
อ่าน 18 นาที·18 ก.พ.