วันจันทร์ที่ 18 พฤษภาคม พ.ศ. 2552

Cisco Telepresence System

เทคโนโลยีเรื่องการติดต่อสื่อสาร นับว่าปัจจุบันมีผลในการ drive business มากขึ้นเรื่อยๆ โดยเฉพาะยุคน้ำมันแพงในช่วงจังหวะเวลานี้ ย้อนกลับไปสัก 5-7 ปีที่ผ่านมา ผมมองการใช้ video conference เป็นเรื่องไกลตัวมากๆ เนื่องจากข้อจำกัดเรื่องของ bandwidth และตัวอุปกรณ์ที่ใช้สำหรับ conference มีราคาค่อนข้างสูง แต่ปัจจุบันกำแพงราคาเริ่มพังทลายลง บ้านแต่ละหลังมี ADSL ความเร็วอย่างต่ำๆ 2 Mbps ใช้กันในราคาเพียงแค่ 490-590 ต่อเดือนเท่านั้น ส่งผลให้การทำงานสะดวกสบายขึ้นกว่าเดิม การติดต่อสื่อสารผ่านทาง IP เป็นเรื่องง่ายมากขึ้นตามไปด้วย

การประชุมเป็นเรื่องปกติของคนทำงาน แต่สำหรับองค์กร หรือบริษัทไหน มีสาขาและต้องจำเป็นต้องติดต่อสื่อสารถึงกันนั้น ตัวระบบ video conference มีส่วนช่วยในการประหยัดค่าใช้จ่ายในการเดินทาง ความปลอดภัยในการเดินทางบนท้องถนน หรือบนฟ้าก็ตาม และยังเซฟเวลาในการเดินทางได้อีกด้วย ว่าด้วยเรื่องของไอพีจึงช่วยขยายขอบเขตการสื่อสาร เพื่อรองรับการพบปะพูดคุยและการทำงานร่วมกันของผู้คน โดยไม่จำเป็นต้องเดินทางไปถึงที่นั่น ซึ่งเมื่อมองถึงภาพอนาคต มันประหยัดค่าใช้จ่ายอย่างมหาศาลเลยทีเดียว เพราะฉะนั้น การที่ CEO ของบริษัทจะ invest อะไรก็ตาม มักจะดู ROI (Return of Investment) ที่ได้กลับมา และส่วนใหญ่ก็มักจะเอาเงินไปลงทุนในเรื่อง IT โดยเฉพาะช่วงวิกฤตน้ำมันแพงขณะนี้ตัว VoIP, Video confernce solution จึงเข้ามามีบทบาทเยอะเลยทีเดียวครับ

แต่สิ่งหนึ่งที่ซิสโก้พัฒนาขึ้นมาจากมุมมองของ video conference ก็คือระบบ Telepresence ระบบนี้เองเป็นการผสมผสานระบบเสียงคุณภาพสูง, วิดีโอความละเอียดสูง และระบบอินเตอร์แอคทีฟ เข้าด้วยกันเพื่อสร้างระบบการประชุมแบบตัวต่อตัวผ่านทางเครือข่าย IP นั่นเอง ดังนั้นเราจึงสามารถพบปะ ทำงาน และเรียนรู้ได้ทุกสถานที่ทั่วโลกผ่านการติดต่อระหว่างระบบ Cisco TelePresence โดยส่วนตัวผมเคยไปดูเทคโนโลยีนี้ที่สิงคโปร์ และฮ่องกงมาแล้ว พูดง่ายๆ ก็คือเหมือนเรานั่งอยู่ในห้องประชุมเดียวกันเลยทีเดียว แต่แท้ที่จริงแล้ว อยู่กันคนละประเทศกันเลยหล่ะครับ ตอนนี้เข้าใจว่าทางซิสโก้ ประเทศไทย ได้นำระบบนี้ติดตั้งที่ออฟฟิสในเมืองไทยไปเสร็จเรียบร้อยด้วยเหมือนกันนะครับ ใครอยากจะเห็น solution นี้แบบเต็มก็ลองติดต่อผ่านไปยังบริษัทที่เป็น partner ของซิสโก้ดูนะครับ ที่พูดมามากมายซะขนาดนี้ก็เพื่อจะโยงให้เข้ากับ youtube ที่ผมจะให้ดูนะครับ เป็นงาน Cisco Expo ที่ประเทศเยอรมัน พิธีเปิดเค้าใช้วงออเคสตร้ามาบรรเลง โดยให้นักร้อง ร้องเพลงผ่านระบบ Cisco Telepresence มาครับ เห็นแล้วอึ้งมากๆ ครับ ....

