Latest Entries »

สำหรับคนที่ใช้ VMware ESXi ตั้งแต่เวอร์ชั่น 6.0 Update 2 ขึ้นไป (ตอนนี้ยังไม่มีใหม่กว่านี้ แต่เขียนเผื่อไว้ก่อน) สามารถบริหารจัดการ VMware ESXi ได้โดยไม่จำเป็นต้องติดตั้ง vSphere Client ก่อนใช้งาน โดยสามารถเปิดใช้งานผ่านเวปบราวเซอร์ได้เหมือนกับ vSphere Web Client แบบไม่ต้องมี vCenter Server ด้วย

วิธีการใช้งานคือ
1) เปิดเวปบราวเซอร์ แล้วกรอก IP หรือ name ของ ESXi จะพบว่ามีเมนูใหม่เพิ่มมาคือ Open the VMware Host Client คลิ๊กได้เลยVMware_Host_Client_1

2) จะพบหน้าให้ login ก็ใช่ user กับ password แล้วก็ login
VMware_Host_Client_2

3) เราสามารถบริหารจัดการได้เหมือนกับ vSphere Client เลย เพียงแค่เมนูอยู่คนละที่เท่านั้น โดยมีฟีเจอร์ที่น่าสนใจคือสามารถเปิด console ของ VM ภายในเหน้าเดิมได้ ไม่ต้องติดตั้ง plugin ใดๆ เพิ่มด้วย
VMware_Host_Client_3

ใครที่ดูแลระบบ Active Directory แล้วรันคำสั่ง dcdiag อาจจะเจอ error เกี่ยวกับ NCSsecDesc ตามตัวอย่างด้านล่าง

Starting test: NCSecDesc
  Error NT AUTHORITY\ENTERPRISE DOMAIN CONTROLLERS doesn't have
      Replicating Directory Changes In Filtered Set
  access rights for the naming context:
  DC=ForestDnsZones,DC=company,DC=co,DC=th
  Error NT AUTHORITY\ENTERPRISE DOMAIN CONTROLLERS doesn't have
      Replicating Directory Changes In Filtered Set
  access rights for the naming context:
  DC=DomainDnsZones,DC=company,DC=co,DC=th
  ......................... SERVER01 failed test NCSecDesc

อ้างอิงจาก Microsoft KB967482 ไม่ต้องตกใจนะครับ มันเป็น error ที่จะเกิดขึ้นเมื่อไม่ได้รัน adprep /rodcprep ซึ่งถ้าคุนไม่ได้ใช้ read only domain controller (RODC) ก็สามารถปล่อยข้าม error นี้ได้

แต่ถ้าไม่สบายใจอยากให้มันหายไปเลยก็สามารถทำได้โดย เพิ่ม permission ให้กับ ENTERPRISE DOMAIN CONTROLLERS ให้มีสิทธิ์ Replicating Directory Changes In Filtered Set ที่ DC=ForestDnsZones,DC=company,DC=co,DC=th และ DC=DomainDnsZones,DC=company,DC=co,DC=th ได้ตามรูปข้างล่างครับ

1) เปิด ADSI Edit แล้วใส่ Connection Point ไปที่ DC=ForestDnsZones,DC=company,DC=co,DC=th จากนั้นกด OK
DCDIAG_NCSecDesc_Fail_1

2) ขยาย แล้วคลิ๊กขวาที่ ForestDnsZones เลือก Properties
DCDIAG_NCSecDesc_Fail_2

3) ไปที่ tab Security เลื่อนกรุ๊ปลงมาจนเจอ ENTERPRISE DOMAIN CONTROLLERS แล้วเลื่อน permission ลงมาจนเจอ Replicating Directory Changes In Filtered Set ให้ติ๊กถูกด้านหน้า
DCDIAG_NCSecDesc_Fail_3

4) ทำซ้ำข้อ 1-3 กับ DC=DomainDnsZones,DC=company,DC=co,DC=th

5) เมื่อรัน dcdiag อีกครั้งก็จะไม่พบ error แล้ว

Starting test: NCSecDesc
  ......................... SERVER01 passed test NCSecDesc

Credit: Microsoft TechNet Social DCDIAG – NCSecDesc error

