TODO: สำหรับผู้ใช้ Microsoft Windows เพื่อป้องกัน Wana Decrypt0r Ransomware

สิ่งที่ต้องทำ สำหรับ ผู้ใช้ Microsoft Windows และ สำหรับผู้ดูแลระบบของหน่วยงาน Backup หรือ สำรองข้อมูลสำคัญ ไว้ใน External Harddisk, USB Drive, Cloud Drive กรณี Windows Vista, Windows XP, Windows 8 ให้ไปที่ Website นี้ เพื่อ Download ตัว Update ที่ตรงกับ Windows ของตน มาติดตั้ง (MS17-101 หรือ KB4012598) http://www.catalog.update.microsoft.com/Search.aspx?q=KB4012598 กรณี Windows 7 http://www.catalog.update.microsoft.com/search.aspx?q=4012212 กรณี Windows 8.1 http://catalog.update.microsoft.com/v7/site/search.aspx?q=4012213 กรณี Windows 10 Start > พิมพ์ Windows Update สำหรับคนที่ยังใช้ Windows XP ควรพิจารณา Upgrade มาเป็น Windows 10 โดยติดตั้ง Microsoft Windows รุ่นล่าสุดของมหาวิทยาลัยสงขลานครินทร์ (ต้องมี PSU Passport)ได้ที่ https://licensing.psu.ac.th/windows-10-education-version-1703-updated-march-2017-microsoft-imagine/   ขอให้โชคดี  

Read More »

COMODO Certificates บรรทัดที่หายไปใน Google Chrome บน Ubuntu

ผมทำ Zeroshell Firewall สำหรับเป็น network authentication หลังจากผม setup ส่วนที่เกี่ยวกับ Certificate ที่จะใช้กับ https ผมได้ import COMODO Certificates (ที่มหาวิทยาลัยใช้บริการ) เมื่อทดสอบการใช้งาน เข้าโปรแกรม Firefox บน Ubuntu เมื่อผู้ใช้ใส่ URL เพื่อไปเว็บไซต์ใด ๆ จะพบกับหน้า network authentication และ https ถูกต้อง (เป็นสีเขียว) แต่เมื่อเปิดด้วย Google Chrome จะพบว่า https จะไม่ถูกต้อง (เป็นขีด / สีแดง) ทำไมจึงเป็นเช่นนั้น เปิดเข้าไปดูรายการ Certificates ที่อยู่ใน Browser Firefox เทียบกับ Google Chrome ก็พบว่ามีความแตกต่างต่างกันที่บรรทัด คือ COMODO RSA Domain Validation Secure Server CA ดังนี้ รูปข้างล่างนี้เป็นรายการ Certificates ของ COMODO ใน Firefox บน Ubuntu 16.04 ซึ่ง มี บรรทัดที่ว่านี้ รูปข้างล่างนี้เป็นรายการ Certificates ของ Comodo ใน Google Chrome บน Ubuntu 16.04 ซึ่ง ไม่มี รูปข้างล่างนี้เป็นรายการ Certificates ของ COMODO ใน Google Chrome for Windows 10 ซึ่ง มี บรรทัดดังกล่าวอยู่ในแท็บ Intermediate Certification Authorities ซึ่งผมพบว่ารายการมันจะเกิดขึ้นหลังจากเคยไปเว็บไซต์ใด ๆ ที่ติดตั้ง COMODO Certs ไว้ ผมก็ไป export “COMODO RSA Domain Validation Secure Server CA” จาก Firefox แล้วนำไป import ใน Google Chrome บน Ubuntu 16.04 เพื่อทดสอบว่ามันเกี่ยวกันมั้ย มันเกี่ยวกันจริง ๆ ด้วย แต่ผมไม่รู้ว่าทำไมจึงเป็นเช่นนั้น จึงต้องการจะบันทึกไว้ เผื่อใครที่รู้จะมาช่วยอธิบาย ในหน้า Login นั้น สัญลักษณ์ https แสดงเป็นสีเขียว ถูกต้องได้ ตามรูป ใครรู้มาเฉลยที เพิ่มเติมท่อนข้างล่างนี้เมื่อ 11 พ.ค. 60 ครับ ตอนนี้ผมได้คำตอบมาอัปเดตแล้วครับ จากที่ได้ความช่วยเหลือจากคุณพรพิทักษ์ สันติภาพถาวร ผู้ดูแล PSU CERTS เราพบว่าในหน้าคอนฟิกของ Zeroshell นั้น ในเมนู Captive Portal X.509 Authentication นั้นหลังจากเรา import #1 Trusted CA จากไฟล์ STAR_psu_ac_th.ca-bundle ดังรูป แล้วเราจะได้บรรทัด COMODO RSA Domain Validation Secure Server CA เพิ่มขึ้นมา ดังรูป และ #2 Imported Certificates and Keys ด้วยไฟล์ STAR_psu_ac_th.crt และ STAR_psu_ac_th_nopass.key ดังรูป แล้วเราจะได้บรรทัด OU=Domain Control Validated, OU=PositiveSSL Wildcard, CN=*.psu.ac.th มาดังรูป จากนั้น เราจะต้องไปคลิกตัวเลือก Authentication เพื่อ เลือก Allow the X.509 login