วันอังคารที่ 5 พฤษภาคม พ.ศ. 2552

ทำไม Management VLAN ที่เป็น VLAN1 ถึงไม่ปลอดภัย?

เมื่อเราซื้อสวิตซ์มาใหม่แกะกล่อง สวิตซ์จะมี VLAN 1 ซึ่งเป็น default vlan ที่มาจากโรงงาน และทุกพอร์ตก็จะเป็นสมาชิกของ vlan1 ไปโดยปริยาย กรณีนี้ยังเหมารวมไปถึง unmanage switch ด้วยนะครับ

ที่ผ่านมาผมจะเจอลูกค้า ส่วนใหญ่มักจะเอา VLAN 1 เป็น Management VLAN ซึ่งส่งผลทำให้ เมื่อมีใครสักคน อาจจะเป็น attacker นำสวิตซ์ตัวใหม่มาเสียบเข้ากับสวิตซ์ที่มีอยู่เดิมในระบบ และทำเป็น trunk port เชื่อมต่อเข้าหากัน พอร์ตที่เหลือทั้งหมดบนสวิตซ์ตัวใหม่ของ attacker ก็จะอยู่ใน vlan1 ทั้งหมด อีกทั้งยังสามารถติดต่อ vlan อื่นๆ ผ่าน trunk line ไปได้ พอจะนึกออกแล้วใช่มั้ยครับว่า จะเกิดอะไรขึ้นตามมา ผลที่ตามมาก็คือ เป็นช่องโหว่ให้ Attacker เหล่านี้เข้ามาในระบบเราได้ง่าย สามารถเข้าถึงอุปกรณ์ของเราได้โดยตรง และสามารถสร้างความเสียหายแก่ระบบเครือข่ายตามมาได้ โดยเฉพาะ Layer2 attack เช่น
1. CAM table overflow attack จะทำให้ MAC Address Table ภายในสวิตซ์เต็ม และทำให้สวิตซ์หยุดชะงักในการทำงานได้
2. Rogue DHCP server เป็นการทำให้มี unauthorized IP เกิดขึ้นสู่ network ของเราได้
3. ARP attack ทำตัวเป็น MAN-In-the middle โดยจะเข้าไปบอกว่า IP ของผู้ใช้งานในระบบของเรา เป็น MAC Address ของ Attacker ดังนั้น Attacker ก็จะได้รับข้อมูลของผู้ใช้งานภายในไปด้วย
4.Spoofing Attack เป็นการกระทำของ Attacker พยายามหลอกระบบว่าตัวเองเป็น IP ที่อยู่ในระบบของเราด้วย

Note. วิธีแก้ไขแบบเบื้องต้นสุดๆ เลยก็คือ Management VLAN เราจะต้อง create ขึ้นมาใหม่ ซึ่งเราต้องย้ายอุปกรณ์สวิตซ์จาก vlan 1 เข้ามาอยู่ใน vlan วงนี้ และเปลี่ยน default-gateway ไปชี้ที่ interface vlan ที่เราสร้างขึ้นมาใหม่เช่นเดียวกันนะครับ ทำแบบนี้ก็เพื่อความปลอดภัยในการบริหารจัดการอุปกรณ์เครือข่ายของเรา แต่ก็ยังไม่ 100% ผมจึงขออนุญาตเสนอเพิ่มเติมโดยใช้ Access List ในการ filter อีกชั้นนึง ลองดูตัวอย่างที่ผมยกมาให้สัก 2 ตัวอย่างนะครับ

1.vty ACLs
switch(config)#access-list 10 permit host 192.168.1.77
switch(config)#line vty 0 4
switch(config-line)#access-class 10 in

