Archive for November 2548

Squild proxy with Digest HTTP Authentication

เมื่อเร็วๆ นี้ผมพบว่าเน็ตเวิร์คที่ตัวเองดูแลอยู่มี traffic ขาออกมากกว่าขาเข้าอย่างมากมาย มีช่วงหนึ่งที่มี traffic ขาออกประมาณ 7 MBits/s เป็นช่วงระยะเวลาประมาณ 3 ชั่วโมง ซึ่งผมนึกไม่ออกว่าที่นี่จะมีข้อมูลส่งออกอะไรที่มากมายขนาดนี้ คาดว่าคงมีผู้ใช้ละเมิดระเบียบการใช้งานเครือข่าย ซึ่งในที่สุดข้อสงสัยของผมเป็นจริงเมื่อผมตรวจพบว่ามีการใช้โปรแกรมประเภท peer-to-peer

ด้วยความสะดวกสบายในการใช้งานเครือข่าย เพราะมีห้องปฏิบัติการหลายห้องที่เปิดให้นักศึกษาเข้าใช้งานได้ตลอด 24 ชั่วโมง กอรปกับการเพิ่มความเร็วในการเชื่อมต่อกับอินเทอร์เน็ตที่เพิ่มขึ้น และความละเลยของภาควิชาในการควบคุมดูแลนักศึกษา ระเบียบการใช้งานเครือข่ายจึงเป็นแค่กระดาษที่ถูกแจกจ่ายไปแล้วก็ถูกเก็บเข้าแฟ้ม

เมื่อถูกละเลยผมจึงต้องเล่นบทโหด ด้วยการตามปิด switch port ของผู้ใช้งานที่สร้างปัญหา ซึ่งผู้ใช้งานตัวแสบก็ทำการย้ายที่ไปเรื่อยๆ ในที่สุดก็โดนทั้งห้องปฏิบัติการ นอกจากนี้ความอยากใช้งานเครือข่ายมาก (อยากรู้จริงๆ ว่าใช้อะไรกันนักหนา ถ้าไม่เล่นเกมส์กับดาวน์โหลดไฟล์) ก็เลยทำการละเมิดระเบียบอีกข้อด้วยการต่อเชื่อมเน็ตเวิร์คระหว่างห้องปฏิบัติการโดยพละการ และด้วยสายเน็ตเวิร์คไม่ยาวพอ ก็เลยทำการต่อสายให้ยาวขึ้นด้วยตัวเอง ซึ่งผมเห็นแล้วถึงกับพูดไม่ออกในความมักง่าย เพราะสายทองแดงทุกเส้นมีโอกาสช็อตกันหมด

ด้วยเหตุที่เกิดขึ้นนี้จึงต้องคุมเข้มผู้ใช้งานที่ขาดสติ ด้วยการตัดไม่ให้เชื่อมต่อออกไปข้างนอกได้โดยตรง โดยผู้ใช้งานจะต้องใช้ผ่าน proxy ที่มีระบบ authentication เท่านั้น เพื่อที่จะตรวจสอบ ควบคุม และติดตามการใช้งานได้สะดวกขึ้น

ทีนี้เรื่องของ browser authentication มันก็มี 2 แบบคือ Basic access authentication กับ Digest access authenication ตามที่ระบุไว้ใน RFC2617

เมื่อลองเปรียบเทียบกันแล้ว basic access authentication จะมีความปลอดภัยน้อยกว่าเนื่องจากมีการส่งข้อมูลแบบ plain text ส่วน digest access authentitication นั้นจะมีการทำ digest ของ username password URL และ nounce ด้วย ซึ่งจะช่วยทำให้การส่งข้อมูลระหว่างการ authenticate นั้นไม่ได้อยู่ในรูปแบบของ plain text เท่านั้น

ลองดูตัวอย่างการทำ HTTP authentication กับ PHP ได้ที่นี่ครับ

ทีนี้เจ้า Squid สามารถที่จะทำการ authentication ด้วยวิธี digest access authenticatio ได้เช่นกัน โดยในการ compile จะต้องระบุไปด้วยว่าจะใช้ authentication แบบ digest ด้วย ดังตัวอย่างต่อไปนี้ ถ้าไม่ระบุไปก็จะมีแต่ basic authentication เท่านั้น

CFLAGS="-O2 -march=i686 -funroll-loops" \
./configure \
--exec_prefix=/usr \
--bindir=/usr/sbin \
--libexecdir=/usr/lib/squid \
--localstatedir=/var \
--sysconfdir=/etc/squid \
--enable-dlmalloc \
--enable-gnuregex \
--enable-xmalloc-statistics \
--with-pthreads \
--enable-removal-policies="heap" \
--enable-storeio=diskd,ufs \
--enable-delay-pools \
--enable-cache-digests \
--enable-err-language=English \
--enable-poll \
--enable-linux-netfilter \
--enable-truncate \
--enable-auth="basic digest"

อ่านวิธีการติดตั้ง squid แบบ quickstart ได้ที่นี่ครับ มีคนเขียนวิธีการติดตั้งเอาไว้เยอะแล้ว ดังนั้นผมจะข้ามรายละเอียดส่วนนี้ไป