ในช่วงปีที่ผ่านมามีคำถามเกี่ยวกับ กรณีที่เครื่องคิดไวรัสเรียกค่าไถ่หรือที่เรียกว่า ransomware ทางออกที่คุณทำได้มีไม่มากนักครับ โดยได้แก่
1) นำ backup ที่มีอยู่มา restore ซะ วิธีนี้เป็นวิธีที่ดีที่สุดครับ เพราะมีข้อมูลกลับมาให้ใช้แน่ๆ เม้ว่าอาจเก่าไปบ้าง แต่หลายๆ ครั้งสิ่งที่เกิดขึ้นคือมีแต่ server backup ไม่มี client backup งั้นไปดูข้อค่อไป
2) ถ้าไม่มี client backup แต่ยังเปิดฟีเจอร์ volume shadow copies หรือ previous version ก็ยังสามารถ restore ได้นะครับ
3) จ่ายเงินค่าไถ่ครับ วิธีนี้จะได้ผลก็ต่อเมื่อคุณจ่ายเงินภายในเวลาที่เค้ากำหนดก่อนที่จะลบ encryption key ไป รวมทั้งคุณติด ransomware เพียงแค่ตัวเดียวเท่านั้น เพราะถ้าติด 2 ตัว แล้วตัวไหนเข้ารหัสก่อน เข้าหลังจะรู้ได้อย่างไร
4) ทำใจครับ
หลังจากเลือกแนวทางแก้ไขได้แล้ว สิ่งที่ควรต้องทำในอนาคตเพื่อป้องกัน ransomware คืออัพเดต virus signature ให้ใหม่อยู่เสมอ และทำ client backup หรือ file server backup อย่างสม่ำเสมอเช่นกันครับ

ปล. สร้าง backup job กันแล้วอย่าลือทดสอบ restore อย่างน้อยปีละ 1 ครั้งด้วยนะครับ เพื่อจะได้มั่นใจว่าที่ backup ไป สามารถ restore กลับมาใช้งานได้จริง

โดยปกติแล้ว 1 public IP address (1 TCP port: TCP\443) จะติดตั้ง SSL certificate ได้แค่ใบเดียว เนื่องจากกระบวนการคุยของ HTTPS
1) TCP 3-way handcheck
2) SSL/TLS request
3) HTTP request
ซึ่งจะทำให้ web server ไม่ทราบว่า client ต้องการเช้าเวปไหน จึงจะส่ง certificate ได้แค่ 1 ใบเท่านั้น

แต่จากปัญหาดังกล่าวเมื่อใช้งานกับ web server ที่มีเวปไซต์ในเครื่องจำนวนมาก หรือที่ Apache เรียกว่า virtual host ก็จะมีเพียงเวปไซต์เดียวที่สามารถใช้งาน SSL ได้ ดังนั้นจึงมีการปรับปรุงขึ้นโดยเรียกว่า Server Name Indication (SNI) ซึ่งในขั้นตอนที่ 2 SSL/TLS request จะมีการส่ง host address เช่นเดียวกับ http/1.1 ในขั้นตอนก่อนที่ web server จะส่ง SSL certificate ซึ่งทำให้ web server ทราบได้ว่า client จะใช้เวปไซต์ไหน แล้วจึงเลือกส่ง SSL certificate ให้เหมาะกับ client นั้นๆ ได้

โดยในปัจจุบันทั้ง web server และ browser ก็สนับสนุนการทำงาน SNI กันหมดแล้วครับ

SSL certificate ที่เราใช้งานจะมี attribute ที่บอกว่า cetificate ยังใช้ได้หรือไม่ ก็คือ Certificate Revocation List (หรือ CRL)
CRL_1

โดยทั่วไป CRL จะไม่ถูกใช้งานยกเง้นกรณีที่ต้องการยกเลิก certificate เดิม ทางเจ้าของเวปไซต์หรือคนที่ออก certificate ก็จะสั่งยกเลิก (revoke) certificate โดยการใส่ serial number ของ certificate ที่ยกเลิกไปตาม URL ที่ระบุไว้

รูปข้างล่างผมเปิดไปตาม URL ที่ระบุไว้ใน certifiace คือ http://crl.godaddy.com/gdig2s1-119.crl ก็จะพบ serial number ของ certificate อื่นที่ถูกยกเลิกมารวมอยู่ใน list
CRL_2

คำสั่ง command line ตัวนึงที่น่าสนใจคือ robocopy เพราะมันสามารถทำได้หลายอย่างมาก อย่างในตัวอย่างคือ

robocopy C:\Documents\ Z:\ /MIR /DCOPY:T /NFL /NDL /R:1 /W:1

ซึ่งพารามิเตอร์แต่ละตัวหมายถึง
C:\Documents\ คือต้นทาง
Z:\ คือปลายทาง
/MIR คือทำ mirror ให้ไฟล์และไดเรกทอรีเหมือนกัน
/DCOPY:T ให้เอาเวลา timestamp ของไดเรกทอรีไปด้วย
/NFL ไม่ต้องโชว์ไฟล์ (No File List)
/NDL ไม่ต้องโชว์ไดเรกทอรี (No Directory List)
/R:1 ให้พยายามซ้ำ (retry) 1 ครั้ง
/W:1 ให้รอ (wait) ก่อนพยายามเป็นเวลา 1 วินาที

แต่ถ้าอยากได้รายละเอียดมากกว่านี้ สามารถเรียกคำอธิบายได้ด้วยคำสั่ง

robocopy /?

1) Download BIND for Windows ได้จากที่นี่ ftp://ftp.nominum.com/pub/isc/bind9/ ของผมเลือกเวอร์ชั่น 9.10.3
dig_win10_1a