ตามตัวอย่างด้านบนนี้เป็นการระบุให้เพียงไอพี 192.168.1.77 เท่านั้นที่สามารถ telnet เข้ามาที่ switch ได้

2.Restricting Web Interface Sessions with ACLs
switch(config)#access-list 10 permit host 192.168.1.77
switch(config)#ip http server
switch(config)#ip http access-class 10

ตามตัวอย่างที่ 2 เป็นการอนุญาตให้เพียงไอพี 192.168.1.77 เท่านั้น ที่สามารถ http เข้ามาบริหารจัดการสวิตซ์ได้

หวังว่าคงได้ไอเดียในการจัดการบริหารอุปกรณ์เครือข่ายของเราไม่มากก็น้อยนะครับ ผิดพลาดตรงไหนยังไง รบกวนแนะนำกลับมาได้เลยครับ ...

ส่วนวิธีใช้คำสั่งต่างๆ ในการแก้ไข Layer 2 attack จะมาเล่าเพิ่มเติมในครั้งต่อไปนะครับ

ไข้หวัดหมู ไข้หวัดเม็กซิโก ไข้หวัดใหญ่สายพันธุ์ใหม่

เมื่อเช้าผมได้ดูข่าวไข้หวัดหมู -> ไข้หวัดเม็กซิโก -> จนปัจจุบันมีชื่อเรียกเป็นทางการว่า ไข้หวัดใหญ่ สายพันธุ์ใหม่ ปี 2009 (ใครเป็นคนคิดก็ไม่รู้ ช่างยาวได้เพียงนี้) ซึ่งตอนนี้ได้มีการตื่นตัว และพูดถึงกันเยอะมาก จากการฟังข่าวได้พูดถึงที่ฮ่องกงยันพบผู้ติดเชื้อแล้ว ถือเป็นประเทศแรกในเอเชีย และมีผู้ติดต้องสงสัยว่าติดไข้หวัดตัวนี้อีกหลายคน โดยส่วนตัวผมเคยไปฮ่องกง 1 ครั้ง ผมพบว่าคนไทยไปช้อปปิ้งที่นั้นกันค่อนข้างเยอะมาก เรียกว่าไปเดินตามถนนเดินชนคนไทยด้วยกันได้เลย แถมร้านอาหารบางร้านก็ยังมีเมนูอาหารเป็นภาษาไทยอีกด้วย เลยเกรงว่ากลับมาจากฮ่องกงจะมีของฝากเป็นเจ้าไวรัส H1N1 แถมมาด้วย

นอกเรื่องไปหน่อยครับ เข้าเรื่องดีกว่า ที่ฮ่องกงนี่แหละครับ ในสนามบินที่เรารู้จักกันดี คือสนามบิน เช็คแล็ปก็อก (CHEK LAP KOK) ซึ่งติดอันดับสนามบินที่สะดวกสบายที่สุดในโลกด้วย ที่นี่เอง คนที่จะเดินทางออกไปนอกประเทศก็สามารถเดินทางได้ไปเป็นปกติ แต่คนที่กลับมาเข้าฮ่องกงเนี่ยสิ โดยเฉพาะคนที่กลับมาจากเม็กซิโกจะเข้ามาได้ จะต้องมีการตรวจเช็ค สแกน และวัดความร้อนภายในร่างกายกันอย่างละเอียด เรียกว่า Filter กันตั้งแต่ Gateway ทางเข้าประเทศเลยทีเดียว ได้ยินมาอย่างนี้ จึงทำผมให้นึกถึงนิยามของ Firewall เลยหละครับว่า "คนในออกได้ คนนอกห้ามเข้า"

ถ้าคนนอกจะเข้าได้ ต้องผ่าน policy ที่ได้ทำการวางไว้ตรง Gateway ก็คือที่ Firewall เนี่ยแหละครับ ผมเลยเอา clip video เรื่อง SDN - Self Defend Network มาให้ดูกันเล่นๆ ครับ (จับมาโยงกันดื้อๆ ไปเลยครับ ฮ่าๆ ๆ)

http://www.cisco.com/web/TH/about/video/ie20080803.html