ทีนี้เนื่องจากเราต้องใช้โปรแกรมที่เป็น helper ในการอ่าน digest password ก็ต้องเข้าไปในไดเรกทอรี helpers/digest_auth/password ที่อยู่ภายใต้ไดเรกทอรีของ squid-2.5.STABLEXX ที่โหลดมา จากนั้นให้สั่ง combile และ copy digest_pw_auth ไปไว้ยังไดเรกทอรี libexecdir ที่กำหนดไว้ตอนสั่ง configuration ข้างบน (/usr/lib/squid) ดังตัวอย่างต่อไปนี้

# make
# cp digest_pw_auth /usr/lib/squid

ขั้นตอนต่อไปก็คือเพิ่มคำสั่งต่อไปนี้ใน squid.conf (จะมีส่วนของ auth_param อยู่)

auth_param digest program /usr/lib/squid/digest_pw_auth /etc/squid/digpass
auth_param digest children 5
auth_param digest realm Your Company Name
auth_param digest nonce_garbage_interval 5 minutes
auth_param digest nonce_max_duration 30 minutes
auth_param digest nonce_max_count 50
auth_param digest nonce_strictness off
auth_param digest check_nonce_count on
auth_param digest post_workaround off
acl authentication proxy_auth REQUIRED

และใส่ acl ของ authentication ไว้ในส่วของ acl ด้วย
http_access allow authentication
http_access allow localnet
http_access deny all

จากนั้นก็สร้างไฟล์ชื่อ digpass ในไดเรกทอรี /etc/squid (ระบุไว้ในคำสั่ง auth_param ข้างต้น) ซึ่งเป็นที่เก็บ username และ password ในรูปแบบของ username:password เช่น somchai:ilovemywife โดบให้แยก username และ password ของผู้ใช้ให้อยู่คนละบรรทัด

จากนั้นก็ restart sqiud แล้วเปลี่ยนบราวเซอร์ให้มาใช้ proxy ลองเปิดเว็บ ถ้าทุกอย่างถูกต้องก็จะมี popup ขึ้นมาให้ใส่ username และ password ครับ

Popularity: 24% [?]

มาฟังเพลงกันดีกว่า

Name : Stop Motion
Time : 4.36
Artist : Harmonise Recreation
Album : First Destination

Popularity: 9% [?]

Internet Usage in Asia

Internet Usage in Asia

ผมนั่งอัพเดตข้อมูลในสไลด์ในส่วนที่เกี่ยวข้องกับสถิติต่างๆ ของเครือข่ายอินเทอร์เน็ต พบว่าผู้ใช้งานในแถบเอเชียคิดเป็น 33.9 % ของทั้งโลก ประมาณ 327 ล้านคน เฉพาะในแถบเอเชียนั้น ประเทศที่มีผู้ใข้งานอันดับหนึ่งคือ ประเทศจีน คิดเป็น 31.5% ของเอเชีย ประมาณ 103 ล้านคน รองลงมาก็เป็นญี่ปุ่น 23.9% ประมาณ 78 ล้านคน ส่วนอันดับที่สามก็คือ อินเดีย 12.0 % ประมาณ 39.2 ล้านคน

ประเทศไทยของเรานั้นอยู่ในอันดับที่ 8 คิดเป็น 2.6 % หรือประมาณ 8.42 ล้านคน มีอัตราการใช้งานที่เพิ่มขึ้นระหว่างปี 2000 – 2005 คิดเป็น 266.1%

เพื่อนบ้านของเราคือ ประเทศลาว อยู่ในอันดับที่ 29 คิดเป็น % แล้วได้ 0.0 หรือประมาณ 2 หมื่นกว่าคน ส่วนประเทศพม่า คิดเป็น 0.0 % เหมือนกัน หรือประมาณ 6 หมื่นกว่าคน แต่มีอัตราการใช้งานเพิ่มขึ้นในช่วง 2000 – 2005 ถึง 6,270 % เลยทีเดียว

ืที่มา: http://www.internetworldstats.com/stats3.htm#asia

Popularity: 9% [?]

ลอยกระทง 2548

ทำรายงานเกี่ยวกับลอยกระทงอยู่หรือเปล่าครับ? :-)

Popularity: 8% [?]

VIP Call center?

ขอพูดถึงเรื่องการเมืองได้ไหม เพราะผมมีความไม่เข้าใจหลายๆ อย่าง

ลองอ่านข่าว “ทรท.เปิดคอลเซ็นเตอร์“จากข่าวมีวัตถุประสงค์อยู่ 3 ข้อหลัก
1) การให้ข้อมูลเกี่ยวกับนโยบายพรรค หรือกิจกรรมการเมืองของพรรคทุกอย่าง
2) การให้บริการรับข้อมูลร้องเรียนในเรื่องต่างๆ อาทิ การไม่ได้รับบริการจากโรงพยาบาลของรัฐหรือเจ้าหน้าที่ตำรวจ
3) ให้บริการระยะยาว เช่น การรับแจ้งเบาะแสยาเสพติดหรือสิ่งผิดกฎหมายในพื้นที่ต่างๆ