Read More »

วิธีสร้าง CoreOS Cluster

จะสร้าง CoreOS ให้กลายเป็น Cluster Docker Container ได้อย่างไร              จากบทความที่แล้วที่แนะนำเกี่ยวกับ CoreOS และการติดตั้งบน Vmware[1] ไปแล้วนั้น เราก็สามารถสร้างให้เป็นในรูปแบบ Cluster ได้ โดยมองว่าเครื่องแต่ละเครื่องที่สร้างนั้นเป็น Node หนึ่ง ๆ ใน Cluster โดยใช้ etcd เป็นตัวเก็บข้อมูลของ Node และ Fleet เป็นตัว Deploy docker ให้กระจายไปยัง Node ต่าง ๆ อย่างเหมาะสม โดยที่จะสามารถย้ายตัวเองได้เมื่อมีเครื่องใดเครื่องหนึ่งมีปัญหา (Recommend จำนวนเลขคี่ และอย่างต่ำต้อง 3 node ขึ้นไป ยิ่งเยอะ โอกาสล่มก็ยิ่งต่ำ)             etcd ในปัจจุบันเป็น Version 3 ซึ่งจะมีประสิทธิภาพเพิ่มขึ้นจาก Version 2 (แต่ใน document web ยังเป็น etcd2 เป็นส่วนมาก) โดยใช้สำหรับเก็บข้อมูลแต่ละ Node ทำให้รู้ว่าในแต่ละ Cluster มีเครื่องใด IP อะไรบ้าง มีทั้งหมด 3 วิธีคือ  Static เป็นวิธีที่ระบุลงไปเลยในแต่ละเครื่องว่ามีเครื่องไหนบ้างที่อยู่ใน Cluster วิธีการนี้ข้อเสียคือถ้าเพิ่มต้องเพิ่มทุกเครื่อง etcd Discovery เป็นวิธีที่จะให้ Discovery Service เป็นคนทำหน้าที่เก็บข้อมูล (เหมือน tracker torrent) เมื่อเพิ่มเครื่องใหม่ ก็แค่ชี้ไป Discovery URL ก็เสร็จ DNS Discovery เป็นวิธีการใช้วิธีการจด DNS ในรูปแบบ SRV record เพื่อบอกว่า บริการนี้มีเครื่องอะไรอยู่บ้าง ซึ่งจะมีการอ้างอิงอยู่กับ Domain Name โดยวิธีนี้จำเป็นต้องจดชื่อ Domain ทุกเครื่อง             ในบทความนี้จะอธิบายวิธีที่ 1 ซึ่งแม้ยุ่งยาก แต่เหมาะกับระบบที่ Internet Public ไม่ค่อยเสถียร และ ถ้าใครต้องการลองวิธีอื่นสามารถตามอ่านได้ใน Web CoreOS[2] ครับ   วิธีการตั้งค่า etcd2 ทำการสร้าง service etcd2 service ด้วย systemd ดังนี้ sudo vim /etc/systemd/system/etcd2.service ข้อความในไฟล์มีดังนี้ (ถ้าต้องการความปลอดภัยสามารถใช้ https ได้ครับ แต่ต้องมีการทำ certificate เพิ่มเติม ซึ่งไม่ขออธิบายครับ) [Unit] Description=etcd2 Conflicts=etcd.service [Service] User=etcd Type=notify Environment=ETCD_DATA_DIR=/var/lib/etcd ExecStart=/usr/bin/etcd2 –name node01 –initial-advertise-peer-urls http://[IP]:2380 \ –listen-peer-urls http://[IP]:2380 \ –listen-client-urls http://[IP]:2379,http://127.0.0.1:2379 \ –advertise-client-urls http://[IP]:2379 \ –initial-cluster-token etcd-cluster-1 \ –initial-cluster node01=http://[IP_node01]:2380,node02=http://[IP_node02]:2380,node03=http://[IP_node03]:2380 \ –initial-cluster-state new Restart=always RestartSec=10s LimitNOFILE=40000 TimeoutStartSec=0 [Install] WantedBy=multi-user.target Enable etcd2 service เพื่อให้รันทุกครั้งที่เปิดเครื่อง sudo systemctl enable etcd2 Start etcd2 service sudo systemctl start etcd2