และเนื่องจากผมใช้ Windows 10 64-bit จึงเลือก x64 (ไม่ต้องเลือกอันที่เป็น debug นะครับ)
dig_win10_1b

2) เมื่อโหลดมาแล้วก็แตกไฟล์ zip จะพบไฟล์ดังต่อไปนี้

dig.exe
host.exe
libbind9.dll
libdns.dll
libeay32.dll
libisc.dll
libisccfg.dll
liblwres.dll
libxml2.dll

ให้ copy ไปไว้ที่ C:\Windows\System32

3) ถ้าใครยังไม่ได้ติดตั้ง Microsoft Visual C++ Redistributable package จำเป็นต้องลงด้วย หลายเครื่องน่าจะติดตั้งจากโปรแกรมอื่นแล้วสามารถข้ามได้ แต่ถ้าไม่มีสามารถติดตั้งได้จาก zip ที่ดาวน์โหลดมาได้เลยครับ สำหรับเครื่องผมมีอยู่แล้วข้ามได้
คำแนะนำของผมคือข้ามไปก่อน ถ้า error ค่อยมาลง
dig_win10_3

4) เท่านี้เราก็สามารถเรียกใช้งาน dig ได้แล้วครับ
dig_win10_4

เครดิต
http://www.blog.paranoidpenguin.net/2014/09/how-to-install-dig-on-a-windows-8-1-64-bit-system/
https://samsclass.info/40/proj/digwin.htm

แม้ว่า bcrypt จะทำงานช้ากว่า MD5 และ SHA256 แต่นั่นก็ไม่ใช่เหตุผลที่ควรใช้ bcrypt เพื่อ hash password แต่เป็นเพราะการคำนวณ hash โดยใช้ GPU (NVidia หรือ ATI) มาช่วยทำให้เร็วขึ้นได้ ถ้าอยากให้เร็วขึ้นอีกก็เพิ่ม GPU เป็น 2, 4, หรือ 8 ตัว ซึ่งอัลกอริทึมอย่าง MD5 และ SHA256 สามารถเร่งให้คำนวณได้เร็วขึ้นด้วย GPU ได้ แต่อัลกอริทึม bcrypt การนำ GPU มาช่วยไม่ได้เพิ่มประสิทธิภาพมากนัก ดังนั้นเหตุผลที่แนะนำให้ใช้ bcrypt กับพาสเวิร์ดคือเวลาที่ใช้ในการ brute force จะนานกว่าอัลกอริทึมอื่นเนื่องจากไม่สามารถนำ GPU มาช่วยได้

แต่อย่างไรก็ตามหากมีเวลามากพอ bcrypt ก็จะ brute force ได้อยู่ดีเหมือนกับ hash function หรือ encryption อื่นๆ ครับ

ถ้าใครสนใจสามารถอื่นข้อมูลเพิ่มเติมได้จาก
http://blog.codinghorror.com/speed-hashing/

จาก post ก่อนโน้น SSL Certificate มีกี่แบบ แตกต่างกันอย่างไร ล่าสุดผมพบว่ามีเวปไซต์ที่ใช้ทั้ง SAN และ Wildcard ได้ในใบเดียวกัน ไม่ใช่คนอื่นไกลเลย แต่เป็นอากู๋ Google เอง

โดยมีรายละเอียดตามด้านล่างครับ
2015-06-13_SAN_&_Wildcard_SSL_1


นอกจากนี้ Google ยังมี Intermediate certificate authorities เป็นของตัวเองอีกด้วย ถ้าออก cert ไม่เยอะจริงไม่คุ้มค่าตั้งเองนะเนี่ย
2015-06-13_SAN_&_Wildcard_SSL_2

Edit DNS Configure at THNIC

นอกเนื่องการการตั้งค่า DNS ที่ BIND หรือ Windows Server ของเราแล้ว ยังต้องมีการกำหนดค่าที่ฝั่งของผู้จดทะเบียน DNS ด้วย ในกรณีที่ใช้ .th จะอยู่ในความดูแลของ THNIC ครับ

การแก้ไข DNS ที่ THNIC สามารถทำได้ง่ายๆ ดังนี้
1) เปิดเวปบราวเซอร์ไปที่ https://www.thnic.co.th/
2) เลือก Member Login
THNIC_DNS_2
3) กรอกข้อมูล user และ password
THNIC_DNS_3
4) เลือกแก้ไข DNS
THNIC_DNS_4
5) ใส่ค่าที่ต้องการลงไป เลือก checkbox ว่าใช่ และกด Continue
THNIC_DNS_5
6) เท่านี้ก็เรียบร้อยแล้วครับ ที่เหลือก็คือรอให้ THNIC refresh ค่า DNS Zone และรอให้ cache ใน DNS server อื่นๆ expire ก็ใช้ได้ครับ ผมลองทดสอบกับ google DNS (8.8.8.8) พบว่ารอไม่ถึง 5 นาทีก็ใช้ได้แล้วครับ