แล้วก็มีคลิปของตัว Virus and Spam Blocker ซึ่งมันเป็น Mini IronPort หรือคล้ายๆ กับ IronPort C Series เลยก็ว่าได้ ออกมาใหม่ ราคาผมเห็นแล้ว ถือว่าค่อนข้างถูกมากๆ เมื่อเปรียบเทียบกับประสิทธิภาพการทำงาน ลองดูโฆษณาจาก youtube นะครับ

ช่วงนี้อากาศมันเอาแน่เอานอนไม่ได้ แดดออกเปรี้ยงๆ จู่ๆ ฝนก็เทลงมาเลย ฝากกลอนส่งท้ายไว้นะครับ

สุขภาพดี ชีวีปลอดภัย ห่างไกลไข้หวัดหมู ...... //ลาไปก่อนนะคร้าบบบบ Bibi .... :)

PING to Cisco ASA 5500 Series Firewall

กาลครั้งหนึ่งนานมาแล้ว ทางลูกค้าถามทางผมมาว่า "ทำไม ping ตัว Firewall ASA แล้วมันไม่มี icmp reply ตอบกลับมาเลย" สงสัย configure ผิดหรือเปล่า หรือว่า Interface ของ ASA เดี๊ยงไปแล้ว ... ผมก็เลยเสนอแนะไปว่า ให้ลอง show interface เล่นๆ ดู หรือเข้าไปดูผ่าน ASDM ถ้ามันยัง up อยู่ก็ตัดประเด็น hardware เสียไปได้เลย

ผลปรากฏว่ามันก็ยัง up อยู่เหมือนเดิม แถมยังเล่นอินเทอร์เน็ตได้ปกติ เร็วปรื๊ดดดดดดด .... ผมเลยจัดการเฉลยทางลูกค้าไปตรงๆ ดีกว่าว่า ปกติ Firewall ด้าน traffic inbound มันจะปิด icmp protocol ไว้ ส่วน outbound นั้นโดย default แล้วจะอนุญาตให้ icmp protocol เข้ามาได้แต่จะ deny reply เอาไว้ พูดภาษาชาวบ้านก็คือไม่ให้ตอบ icmp reply กลับไปนั่นเอง (มาถึงถูก แต่กลับไม่ถูก) โดย default เป็นแบบนี้ก็เนื่องจากเหตุผลเรื่อง Security นี่แหละครับ ดังนั้นหากจะ troubleshooting โดยการ ping ไปที่ขา interface inside หรือ outside ต้องมีการเปิด (permit) อนุญาติให้ icmp message ตอบกลับมาได้นั่นเอง

Note inbound คือ ผั่งที่ traffic วิ่งจาก security-level ต่ำไปสูง หมายความว่า traffic จะวิ่งเข้ามายัง inside network และรวมไปถึง traffic ที่วิ่งมายัง DMZ Zone ด้วย
outbound คือ ฝั่งที่ traffic วิ่งจาก security-level สูงไปต่ำ หมายความว่า traffic จะวิ่งจากข้างใน ออกไปยัง outside network

วิธีการทำก็ไม่ยากเลยครับ เราสามารถใช้ ASDM ใช้เม้าส์จิ้มๆๆๆ ไม่กี่ครั้งก็เรียบร้อยแล้วครับ ตาม step ด้านล่างนี้นะครับ :)

Configuration > Device Management > add > จากนั้นก็ใส่ icmp type (แนะนำว่าเลือกเป็น any ไปเลยครับ ), ขา interface ที่เราต้องการอยากให้ ping ได้, Action เลือกเป็น permit และกำหนด ip address/subnet mask ซึ่งจะเป็นวงที่เราอนุญาตให้ ping ได้ครับ อย่าลืมกด Apply นะครับ เพื่อ activate ให้ Firewall มันรับคำสั่งไปทำงานได้ .....