Read More »

มารู้จักกับ CoreOS Linux และวิธีติดตั้ง CoreOS Linux บน Vmware

CoreOS Linux คืออะไร เอาไปใช้ทำอะไร              ในโลกของ Containner ในปัจจุบันมีหลายตัวเลือกให้ใช้งาน แต่การใช้งานที่สมบูรณ์จำเป็นต้องมี 3 อย่างรวมกันคือ Containner (ยกตัวอย่าง Docker,Rocket,Lxd), OS ขนาดเล็ก (ยกตัวอย่าง CoreOS, RancherOS, PhotonOS, Snappy Ubuntu Core, Redhat Project Atomic), และสุดท้ายคือโปรแกรมบริหารจัดการ Containner (ยกตัวอย่าง Kubernete, Admiral, Rancher, Kitematic)              สำหรับ CoreOS[1] เองรองรับการงานทั้งใน Cloud(AWS,Digital Ocean,Azure,Google Cloud Platform) หรือใน Virtualization Platform (ยกตัวอย่าง OpenStack, VMWare, Vagrant) และยังสามารถติดตั้งลงบนเครื่อง Physical (Bare Metal) ได้อีกด้วย              CoreOS มีจุดเด่นอีกอย่างคือระบบ CoreOS Cluster[2] ที่สามารถออกแบบเป็น Cluster ช่วยให้สามารถบริการ Docker Containner กระจายไปยัง Node ต่าง ๆ โดยใช้ etcd ในการจัดการระบบและใช้ fleet ในการสร้าง Docker ที่อยู่บน CoreOS Cluster ซึ่งจะกล่าวต่อไปในบทความต่อไปครับ              การติดตั้ง ติดตั้งได้หลากหลายช่องทาง เขียนแผ่นติดตั้งก็ได้ ผ่าน iso ก็ได้ แต่ถ้าเป็น Image จะไม่มี User (จริง ๆ มีแต่ไม่มี Password) ต้องสร้างด้วยสิ่งที่เรียกว่า cloud-config ซึ่งจำเป็นต้องตั้งค่าก่อนติดตั้ง หรืออีกแบบที่จะขอแนะนำ เป็นวิธีที่ใช้สำหรับ Image ที่เป็น ova ของ Vmware ซึ่งใช้วิธี Bypass เข้า Auto Login Mode[1] แล้วเข้าไป Add User เอาเองภายหลัง (สามารถนำไปประยุกต์กับวิธีติดตั้ง Image แบบอื่นได้เช่นเดียวกัน)  การติดตั้ง CoreOS ด้วย OVA Image ผ่าน vSphere Client 6.0[3] โหลดไฟล์ติดตั้งจาก https://stable.release.core-os.net/amd64-usr/current/coreos_production_vmware_ova.ova (ุถ้า Link เปลี่ยนไปหาดูเอาเองนะครับ) เปิด vSphere Client เลือก deploy OVF Template จากนั้นทำการ Browse File เลือกเครื่อง เลือก DataStore ตามปกติ   เมื่อถึงหน้าตั้งค่าใส่ Hostname และการตั้งค่า Network เบื้องต้น (ในที่นี้ผมใส่แค่ Hostname และ ชื่อ Network Interface โดยรับ IP จาก DHCP) จากนั้นเมื่อสร้างเสร็จและเปิดเครื่องขึ้นมารีบกดปุ่มลูกศรลงในหน้า Grub ป้องกัน Auto Boot (เร็วมาก ถ้าไม่ทันก็ให้รีเครื่องใหม่) จากนั้นให้เลือก CoreOS default แล้วกด e และพิมพ์ coreos.autologin (ไม่ต้องพิมพ์ \ ก่อนขึ้นบรรทัดใหม่ ระบบจะใส่ให้เอง) จากนั้นกด F10 ก็จะทำการ Boot และ ได้ Prompt สำหรับ adduser ตั้งรหัสผ่านได้เลย

