DebConf15 – Travel – Day 1

DebConf15 was held on 15th – 22nd August 2015 in Heidelberg, Germany. It was relatively easy for me travel since I could take direct flights from Bangkok to Frankfurt, then Heidelberg is about 1 hour away by bus or train. Also, I currently hold an official passport, which can enter to Germany without applying a visa.

I left Bangkok on 13th, and arrived Frankfurt on 14th, the Heidelberg was 1 hour away by bus. After checked at the hotel, I walked to the venue for registration. I met Andrew, Paul, Hector there. Some already there since DebCamp week.

On the Day 1, it is about 560 participants registered in DebConf15. This is quite number. Sure enough, many old friends I’ve been acquainted like Anibal, Hideki (with his wife), Andrew Lee, Paul Liu, Aigarius, Jonas. Still, miss others like Christian Perrier.

There was also a job fair for those sponsors/companies that wanted to seek for Debian experts. One of them was 2 Sigma. I didn’t really know about this company, but after few chatted, boys, IT department of this company is crazy! They discovered Thunderstrike bug, Intel bugs, and create Magic Lantern firmware for Canon EOS.

Nothing much for the Day 1 though. I attended 3 sessions in the morning, opening ceremony, Golang, and obnam, and started to do my works in the afternoon till dinner then headed back to the hotel.

Getting “A” from Qualy’s SSL

Qualys SSL Labs provides a SSL Server Test for awhile. You can rate your web site at https://www.ssllabs.com/ssltest

To get rating “A”, there are few straightforward tricks:

  1. Disable all versions of SSL protocol. Enable only TLS. e.g.,
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2
  2. Choose only strong ciphers, e.g., you’ll sacrifice some very old clients.
    ssl_ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS;
  3. Use HSTS, e.g.,
    add_header Strict-Transport-Security max-age=31536000;

Optionally,

ssl_dhparam /etc/ssl/private/dhparam.pem;
ssl_stapling on;
ssl_stapling_verify on;

Create an aligned partition

An aligned partition gives you the best read/write performance, but you will have to sacrifice some space to align your partition.

To create,

# parted -a optimal /dev/sda mkpart primary 0% 100%

And you can check if it is aligned,

# parted /dev/sda align-check optimal 1

NGINX HTTP Basic Authentication with LDAP

First,  install libpam-ldap

# apt-get install libpam-ldap

Config ldap:// properly. This will add ldap backend to PAM.

Now, create a file /etc/pam.d/nginx

@include common-auth
@include common-account

This will add nginx service in PAM.

Then, config your nginx to enable HTTP basic authentication using auth_pam and PAM service name “nginx”

location /someplace {
  auth_pam "Restricted Area";
  auth_pam_service_name nginx;
}

Restart nginx. Done.

Yellow Padlock on Chrome/iOS

วันนี้ได้รับแจ้งจากผู้ใช้เรื่อง https ของ มข. ตรงช่อง URL ขึ้นเป็นสีเหลือง (yellow padlock) อย่างที่ปรากฏในภาพบน แทนที่จะเป็นสีเขียว (green padlock) เหมือนทุกครั้ง

เท่าที่ตรวจสอบ พบว่าเกิดกับ Google Chrome / iOS บางรุ่น และเป็น bug ในส่วนการตรวจสอบ certificate chain ของ Google Chrome / iOS เอง

Google Chrome / iOS รุ่นถัดไปน่าจะแก้ไข bug นี้

ระหว่างนี้ ถ้าต้องการยืนยันเพื่อความมั่นใจ ให้แตะที่ icon สีเหลืองตรงช่อง URL และดูรายละเอียดที่ปรากฏตามภาพข้างล่าง

Processed with Moldiv

  • icon ที่หนึ่ง เป็นตัวยืนยัน identity ของ website ว่าถูกต้องหรือไม่
  • icon ที่สอง เป็นตัวยืนยันการเข้ารหัสลับที่มีความปลอดภัยสูง
  •  icon ที่สาม เป็นตัวบอกว่าเคยเข้าเว็บนี้มาก่อนไหม

ถ้า icon ที่หนึ่งและสอง เป็นสีเขียว (อย่างเช่น ที่ปรากฏในภาพ) ก็ถือว่ามีความปลอดภัยแล้วล่ะ

Reference:
https://code.google.com/p/chromium/issues/detail?id=467084
https://productforums.google.com/forum/#!topic/chrome/lQ6x51gPR3Y

Linux kernel 4.0

รีลีสไปแล้ว