Note. ดังนั้นหากใครก็ตาม configure ASA เรียบร้อยแล้ว test ping มาที่ขา interface ของ firewall ไม่เจอ ก็อย่าเพิ่งตกอกตกใจไปนะครับ ไปเปิด icmp message ก็เท่านั้นเองครับ (จริงๆ แล้วก็คือ เปิดให้ Firewall มันไม่เป็นใบ้ ให้มันสามารถตอบกลับมายัง host ที่ ping ออกไปได้)
Note. อีกประการนึงก็คือ ต้องเช็คด้วยว่า Access Rule ของ Firewall เราได้ทำการ permit ip ที่เราอนุญาตให้ ping เจอไว้แล้วด้วยแล้วหรือยัง ??? (Configuration > Firewall > Access Rule) โดยปกติมักจะไม่มีปัญหาในช่วงแรกที่เรา configure Firewall ใหม่ๆ เนื่องจาก โดย Default ฝั่ง inside มักจะเปิด permit ip any any ไว้เรียบร้อยแล้ว

รายละเอียดเพิ่มเติม ซึ่งสามารถใช้ Command Line ได้ เข้าไปดูได้ตาม url ที่ให้มานี้เลยครับ
http://www.cisco.com/en/US/products/hw/vpndevc/ps2030/products_tech_note09186a0080094e8a.shtml http://www.cisco.com/en/US/products/ps6120/products_tech_note09186a0080734db7.shtml

วันจันทร์ที่ 4 พฤษภาคม พ.ศ. 2552

How to setup IP Policy based routing in Cisco IOS

Policy based routing สามารถถูกใช้งานได้จากการสร้าง "route-map"
route-map จะมีคำสั่งหลักๆ อยู่ 2 คำสั่ง คือ


1. คำสั่ง match เป็นการเลือก address ให้ทำการถูก permit (อาจจะใช้ Access list ก็ได้)
2. คำสั่ง Set เป็น action ที่จะให้ address ที่ถูก permit ออกไปยัง hop ไหน

Example จากโจทย์และไดอะแกรมด้านข้างนี้ เราจะให้ network เครือข่าย 10.1.1.0 ออกทาง Router B ส่วน Source อื่นๆ ออกไปทาง Router A จะทำได้ตาม step ดังต่อไปนี้

1.สร้าง standard ACL โดยทำที่ Global Configuration Mode ซึ่งจะทำ policy โดยการอนุญาต source network 10.1.1.0/24
router#conf ter
router#access-list 10 permit 10.1.1.0 0.0.0.255

2.สร้าง Route-map (แผนที่เส้นทาง >> ลายแทงนั่นเอง) โดยใช้คำสั่ง match และ set
router(config)#route-map SetNextHop permit 10
router(config-route-map)#match ip address 10
router(config-route-map)#set ip next-hop 192.168.0.1
Note. จากคำสั่งด้านบน เราสร้าง route-map ที่ชื่อว่า "SetNextHop" และทำการ match ให้เข้ากับ policy access list หมายเลข 10 ซึ่งเป็น Source Address ที่ได้สร้างไว้ก่อนหน้านี้ และสุดท้ายกำหนดให้ network ต้นทางนี้ถูกส่ง packet ไปยังไอพี 192.168.0.1

3. ทำการ Apply Policy Route-map ที่ Interface ของ router ที่เราได้สั่งให้ packet วิ่งออกไป
router(config)#int fa0/0
router(config-if)#ip policy route-map SetNextHop
router(config-if)#ip route-cache policy

Note. คำสั่ง ip route-cache policy ที่ interface configuration mode ทำเพื่อ enable fast switching ของ PBR (Policy Base Routing)

CS-MARS choice for Log Server

ผมเพิ่งจะ Implement CS-MARS ของ Cisco เสร็จไปหมาดๆ จำนวน 2 site เป็น Education และ Hospitality Account จึงได้วิธีหรือสูตรที่จะคิดจำนวนวัน ที่สามารถเก็บ Log file ได้มาแบ่งปันกันครับ

Example สมมุติว่าเราใช้รุ่น MARS110R และ event โดยเฉลี่ยทุก 1 วินาทีประมาณ 100 event และ ขนาดของ event ใหญ่ 300 bytes