วันนี้มีข่าวเรื่องการเปิดทำการของ call center นี้ โดยมีหัวหน้าพรรคไปทำการเปิดระบบ พร้อมทั้งลองรับโทรศัพท์ด้วยตนเอง มีรายหนึ่งร้องเรียนเกี่ยวกับยาเสพติดในท้องที่ หัวหน้าพรรคก็ต่อสายไปคุยกับตำรวจผู้รับผิดชอบในท้องที่นั้นทันที

ตัวอย่างข้างบนก็ดูดีนะครับ

แต่ผมก็ยังสงสัยในข้อ 2) อยู่ ถ้าผมเป็นสมาชิกพรรคแล้วผมมีเหตุที่จะต้องใช้บริการจากโรงพยาบาลหรือตำรวจ (ตำรวจมีหน้าที่บริการประชาชน ถูกไหมครับ) ซึ่งบังเอิญว่างานของโรงพยาบาลหรือตำรวจนั้นมีมากจนให้บริการผมไม่ทันใจ ผมก็โทรไปแจ้ง call center ให้ติดตามให้ แน่นอนว่าดีกับผมล่ะ ผมเหมือนจะได้สิทธิพิเศษที่จะได้รับบริการตรงนี้ เรื่องของผมที่ค้างคาอาจจะดำเนินการได้เร็วขึ้น

แล้วประชาชนคนตาดำๆ ก็ได้แต่มองตาปริบๆ

ผมว่าคงมีประชาชนทั่วๆ ไปจำนวนมากที่ไม่ได้เป็นสมาชิกพรรคการเมืองใดพรรคการเมืองหนึ่ง อย่างน้อยผมก็คนนึงหละ ผมไม่มีเส้นสาย ผมก็คงต้องรอ อย่างมากก็เข้าไปถามไปตามเรื่องด้วยตัวเอง ซึ่งมันจะเร็วขึ้นนั้นก็ไม่รู้ ไม่มีอะไรการันตีเลย

แล้วตำรวจหรือโรงพยาบาลจะเป็นอย่างไร ที่เหมือนมี call center โทรมาสอบถามติดตาม โดยหน่วยงานเจ้าของ call center นั้นเป็นพรรคการเมืองพรรคใหญ่ของประเทศที่มีหัวหน้าพรรคเป็นถึงผู้นำประเทศ

จะให้ข้อมูลเฉยๆ แล้วปฏิบัติงานไปตามปกติ ตามขั้นตอนเดิม หรือจะเร่งรัดคิว แทรกและแซงเรื่องของสมาชิกพรรคขึ้นมาก่อนคนธรรมดาทั่วๆ ไป

จริงอยู่ที่แต่ละแห่งย่อมมีปัญหาในการทำงาน บางแห่งอาจดำเนินการชักช้าและมีปัญหาจริงๆ จนกระทั่งประชาชนเดือดร้อน แล้วทำไมรัฐไม่คิดทำ call center ขึ้นมาเองบ้าง ทำงานที่มันเหมือนๆ call center ของ ทรท. นี่แหละ แต่เน้นตรงข้อ 2) ให้มากหน่อย แล้วคอยติดตามตรวจสอบปัญหา เพื่อที่จะรวบรวมแล้วนำมาแก้ไขทั้งระบบ

อย่างนี้ถ้าเกิดมีใครสักคนอยากจะตั้ง call center ทำนองเดียวกันนี้ขึ้นมาบ้างได้ไหม เพื่อทำหน้าที่เร่งรัดติดตามงานที่คั่งค้างชักช้า เปิดเป็นบริษัทรับติดตามงานล่าช้าของรัฐทั่วราชอาณาจักร

ผมได้ยินนายกให้สัมภาษณ์ว่า จะให้เน้นดูแลจังหวัดที่ให้การสนับสนุนพรรคก่อน เมื่อรวมกับ call center ด้วยแล้วทำให้งงๆ ว่า ประชาชนคนไทยจะถูกแบ่งออกเป็น 2 กลุ่มแล้วหรือไร คือ กลุ่มที่เป็นสมาชิกและไม่เป็นสมาชิกของพรรค เหมือนเป็นกลุ่มคน VIP และคนธรรมดาทั่วๆ ไป

เข้าใจว่านี้เป็นกลยุทธ์หนึ่งที่จะแสดงให้เห็นว่าผู้ที่เป็นสมาชิกของพรรคนั้นจะได้รับสิทธิพิเศษกว่าคนอื่นๆ ซึ่งอาจจะทำให้มีคนสนใจสมัครเป็นสมาชิกของพรรคมากขึ้น นัยว่าเป็นเรื่องของการเอา CRM (Customer Relationship Management) มาใช้

น่าน้อยใจสำหรับคนธรรมดาๆ ชาวบ้านตาดำๆ ทั่วไปไหม ที่อยู่ดีๆ คนข้างบ้านก็กลายเป็นกลุ่มคน VIP ไปซะงั้น

Popularity: 11% [?]

Next Page »