และเรื่องใหญ่สุดของ 4.0 คือ infrastructure สำหรับอัพเกรดเคอร์เนลโดยไม่ต้อง reboot อีกต่อไป :)

ที่จริงไม่ใช่ของใหม่เสียทีเดียวมันคือฟีเจอร์เดียวกันกับ Ksplice (Oracle), Kpatch (RedHat) นั่นเอง

มหาสงกรานต์ ๒๕๕๘

คำนวณหาวันสงกรานต์กัน

ใช้สูตรเดิม

คำนวณ ปี จ.ศ. = 2558 – 1181 = 1377

หาวันเถลิงศก
= 1377 * 0.25875
+ floor(1377 / 100 + 0.38)
– floor(1377 / 4 + 0.5)
– floor(1377 / 400 + 0.595)
– 5.53375
= 356.29875 + 14 – 344 – 4 – 5.53375
= 16.765 (วันที่ 16 + 0.765 วัน)

วันมหาสงกรานต์ = วันเถลิงศก – 2.165 วัน
16.765 – 2.165 = 14.6 (วันที่ 14 + 0.6 วัน)

แปลง 0.6 เป็นเวลา
0.6 * 24 = 14.4
0.4 * 60 = 24

ได้ว่า มหาสงกรานต์จะตรงกับวันที่ 14 เมษายน 2558 เวลา 14:24 น. จ้ะ

The next version of Linux Kernel

เมื่อกลางเดือนกุมภา Linus Torvalds บอกว่า เลข minor version ของ Linux Kernel นี่มันชักจะสูงเกินไปแล้ว (เหมือนตอน 2.6.3x) เลยทำโพล (ผ่าน G+) ว่า Linux Kernel version ถัดไปจะเป็น 3.20 หรือเปลี่ยน major เป็น 4.0 ไปเลย

มีคนกดเลือกไปสามหมื่นกว่าคน (/me ด้วย) สรุปผลโพลได้ว่า

44% เลือก 3.20
56% เลือก 4.0

ดังนั้น รุ่นถัดจาก 3.19 ก็เลยจะเป็น Linux Kernel 4.0 จ้ะ

และเมื่อปลายเดือนกุมภา Linus ก็ปล่อย 4.0-rc1 ก็ออกมาแล้ว

Superfish & Lenovo

Superfish กลายเป็นข่าวดังเมื่อไม่นานมานี้ เนื่องจากมีคนพบว่า Lenovo preload adware ตัวนี้มาจากโรงงาน ว่าง่ายๆ มันทำ targeted/personalized ads โดยเอาข้อมูลการใช้งานของผู้ใช้ไปวิเคราะห์ดูว่าน่าจะส่งโฆษณาอะไรดี

แต่ความน่ากลัวของ Superfish มันอยู่ที่กลไกการทำงานของมัน เพราะจะทำแบบนั้นได้แปลว่ามัน intercept ข้อมูลที่ผู้ใช้เยี่ยมชมเว็บต่างๆ ซึ่งก็คือมันทำงานเป็น Man-in-the-Middle นั่นแหละ

ที่แสบคือมัน intercept HTTPS ได้ โดย browser จับผิดไม่ได้

เท่าที่เข้าใจ หลักการของ Superfish คือ ทำตัวเองเป็น root CA ที่ browser เชื่อถือ ด้วยการใช้ adware เป็นตัวฝัง root certificate ไว้ใน browser พอผู้ใช้เข้าเว็บที่เป็น HTTPS มันก็จะ intercept ถอดรหัส เก็บข้อมูล ใช้ key ใน root certificate ของมันเอง + hostname ของเว็บมาสร้าง certificate ใบใหม่ แล้ว establish SSL กับ browser ในเครื่อง

ผล: browser จะไม่เตือนอะไรเลย เพราะ certificate ที่ใช้สร้างด้วย trusted root CA certificate ที่ฝังใน browser และ hostname ก็ตรงกับใน URL เข้าเว็บไหนก็เขียว กุญแจก็ล็อค เผลอๆ เข้าพวกที่ใช้ self-sign certificate ก็ยังจะเขียวเลย :P

แปลว่าข้อมูลจะถูกดูดออกไปได้โดยผู้ใช้ไม่รู้ตัว ถึงแม้จะเป็น HTTPS แล้วก็ตาม รั่วได้หมดทั้ง password, credit card และข้อมูลส่วนตัวอื่นๆ ที่ปกติไม่อยากให้ใครรู้

เคส Superfish เกิดกับ MS Windows เท่านั้น :P