Read More »

pGina fork 3.2.4.1 configuration

ในตอนที่แล้วได้พูดถึงว่า pGina fork คืออะไรไปแล้ว ในครั้งนี้จะพูดถึงการตั้งค่าสำหรับทำเป็น Windows Authentication ในเครื่องคอมที่เป็น Windows 10 ผมได้ทำ screen capture มาเฉพาะที่ผมได้ใช้งาน ซึ่งก็คือ Local Machine, RADIUS plugin, Single User plugin และ LDAP plugin ครับ ตามดูกันมานะครับ หน้าแรกคือแท็บ General จะแสดงให้เห็นว่าโปรแกรมพร้อมทำงาน ให้ดูที่ข้อความที่แสดงเป็นสีเขียวใต้ข้อความ pGina Service status และตัวเลือกที่ผมเลือกใช้คือ Use original username to unlock computer (เพราะว่าผมจะใช้ Single User plugin ร่วมด้วย) แท็บถัดไปคือ แท็บ Plugin Selection อันแรกที่จะใช้คือ Local Machine คือ user ที่สร้างขึ้นภายใน Windows นั่นเอง สังเกตจะมีตัวเลือกที่ Authentication และ Gateway แก้ไขรูปภาพ Local Machine Plugin ต้อง ติ๊ก Notification ด้วย จึงจะมีผลกับ option Remove account and profile after logout จากนั้นให้คลิกปุ่ม Configure จะได้ค่าดีฟอลต์ ดังรูปข้างล่างนี้ ผมจะใช้ค่าตัวเลือก Remove account and profile after logout when account does not exist prior to logon เพื่อที่ไม่ต้องเก็บ user profile ที่เป็น user จาก user database ภายนอก เช่น จาก RADIUS server เป็นต้น และ หากต้องการให้ user นั้นมีสิทธิมากกว่า User ทั่วไป ก็ตั้ง Mandatory Group เช่น ตั้งเป็น Administrators เป็นต้น ต่อไปก็มาถึง RADIUS plugin เลือก Authentication และ Notification จากนั้นคลิกปุ่ม Configure จะได้ค่าดีฟอลต์ ดังรูป ผมจะเลือกใช้และใส่ค่าต่าง ๆ เหล่านี้ครับ เลือก Enable Authentication เพื่อสอบถาม username/password เลือก Enable Accounting เพื่อส่งข้อมูลบันทึกค่า Acct-Status-Type ไปยัง RADIUS Server แล้วระบุ Server IP และ Shared Secret ที่จะต้องตรงกันกับที่ระบุอยู่ใน config ที่ RADIUS server เช่น FreeRADIUS จะอยู่ในไฟล์ /etc/freeradius/clients.conf เป็นต้น (13 ก.ค. 2561) เลือก Called-Station-ID ด้วย หากต้องการเลข MAC Address เก็บด้วยนอกจากเก็บ IP (10 ก.ค. 2561) พบว่าจำเป็นต้องเลือก Accounting Options หัวข้อ Send Interim Updates เพื่อให้มีการส่งค่า accounting ได้ (โดยใช้ค่า Send update every 900 seconds ตามที่เป็นค่า default) แล้วระบุ IP Address

Read More »