Day = Usable storage / (Event size x EPS x 86,400)
CS-MARS110R Total = 1,500 GB Available storage = 866GB >>> ประมาณว่าใช้งานได้เกินครึ่งมานิดเดียว ส่วนที่หายไปเนี่ยก็เป็นพวก OS, MARS Software (Protego Networks), Oracle database
Average Event size = 300 bytes EPS = 100 event/second, k = 86,000
Day = 866x10^9 / (300 x 100 x 86,000) = 335.65 วัน

ดังนั้นวันที่เก็บได้ประมาณ 335 วัน ต้องทำการ archieve file ต่างๆ เหล่านี้ไปยัง backup server ผ่านทาง NFS protocol แต่จะเห็นกฎหมายให้เก็บแค่ 90 วัน ดังนั้น MARS ตัวนี้สามารถรองรับพรบ.คอมพิวเตอร์ได้อย่างสบายๆ

ผมได้ข้อคิดจาก MARS เผื่อคนที่คิดจะซื้อจะได้กลับมาดูก่อนว่า เหมาะสมกับโครงสร้างเครือข่ายของเราหรือเปล่า

1.คนที่กำลังจะซื้อ MARS ไปประดับบริษัท ควรจะมี Firewall ASA5500 Series ของ Cisco ถ้าให้ดีมี IPS Module เสียบไปด้วย จะทำ MARS วิเคราะห์ในรายละเอียดได้มาก เนื่องจาก Default Rule มักจะสร้างมาจากตัว ASA, IPS และเกิดเป็น Incident ต่างๆ ขึ้นมาบน Dashboard

2.MARS สามารถเก็บ RAW Message หรือ event ต่างๆ ของอุปกรณ์ที่ไม่ใช่ Cisco ก็ได้ เช่น Juniper Netscreen, Extreme, Checkpoint, Web Server ต่างๆ เป็นต้น ตลอดจน log ของ OS software ได้อีกด้วย แต่หากไม่มีอยู่ใน List ก็สามารถใช้ custom parser ในการ create patern ตาม syntax ของยี่ห้อนั้นๆ ได้เช่นเดียวกัน อันนี้ยาส์สสสสสกกกกกกก ..... เลยยยยย

3.คนที่คิดว่าจะเอา MARS ไปเก็บ log ของพวก Switch อย่างเดียว อยากจะบอกว่า คิดผิดแล้วครับ เพราะ switch มันไม่ค่อยผลิต log อะไรมากมาย นอกจาก up and down interface ครับ และ admin name ที่เข้ามาบริหารจัดการตัวอุปกรณ์ อาจจะผ่านทาง console, telnet หรือ ssh ครับ :)

4.เราสามารถ add topology ของ network ไปจนถึง เราเตอร์ของ ISP ได้เลย เพียงแค่บอก network ที่เราต้องการให้ MARS มัน update

5.ใครจะเอา netflow พ่นออกมาเก็บที่ MARS ตรงที่ MARS ควร Configure คลิ๊กแค่ Enable netflow เท่านั้น อย่างอื่นปล่อยมันไป มิฉะนั้น มันจะไปเก็บเป็น event (raw message) ไปด้วย

6.spanning tree ที่ switch จะต้อง Run เอาไว้ เพื่อที่จะทำหน้าที่ Layer 2 Discovery และ Mitigation นั่นเอง

7.Mitigation บน MARS ใน Layer2 สามารถกดปุ่ม push ได้เลย มันจะ write ไปผ่านทาง telnet, ssh ที่เราเปิดขึ้นมา และ snmp ที่เปิดเป็นแบบ rw หากเป็น Layer3 ต้อง manual CLI บนอุปกรณ์นั้นๆ

8.การ Add อุปกรณ์ NAC Appliance เข้าไป ผมไม่สามารถเห็นอุปกรณ์ NAC ใน topology ได้ แต่ดูจาก report มันเก็บ log มาเรียบร้อยแล้ว ก็งงๆ อยู่ว่าตกลงมันต้องเห็นหรือเปล่า ใครเคยทำแล้วช่วยตะโกนมาบอกผมหน่อยนะครับ ตกลงมันต้องเห็นใน topology หรือเปล่าครับ

ไว้แค่นี้ก่อน แล้วจะมาอัพเดทให้เรื่อยๆ ครับ :)