วันเสาร์ที่ 6 กันยายน พ.ศ. 2557

Fix SunCertPathBuilderException: Unable To Find Valid Certification Path To Requested Target in Alfresco

การที่จะให้ Tomcat คุยกับ Server ต่างๆ ผ่าน SSL Protocol นั้นเราต้องทำการ Install Certificate ให้กับตัว Tomcat เสียก่อน (Java) ไม่เว้นแม้แต่กรณีที่เป็น Untrust Certificate ก็จำเป็นต้อง add Certificate ก่อนเพื่อที่จะให้ Tomcat สามารถเชื่อมต่อไปยัง Server ที่ต้องการผ่าน Protocol SSL ได้อย่างสมบูรณ์

โดยหากไม่ทำการ Add Certificate ก่อนจะทำให้เวลา Tomcat คุยไปยัง Server ผ่าน SSL แล้วจะเกิด Exception ขึ้น (SSLHandshakeException) หรือคุยกันไม่รู้เรื่องนั่นเอง

ยกตัวอย่างเช่นบน Alfresco เมื่อเรา config smtps ไปยัง google mail แล้วเราไม่ได้ใส่ Certificate ก็จะเกิด Error SunCertPathBuilderException ขึ้นซึ่งสามารถแก้ไขได้โดย

  1. Request ไปยัง SMTP Server ของ Google ด้วยคำสั่ง openssl s_client -connect smtp.gmail.com:465
  2. Save Certificate เป็นนามสกุล .cert หรือ .pem เช่น gmail.cert โดยให้ใช้ Content ตั้งแต่ ---BEGIN CERTIFICATE--- จนถึง ---END CERTIFICATE---
  3. สั่ง Import Certificate ลงไปใน keystore ที่ใช้รัน Tomcat ของตัว Alfresco โดยใช้คำสั่ง
    sudo keytool -import -alias smtp.gmail.com -keystore /path/to/keystore -file /path/to/gmail.cert
    เช่น
    sudo /opt/alfresco-4.2.c/java/bin/keytool -import -alias smtp.gmail.com -keystore /opt/alfresco-4.2.c/java/jre/lib/security/cacerts -file /home/admins/gmail.cert
  4. ตรวจสอบว่า Certificate ที่เรา add เข้าไปนั้นอยู่ใน keystore แล้วหรือยังด้วยคำสั่ง
    keytool -list -v -keystore /path/to/keystore เช่น /opt/alfresco-4.2.c/java/bin/keytool -list -v -keystore /opt/alfresco-4.2.c/java/jre/lib/security/cacerts
โดยเมื่อ Import สำเร็จแล้ว สั่ง Restart Tomcat ก็จะไม่ Error SunCertPathBuilderException อีกต่อไป
Continue Reading...

วันพฤหัสบดีที่ 6 มีนาคม พ.ศ. 2557

How to login to Alfresco 4 with IE 11

เริ่มที่ IE11 ไม่สามารถ Login เข้า Alfresco ผ่าน Alfresco Share ได้ https://forums.alfresco.com/forum/end-user-discussions/alfresco-share/alfresco-share-login-doesnt-work-internet-explorer-11

โดยมีผู้ให้คำตอบว่า IE11 นั้นมันเปลี่ยน User Agent จึงทำให้มัน Login ไม่ได้ รายละเอียดอ่านได้จาก link ด้านบน ซึ่งส่วนนั้นเราคงไม่สนใจมันมากกว่า "แล้วจะทำอย่างไรล่ะ" ดังนั้นวันนี้เราจะทำให้ IE11 Login Alfresco ได้กัน

ก่อนอื่นให้เปิด IE11 ก่อนแล้วเข้าไปที่ Alfresco จากนั้นกดปุ่ม F12 เพื่อเปิด Developer Tools ขึ้นมา จากนั้น Scroll แถบเครื่องมือลงไปด้านล่างเพื่อเปิด Emulator ขึ้นมา


ที่ Document mode ให้เปลี่ยนจาก Edge (Default) ไปเป็น 10


จากนั้นให้ Login ตามปกติ จะสามารถ Login ได้แล้ว
Continue Reading...

วันพฤหัสบดีที่ 9 มกราคม พ.ศ. 2557

How to make SSH Tunnel with PuTTY

การทำ SSH Tunnel นั้นเปรียบเสมือนการวางท่อ จากเครื่องเราไปยัง ปลายทาง ซึ่งเราสามารถกำหนดได้ว่า ต้นทางและปลายทางนั้นจะให้โผล่ไปยัง port อะไร

ยกตัวอย่างเช่น ผมทำ Forward Port 22 และ 80 จากบ้านของผม (สมมติว่าใช้ Dyndns) ไปยัง Web Server อยู่มาวันหนึ่ง ผมอยากเข้าไปยัง Router ของบ้านผมที่ใช้ port 80 เหมือนกัน ซึ่งหากเข้าไปยัง domain ดังกล่าว มันจะ forward ไปยังเครื่อง Web ของผมทันที

โจทย์คือ ผมจะเข้าไปยัง Port 80 ของ Router ได้อย่างไร
คำตอบคือ ใช้ Tunnel วางท่อจาก Port 80 ของ Router มายัง Port ?? ของเครื่องเรา

โดยเครื่องมือที่ผมจะใช้ทำ SSH Tunnel คือ PuTTY ครับโดยหากเปิด PuTTY มา ใส่ข้อมูลในส่วนของ Session ให้ครบตามปกติ จากนั้นไปที่ Connection > SSH > Tunnels
จากนั้นใส่ข้อมูลใน Source port และ Destination ดังนี้
  • Source port : ใส่ Port ที่เราจะเรียกใช้งานในเครื่องเรา (อย่าใช้ Port ที่ใช้งานอยู่แล้ว) เช่น 1234
  • Destination : ใส่จุดหมายปลายทางที่เราจะเข้าไปเช่น IP Router 192.168.1.1:80
เมื่อใส่ข้อมูลแล้วให้กดปุ่ม Add แล้ว Open Connection ตามปกติ 

ผลลัพธ์ที่ได้คือ เมื่อเราเรียกใช้งาน http://localhost:1234 มันจะวิ่งไปยัง 192.168.1.1 port 80 ทันที



Continue Reading...

วันจันทร์ที่ 6 มกราคม พ.ศ. 2557

Clear DNS Cache in Windows 8

ใน Windows นั้นการ Clear DNS Cache มีจุดที่ต้องระวังอยู่หลายที่ดังนี้
  1. Browser DNS Cache
  2. Network DNS Cache
  3. Windows DNS Client Service Cache
โดยแต่ละวิธีเราสามารถ Clear DNS ได้ดังนี้
  1. Browser
    1. (Chrome) เข้าไปที่ URL chrome://net-internals/#dns จากนั้นสั่ง Clear host cache
    2. (Firefox) กดปุ่ม Ctrl + Shift + Delete จากนั้นเลือก Clear Browsing & Download History โดยกำหนด Time range เป็นเวลาที่ต้องการหรือ Everything ในกรณีที่ไม่ทราบว่าต้องใช้ Time range เท่าไร
    3. (IE) _/\_ อันนี้ผมไม่ทราบครับ
  2. Network
    1. เปิด Cmd Prompt จากนั้นสั่ง ipconfig / flushdns
  3. Windows DNS Client Servcie
    1. เข้าไปที่ Task Manager > Services ไปที่ Dnscache แล้วสั่ง Restart
Continue Reading...

Blogroll

About