ระบบเครือข่าย กับ เวิลด์ไวด์เว็บ และ ความปลอดภัย

วัตถุประสงค์
  1. เพื่อให้ความรู้ ความเข้าใจในการทำงานของระบบเน็ตเวอร์ค และ อินเตอร์เน็ตในระดับพื้นฐาน
  2. เพื่อให้สามารถต่อคอมพิวเตอร์ เข้ากับระบบอินเตอร์เน็ตได้ด้วยตนเอง
  3. เพื่อเรียนรู้การทำงานของ TCP/IP และ HTTP พร้อมทั้งสามารถติดตั้ง Web Server ได้ด้วยตัวเอง
  4. เพื่อให้รู้จักเรื่องของความปลอดภัยในการใช้ระบบเครือข่าย

สิ่งที่คาดว่าจะได้รับ
  1. หลังจากปฏิบัติการนี้แล้วเข้าใจว่า ทำไมอินเตอร์เน็ตจึงประสบความสำเร็จกว่าเน็ตเวอร์คอื่นอย่างเช่น Microsoft networks หรือ Novell
  2. สามารถเฝ้ามองการทำงานของเน็ตเวอร์ค รู้ว่าข้อมูลไหลไปมาอย่างไร
  3. เข้าใจการทำงานของ World Wide Web มากขึ้นในรายละเอียด
  4. สามารถติดตั้งให้เครื่องคอมพิวเตอร์ใช้งานอินเตอร์เน็ตได้ และสามารถติดตั้ง Web Server ได้
  5. รู้จักการระมัดระวังในการใช้เครือข่ายอย่างปลอดภัย

คำนำ
ระบบ เครือข่ายคอมพิวเตอร์ในปัจจุบัน มีความสำคัญเป็นอย่างมากต่อการไหลของสารสนเทศ จากแหล่งหนึ่งไปแหล่งหนึ่ง ก่อให้เกิดการเชื่อมโยงเกิดเป็นเครือข่ายที่เป็นนามธรรมอื่นๆ ตามมาอีกเป็นจำนวนมาก เช่น เครือข่ายโรงเรียน (SchoolNet) เครือข่ายมหาวิทยาลัย (Thai UniNet) เครือข่ายงานวิจัย เช่น เครือข่ายฟิสิกส์พลังงานสูง (High-Energy Physics Networks) ในยุโรป เครือข่ายธนาคาร (Bank Net) และอื่นๆ อีกมากมาย เครือข่ายสารสนเทศเหล่านั้น บางเครือข่ายก็อาศัยอยู่บนเครือข่ายคอมพิวเตอร์เฉพาะของตน มีรูปแบบการถ่ายเทข้อมูล (Protocol) ของตัวเอง เช่น เครือข่ายของธนาคาร แต่เครือข่ายส่วนมากอาศัยอยู่บน เครือข่ายคอมพิวเตอร์สาธารณะ อย่างเครือข่ายอินเตอร์เน็ต เช่น เครือข่ายวิทยุบนอินเตอร์เน็ต (RadioNet) หรือ เครือข่ายมหาวิทยาลัย เป็นต้น เครือข่ายอินเตอร์เน็ตตามนิยามแล้ว ก็คือเครือข่ายของเครือข่าย (Inter-Networks --> Internet) ซึ่งประกอบด้วยเครือข่ายท้องถิ่น (Local Area Networks) ซึ่งต่อไปนี้จะเรียกว่า LAN หลายๆ เครือข่ายมาต่อกัน จนกลายเป็นเครือข่ายขนาดใหญ่ อินเตอร์เน็ตประสบความสำเร็จได้ เพราะความเป็นระบบเปิดของโปรโตคอลสื่อสารอย่าง TCP/IP ทำให้มีโปรแกรมประยุกต์ให้ใช้มากมาย โดยเฉพาะอย่างยิ่ง เวิลด์ไวด์เว็บ (World Wide Web หรือ WWW) จนทำให้คนส่วนใหญ่เข้าใจผิดไปว่า WWW ก็คืออินเตอร์เน็ต วันนี้เราจะมาทำความเข้าใจในเรื่องของระบบเครือข่ายคอมพิวเตอร์ LAN ที่เป็นองค์ประกอบพื้นฐานของอินเตอร์เน็ต โปรโตคอล TCP/IP การทำงานของ WWW เพื่อค้นหาเบื้องลึกว่าทำไมมันจึงได้รับความนิยมยิ่งนัก

ประเภทของระบบเครือข่าย
ระบบเครือข่ายคอมพิวเตอร์ อาจนิยามได้ 2 ประเภทคือ
  1. เครือข่ายทางกายภาพ (Physical Networks)
    หมายถึงสายและอุปกรณ์ที่ใช้ในการเชื่อมต่อคอมพิวเตอร์ในระบบเครือข่าย อันได้แก่
    • Ethernet Wiring ซึ่งมีการเชื่อมต่อได้หลายแบบ เช่น thick coaxial cable (10BASE5) แบบ thin coaxial cable (10BASE2) และแบบ twisted pair (10BASE-T) หรือที่มักเรียกกันว่า UTP
    • สายใยแก้วนำแสง Optical Fiber (FDDI)
    • สายโทรศัพท์ทั้งแบบ Analog และ ISDN
    • สายเคเบิลใต้มหาสมุทร
    ซึ่ง Physical Networks ยังรวมไปถึงการเชื่อมต่อแบบที่มองไม่เห็นด้วยอีกด้วย เช่น
    • สัญญาณไมโครเวฟ
    • สัญญาณดาวเทียม
    • ระบบโทรศัพท์เคลื่อนที่

  2. เครือข่ายเชิงตรรก (Logical Networks)
    เป็นเครือข่ายที่เกิดจากการสร้างความสัมพันธ์ ระหว่างเครื่องคอมพิวเตอร์ที่อยู่บนเครือข่ายทางกายภาพ โดยความสัมพันธ์นั้นหมายถึง การทำงานร่วมกันอย่างใดอย่างหนึ่ง การมีจุดสนใจร่วมกัน การใช้ข้อมูลร่วมกัน หรือกิจกรรมใดๆ ที่กำหนดให้มนุษย์มีส่วนร่วม (ไม่จำเป็นว่าจะต้องเป็นคอมพิวเตอร์) เช่น
    • Internet
    • SchoolNet
    • GINET (Government Information Networks)
    • UNINET (University Networks)

องค์ประกอบของระบบเครือข่าย
จะต้องมี 3 ประการนี้จึงจะเป็นเครือข่ายคอมพิวเตอร์ได้
  1. เครื่องคอมพิวเตอร์ที่อยู่บนระบบเครือข่าย
    • เครื่องคอมพิวเตอร์ PC / Macintosh
    • เครื่องคอมพิวเตอร์เวอร์คสเตชัน
  2. Physical Media หรือสื่อเชื่อมต่อทางกายภาพอันได้แก่ สาย (Cable) และ Hub หรืออุปกรณ์เชื่อมต่อต่างๆ
  3. ระเบียบพิธีการติดต่อสื่อสาร (Protocol) ก็คือระเบียบหรือข้อตกลง (rules) ที่ตั้งขึ้น เพื่อทำให้ผู้ที่จะสื่อสารกันเข้าใจกันและกัน ตัวอย่างเช่นสัญญาณธงที่ทหารเรือใช้สื่อสารกัน เป็นต้น

แบบของโปรโตคอล
  1. Protocol ที่ใช้กับ Physical Networks ใช้ควบคุมสายเชื่อมต่อ บางทีเรียก Data Link เช่น
    • Ethernet Protocol ใช้ควบคุมการเชื่อมต่อด้วย Ethernet Wiring
    • FDDI ควบคุมการเชื่อมต่อแบบใยแก้วนำแสง
    • SLIP/PPP ควบคุมการเชื่อมต่อด้วยสายโทรศัพท์
  2. Protocol ที่ใช้กับ Logical Networks ใช้ควบคุมการสื่อสารบน Logical Networks เช่น
    • TCP/IP ใช้กับการสื่อสารบนระบบอินเตอร์เน็ต/อินทราเน็ต/เอ็กซ์ทราเน็ต
    • IPX/SPX ใช้กับการสื่อสารบนเครือข่าย Novell Netware ของเครื่อง PC
    • NETBEUI ใช้กับการสื่อสารของเครือข่าย Microsoft Network
    • AppleTalk ใช้กับการสื่อสารระหว่างเครื่อง Apple Macintosh

LAN กับ Ethernet
รูปแบบของ LAN ในโลกนี้พอจะแบ่งออกได้เป็นระบบใหญ่ๆ ได้ 2 ระบบคือ Ethernet กับ Token Ring ระบบ Ethernet นั้นนิยมกันมากกว่าระบบ Token Ring มากๆ โดยระบบ Ethernet นั้นสามารถต่อได้ในแบบ Chain เรียกตามภาษาเทคนิคว่าแบบ 10Base-2 และ 10Base-5 กับแบบรูปดาว Star เรียกตามภาษาเทคนิคว่า 10Base-T เจ้าเลข 10 ข้างหน้านี้หมายความว่ามันสามารถส่งข้อมูลด้วยความเร็ว 10 Mbps (10 Megabits per second) เลข 2 และ 5 ข้างท้ายบอกว่าสายที่ใช้ต่อ LAN ในวงเดียวกันยาวได้อย่างมาก 200 (จริงๆแล้ว 180) และ 500 เมตรตามลำดับ ส่วนตัว T แปลว่าสายที่ใช้เป็นแบบ Twisted Pair ซึ่งยาวได้ไม่เกิน 100 เมตร

Token Ring คือ LAN ที่มีลักษณะต่อกันเป็นวงและมีตัวนำสารที่เรียกว่า Token วิ่งวนรอบๆ ไม่ค่อยมีใครเขาใช้กัน เพราะมีราคาแพงและต่อยาก เครื่องคอมพิวเตอร์ที่มาต่อกันในระบบ Ethernet นั้นจะต้องมี Ethernet Card ทำหน้าที่รับส่งสัญญาณในเครือข่าย ซึ่งแต่ละ Card จะมีหมายเลข Ethernet Address เฉพาะตัว ระบบ Ethernet นี้เมื่อต่อกับ Internet แล้วเวลามีใครนอกเครือข่าย ติดต่อมาหาเครื่องใดเครื่องหนึ่งในเครือข่าย Internet Address นั้น จะต้องถูกแปลงมาให้เป็น Ethernet Address ก่อนเพื่อการอ้างถึงให้ถูกว่าเป็นเครื่องใด โดยข้อมูลนั้นพร้อม Ethernet Address ปะไว้ที่หัวจะไหลผ่านเข้าไปในเครื่องคอมพิวเตอร์ทุกเครื่อง เครื่องใดก็ตามเมื่อทราบว่าข้อมูลนั้นเป็นของตัวก็จะหยิบออกไปเอง จากการที่ข้อมูลนี้ไหลผ่าน Network Card ของทุกเครื่อง ทำให้สามารถดังฟังข้อมูลได้ใน LAN เดียวกัน สามารถอ่าน e-mail หรือ อ่านหน้าจอใครก็ได้บน LAN เดียวกัน


10Base-T เจ้าแห่ง LAN
ในแวดวงของระบบ Ethernet แล้ว 10Base-T ได้รับความนิยมสูงสุด เพราะต่อง่าย บำรุงรักษาก็ง่าย หากมีเครื่องใดเครื่องหนึ่งก่อให้เกิดปัญหาแล้ว ก็ไม่เป็นการรบกวนเครื่องคอมพิวเตอร์ (node) อื่นเลย ต่างกับ 10Base-2 ซึ่งต่อกันเป็นแบบโซ่ หากจุดใดมีปัญหา จะทำให้ LAN ทั้งวงไม่ทำงาน การต่อ LAN แบบ 10Base-T จะมีอุปกรณ์เชื่อม ที่เรียกว่า Hub ในภาคฟิสิกส์เราตอนนี้รู้สึกจะมี 3 ตัวแล้ว ซึ่งแต่ละตัวต่อได้ 24 เครื่อง Hub นี้สามารถต่อกับเครือข่ายภายนอกโดยผ่าน Router ซึ่งภาคเรามีเครื่อง PC อยู่เครื่องหนึ่งทำหน้าที่เป็น Router ที่ Hub จะมี LED ที่แสดงว่าสายกำลังใช้งานอยู่หรือไม่

ความเป็นมาของอินเตอร์เน็ต
อินเตอร์เน็ต (Internet) เป็นเครือข่ายคอมพิวเตอร์ที่เชื่อมโยงเครื่องคอมพิวเตอร์หลายล้านเครื่อง ทั่วโลกเข้าด้วยกันเป็นเครือข่ายเดียว (Global Network) ที่รวมผู้ใช้กว่า 60 ล้านคน เพื่อประกอบกิจกรรมหลากหลายตั้งแต่ การพูดคุย การสื่อสารข้อมูล การแลกเปลี่ยนข่าวสารความรู้ การค้าขายแบบอิเล็กทรอนิกส์ การศึกษาทางไกล ฯลฯ เมื่อครั้งที่อินเตอร์เน็ตถือกำเนิดขึ้นนั้น ไม่มีใครเคยคาดคิดว่ามันจะกลายมาเป็นเครือข่ายที่มีบทบาทกับวิถีชีวิตของ มนุษย์ในปัจจุบัน จนถึงขนาดที่กำลังจะปฏิวัติวิธีการดำเนินชีวิตของประชากรโลกในศตวรรษหน้า กล่าวคือเมื่อ 20 ปีก่อน กระทรวงกลาโหมสหรัฐได้มีมติด่วนให้พัฒนาเครือข่ายคอมพิวเตอร์ที่มีชื่อว่า ARPANET จุดมุ่งหมายคือให้เป็นเครือข่ายที่มีความเชื่อถือได้สูง สามารถที่จะทำงานได้แม้ภายหลังที่อเมริกาถูกถล่มโดยอาวุธนิวเคลียร์ ดังนั้นเทคโนโลยีที่ใช้เชื่อมเครือข่าย ต้องมีความสามารถที่จะทำงานกับโครงสร้างพื้นฐาน (Infrastructure) ที่เหลือจากการทำลายของอาวุธนิวเคลียร์ เช่น หากโครงข่ายโทรศัพท์ และ เคเบิลถูกทำลายในบางพื้นที่ เครือข่ายจะยังคงทำงานได้โดยการสลับมาใช้โครงข่ายอื่น เช่น โครงข่ายดาวเทียม หรือวิทยุ เป็นต้น นอกจากนั้นเทคโนโลยีดังกล่าวต้องมีความสามารถในการเชื่อมต่อเครื่อง คอมพิวเตอร์ต่างประเภท และต่างรุ่นที่มีอยู่ทั่วไปตามฐานทัพต่าง ๆ

ในครั้งนั้นการพัฒนาเครือข่าย ARPANET ได้กระทำร่วมกันระหว่างกระทรวงกลาโหม กับมหาวิทยาลัยต่าง ๆ รวมทั้งหน่วยงานสำคัญ ๆ เช่นองค์การ NASA ทำให้ ARPANET เริ่มเติบโตโดยเริ่มมีการใช้งานมากขึ้นสำหรับการศึกษาและการวิจัย ถึงแม้จะเริ่มมีการพัฒนาเครือข่ายอื่น ๆ เช่น DECNET และ BITNET ขึ้นมาเป็นคู่แข่ง แต่เพราะข้อดีของ ARPANET ที่เป็นระบบเปิดที่ใช้โปรโตคอลแบบ TCP/IP ทำให้ไม่จำกัดกับเครื่องคอมพิวเตอร์ประเภทใดประเภทหนึ่ง หรือ โครงข่ายเชื่อม (Physical Links) แบบใดแบบหนึ่ง ทำให้มันเอาชนะคู่แข่งและกลายมาเป็นตัวเชื่อมเครือข่ายอื่น ๆ ที่เข้ากันไม่ได้ ให้สามารถคุยกันรู้เรื่อง ด้วยเหตุนี้ทำให้ ARPANET ถูกพัฒนามาเป็นเครือข่ายของเครือข่าย หรือ อินเตอร์เน็ต (internet) ในที่สุด ข้อดีของการที่เป็นระบบเปิด คือ สามารถใช้เทคโนโลยีการเชื่อมต่อได้หลายแบบทั้ง ไมโครเวพ ดาวเทียม โทรศัพท์ เคเบิล ใยแก้วนำแสง หรือแม้แต่ระบบโทรศัพท์เคลื่อนที่ และสามารถเชื่อมต่อคอมพิวเตอร์แบบใดก็ได้ รวมทั้งยังบริหารง่ายคือ ผู้ใช้ออกค่าใช้จ่ายเฉพาะส่วนของตน ทำให้อินเตอร์เน็ตขยายตัวง่ายในขณะที่ความซับซ้อนของงานไม่เพิ่มขึ้นเท่าไร นัก ความง่ายในการขยายเครือข่ายและการใช้งาน ได้ทำให้อินเตอร์เน็ตเริ่มได้รับความนิยมนอกประเทศสหรัฐอเมริกา จนกลายมาเป็นเครือข่ายที่เชื่อมโยงทั่วโลก


ภาพแสดงความเป็นระบบเปิดของ TCP/IP ทำให้เชื่อมโยงเครื่องหลาย Platform


TCP/IP กับเครือข่ายอินเตอร์เน็ต
เครื่องคอมพิวเตอร์บนเครือข่ายอินเตอร์เน็ต สื่อสารระหว่างกันโดยใช้ Transmission Control Protocol (TCP) และ Internet Protocol (IP) รวมเรียกว่า TCP/IP ข้อมูลที่ส่งจะถูกตัดออกเป็นส่วนๆ เรียก packet แล้วจ่าหน้าไปยังผู้รับด้วยการกำหนด IP Address เช่น สมมติเราส่ง e-mail ไปหาใครสักคน e-mail ของเราจะถูกตัดออกเป็น packet ขนาดเล็กๆ หลายๆ อัน ซึ่งแต่ละอันจะจ่าหน้าถึงผู้รับเดียวกัน packets พวกนี้ก็จะวิ่งไปรวมกับ packets ของคนอื่นๆ ด้วย ทำให้ในสายของข้อมูล packets ของเราอาจจะไม่ได้เรียงติดกัน packets พวกนี้จะวิ่งผ่าน ชุมทาง (gateway) ต่างๆ โดยตัว gateway (อาจเรียก router) จะอ่านที่อยู่ที่จ่าหน้า แล้วจะบอกทิศทางที่ไปของแต่ละ packet ว่าจะวิ่งไปในทิศทางไหน packet ก็จะวิ่งไปตามทิศทางนั้น เมื่อไปถึง gateway ใหม่ก็จะถูกกำหนดเส้นทางให้วิ่งไปยัง gateway ใหม่ที่อยู่ถัดไป จนกว่าจะถึงเครื่องปลายทาง เช่นเราติดต่อกับเครื่องในอเมริกา อาจจะต้องผ่าน gateway ถึง 10 แห่ง เมื่อ packet วิ่งมาถึงปลายทางแล้ว เครื่องปลายทางก็จะเอา packets เหล่านั้นมาเก็บสะสมจนกว่าจะครบ จึงจะต่อกลับคืนให้เป็น e-mail


TCP/IP ตัดข้อมูลออกเป็น packet เล็กๆ ส่งไปบนสายส่งข้อมูลที่ไปถึงปลายทางถูกจับมารวมกันอีกครั้ง

การที่ข้อมูลมีลักษณะเป็น packet ทำให้ในสายสื่อสารสามารถที่จะ ขนส่งข้อมูลโดยไม่ต้องจอง (occupies) สายไว้สายจึงสามารถใช้ร่วมกันกับข้อมูลที่ส่งจากเครื่องอื่นได้ ต่างจากโทรศัพท์ที่ขณะใช้งาน จะไม่มีใครใช้สายได้ ดังตัวอย่างในรูปข้าล่างนี้ เครื่องคอมพิวเตอร์ A และ C สื่อสารกันด้วย packet สีดำ ซึ่งใช้สายร่วมกับเครื่องคอมพิวเตอร์อื่น ๆ ซึ่ง packet ดังกล่าวอาจจะเป็นสัญญาณเสียง (เช่น Internet Phone) ซึ่งเมื่อ packet เดินทางมาถึงก็จะถูกจับมารวมกันให้เป็นเสียงของการพูดคุย ไม่เหมือนโทรศัพท์แบบปรกติ ที่ขณะใช้งานสาย จะไม่สามารถนำไปทำงานอื่น ๆ ได้อีก



IP Address
เครื่อง คอมพิวเตอร์ที่ต่ออยู่บนอินเตอร์เน็ตก็เปรียบคล้ายๆ กับเครื่องโทรศัพท์ที่มีเบอร์เฉพาะตัว ซึ่งก็จะมีเพียงเบอร์เดียวในโลก เช่นเครื่อง einstein ซึ่งเป็น Internet Server ของภาควิชาฟิสิกส์ มี IP Address เป็น 202.28.156.98 ตัวเลขที่เป็น IP Address เป็นตัวเลขขนาด 32 บิต แบ่งออกเป็น 4 ชุดๆ ละ 8 บิต ดังนั้นตัวเลข 1 ชุดที่เราเห็นคั่นด้วยจุดนั้น จึงแทนได้ด้วยตัวเลขจาก 0 ถึง 255

ตัวเลข 4 ชุดนี้จะถูกแบ่งออกเป็น 2 ส่วน คือ network number และ ส่วนของ host number โดยขนาดของแต่ละส่วนจะใหญ่หรือเล็กขึ้นอยู่กับว่าเครื่องคอมพิวเตอร์นั้น อยู่ในเน็ตเวอร์ค class ใด ซึ่ง class ของเน็คเวอร์คแบ่งออกเป็น 4 classes ดังนี้

  1. Class A เป็นเน็ตเวอร์คขนาดใหญ่ มี network number ตั้งแต่ 1.0.0.0 ถึง 127.0.0.0 นั่นคือใน class นี้นั้น จะมีส่วนของ host number ถึง 24 บิตซึ่งอนุญาตให้มีจำนวนเครื่องได้ 1.6 ล้านเครื่องใน 1 เน็ตเวอร์ค ซึ่งจะมีเน็ตเวอร์คขนาดใหญ่แบบนี้ได้เพียง 127 เน็ตเวอร์คเท่านั้น
  2. Class B เป็นเน็ตเวอร์คขนาดกลาง มี network number ตั้งแต่ 128.0.0.0 ถึง 191.255.0.0 นั่นคือใน class นี้มีส่วนของ network number 16 บิต และส่วนของ host number ได้ 16 บิต ทำให้มีจำนวนของเน็ตเวอร์คได้ถึง 16320 เน็ตเวอร์ค และ 65024 hosts
  3. Class C เป็นเน็ตเวอร์คขนาดเล็ก มี network number ตั้งแต่ 192.0.0.0 ถึง 223.255.255.0 นั่นคือใน Class นี้มีส่วนของ network number 24 บิต และ ส่วนของ host number 8 บิต ทำให้มีจำนวนของเน็ตเวอร์คได้ถึง 2 ล้านเน็ตเวอร์คและมีจำนวน host ในแต่ละเน็ตเวอร์คเท่ากับ 254 hosts
  4. Class D เป็นส่วนที่เก็บรักษาไว้สำหรับใช้ในอนาคต มี IP Address ตั้งแต่ 224.0.0.0 ถึง 254.0.0.0

Domain Name System (DNS)
เบอร์ IP Address เป็นตัวเลขที่ใช้ไม่ค่อยสะดวกและจำยาก ด้วยเหตุนี้จึงมีการคิดระบบตั้งชื่อแบบที่เป็นตัวอักษร ให้มีความหมายเพื่อการจดจำได้ง่ายกว่ามาก เวลาเราอ้างถึงเครื่องใดบนอินเตอร์เน็ต เราก็จะใช้ชื่อ DNS เช่น www.nectec.or.th แต่ในการใช้งานจริงนั้นเครื่องคอมพิวเตอร์ที่เราใช้อยู่ เมื่อรับคำสั่งจากเราแล้ว เค้าจะขอ (request) เครื่องคอมพิวเตอร์ที่ทำหน้าที่บริการบอกเลขหมาย IP Address (ทำหน้าที่คล้ายสมุดโทรศัพท์ Yellow Pages) ซึ่งเรียกกันว่าเป็น DNS Server หรือ Name Server ตัว Name Server เมื่อได้รับ request ก็จะตอบเลขหมาย IP Address กลับมาให้เช่น สำหรับ www.nectec.or.th นั้นจะตอบกลับมาเป็น 164.115.115.9 จากนั้นเครื่องคอมพิวเตอร์ของเราจึงจะเริ่มทำการติดต่อ กับคอมพิวเตอร์เป้าหมาย ซึ่งมันก็จะผ่านกระบวนการแบบที่กล่าวไปข้างต้น คือแบ่งข้อมูลออกเป็น packet จ่าหัวด้วย IP จากนั้นส่ง packet ไปซึ่งก็จะวิ่งผ่าน gateway ต่างๆ มากมายไปยังเป้าหมาย

บางทีเราจะพบกรณีที่คอมพิวเตอร์ที่เป็น Name Server นั้นไม่ทำงาน เราจะไม่สามารถติดต่อเครื่องอื่นบนอินเตอร์เน็ตได้อีกต่อไปโดยใช้ชื่อ DNS หากเราทราบ IP Address เราสามารถใช้ IP Address ได้ตรงๆ ทำให้เราไม่จำเป็นต้องพึ่งสมุดโทรศัพท์ของ Name Server ด้วยเหตุนี้เราจึงทำการเก็บชื่อและ IP Address ไว้ในสมุดโทรศัพท์ส่วนตัวประจำเครื่อง เช่นบนระบบยูนิกซ์มีไฟล์ /etc/hosts เอาไว้เก็บชื่อ DNS ที่ใช้บ่อยๆ

ระบบการตั้งชื่อ DNS นั้นคล้ายกับระบบไปรษณีย์ โดยมีประเทศอยู่หลังสุด เช่น .th คือ ประเทศไทย .de คือประเทศเยอรมัน .uk คือ ประเทศสหราชอาณาจักร แต่สำหรับสหรัฐอเมริกานั้นยกเว้น จากนั้นจะแบ่งเครือข่ายออกเป็น

  • .edu หรือ .ac เครือข่ายมหาวิทยาลัย หรือ สถาบันการศึกษา
  • .com หรือ .co เครือข่ายบริษัท ห้างร้าน
  • .mil เครือข่ายทางการทหาร
  • .org หรือ .or เครือข่ายองค์การที่ไม่หวังผลกำไร (พรรคการเมืองไทยก็ใช้ระบบนี้)
  • .gov หรือ .go เครือข่ายหน่วยงานของรัฐบาล
  • .net หรือ .net เครือข่ายของผู้ดูแลเน็ตเวอร์ค หรือ เจ้าของเน็ตเวอร์ค

ต้องการทราบ IP Address ของ Name Server และ สอบถาม IP Address ของเครื่องต่างๆ

ใช้คำสั่ง nslookup เช่น
[noy@einstein ~]$ nslookup    www.nectec.or.th
Server: mucc.mahidol.ac.th
Address: 202.28.162.1

Non-authoritative answer:
Name: nucleus.nectec.or.th
Address: 164.115.115.9
Aliases: www.nectec.or.th

[noy@einstein ~]$

สิ่งที่ต้องทราบในการต่อเครื่องเข้ากับระบบอินเตอร์เน็ต
  1. IP Address ของ เครื่องนั้น ยกเว้นเราใช้ Automatic Setting โดย bootp Server หรือ Server อื่นๆ จะกำหนดให้โดยการร้องขอ ซึ่ง IP Address นั้นอาจไม่เหมือนกันในแต่ละครั้งทีเปิดใช้
  2. IP Address ของ Gateway
  3. IP Address ของ Name Server
  4. Network Address หรือ Subnet Mask เพื่อให้ทราบว่าเน็ตเวอร์คของเรามีความกว้างของเลข IP เท่าใด เพื่อกำหนดการติดต่อว่าจะติดต่อภายในเน็ตเวอร์คเดียวกัน หรือ นอกเน็ตเวอร์ค

SLIP และ PPP
เรา คงเคยได้ยินคำ 2 คำนี้มาบ้าง โดยเฉพาะเมื่อต้องการต่ออินเตอร์เน็ตผ่าน MODEM และสายโทรศัพท์ โดยปรกติแล้ว TCP/IP นั้นเปรียบเสมือนรถบรรทุกสินค้าที่ใช้ขนข้อมูลในรูป packet ไปยังที่ต่างๆ ซึ่งรถบรรทุกนั้นสามารถวิ่งบนถนนทั้งแบบลาดยาง แบบคอนกรีต หรือแบบลูกรัง ในสภาวะที่เป็น LAN นั้น TCP/IP วิ่งอยู่บน Frame ที่เป็น Ethernet ซึ่งมารองพื้น เปรียบเสมือนถนนให้รถบรรทุกวิ่ง

บนสายโทรศัพท์ก็เช่นเดียวกัน ต้องมีระบบที่มารองพื้นเพื่อให้ TCP/IP สามารถวิ่งได้ ตัว Protocol ที่ใช้ก็จะมีความแตกต่างจาก Ethernet เพราะคนละ medium กัน ซึ่งก็มีอยู่ 2 แบบ คือ Serial Line Internet Protocol (SLIP) และ Point to Point Protocol (PPP) ตัวโปรโตคอลทั้ง 2 นี่คล้ายกัน เพียงแต่ SLIP เกิดจากการทดลองแล้วพัฒนามาเป็น PPP ซึ่งมีมาตรฐานกว่า

การต่อ Windows 95 เข้ากับอินเตอร์เน็ตนี่ สามารถต่อได้ทั้งเข้ากับ LAN โดยใช้ Network Card และต่อแบบ Dial-Up ซึ่ง Windows 95 ก็มี PPP ให้ใช้อยู่แล้ว หรือจะต่อทั้ง 2 อย่างในขณะเดียวกันก็ได้ ซึ่งเครื่องสามารถแยกแยะได้ว่าหากเราใช้ LAN ก็จะให้ packet เดินผ่าน Network Card แต่หากติดต่อข้างนอก ก็จะผ่าน MODEM แทน ซึ่งผมก็ใช้งานแบบนี้อยู่ ค่อนข้างดีไม่มีปัญหา


อินเตอร์เน็ต อินทราเน็ต และเอ็กซ์ทราเน็ต (Internet, Intranet and Extranet)
นักศึกษาดูรูปข้างล่างต่อไปนี้แล้วจะเข้าใจถึงความแตกต่างและความเหมือนของ อินเตอร์เน็ต อินทราเน็ต และเอ็กซ์ทราเน็ต

อินเตอร์เน็ต


อินทราเน็ต


เอ็กซ์ทราเน็ต


World Wide Web (WWW) หรือ WEB
การ ใช้งานอินเตอร์เน็ตในยุคแรก ๆ ส่วนใหญ่ยังจำกัดอยู่ในวงการศึกษาวิจัย และการทหารเป็นหลัก ไม่ได้มีการใช้ในเชิงพาณิชย์อย่างกว้างขวางเหมือนในปัจจุบัน จุดเปลี่ยนนั้นเกิดขึ้นเมื่อปี ค.ศ. 1992 นักวิทยาศาสตร์แห่งศูนย์ค้นคว้าวิจัยทางฟิสิกส์ CERN ในประเทศสวิตเซอร์แลนด์ต้องการพัฒนาเทคโนโลยีในการแลกเปลี่ยนข้อมูลข่าวสาร ระหว่างศูนย์ลูกข่ายที่ตั้งอยู่ในประเทศต่างๆ ทั่วยุโรปให้สะดวกและรวดเร็วขึ้น โดยอาศัยระบบอินเตอร์เน็ตที่มีอยู่เดิม เพียงแต่มีวิธีติดต่อผู้ใช้ (User-Interface) ที่ใช้ง่ายขึ้น เทคโนโลยีดังกล่าวอาศัยพื้นฐานการทำงานที่เรียกว่า Hypertext ที่สามารถเชื่อมโยงเอกสารที่อยู่หลาย ๆ แห่ง ซึ่งอาจอยู่บนคอมพิวเตอร์คนละเครื่องเข้าด้วยกันจนคล้ายกับว่ามีเอกสารอยู่ ที่เดียว ภาษาคอมพิวเตอร์ที่ใช้ถูกเรียกว่า HTML (HyperText Mark-up Language) ในเวลาต่อมาได้มีการเชื่อมโยงสื่ออื่น ๆ ที่ไม่ใช่เอกสารเช่น ภาพนิ่ง ภาพเคลื่อนไหว เสียง ฯลฯ จนเกิดเป็นลักษณะของ Hypermedia ขึ้น จากการที่ระบบดังกล่าว สามารถเชื่อมโยงเอกสารจากหลาย ๆ แห่งเข้าด้วยกัน มันจึงถูกขนานนามว่า World Wide Web (WWW) หรือเรียกง่าย ๆ ว่า WEB ในปัจจุบัน

ด้วยสถาปัตยกรรมที่แยกเนื้อหา (Contents) กับส่วนเข้าถึงเนื้อหา (Browser) ออกจากกัน ทำให้ WEB ยังคงความเป็นระบบเปิดได้เหมือนอินเตอร์เน็ต กล่าวคือส่วนของ Browser สามารถแยกพัฒนาได้ต่างหากจากการพัฒนา Contents จึงทำให้มีความอิสระและความคล่องตัวสูง Browser ตัวแรกที่สั่นสะเทือนวงการมีชื่อว่า Mosaic นั้นมีความสามารถในการแสดงผลทางกราฟฟิกส์ รวมทั้งยังสามารถใช้งานได้บนเครื่องคอมพิวเตอร์หลายแบบและหลายรุ่น เป็นซอฟท์แวร์ที่หามาใช้งานได้ง่ายโดยไม่ต้องเสียเงิน มีผลให้ WEB ได้รับความนิยมมากขึ้นอย่างรวดเร็ว จนกระทั่งปลายปี 1994 มีการประเมินกันว่า 80 % ของการใช้งานบนอินเตอร์เน็ต เป็นการใช้บริการของ WEB

ด้วยประสิทธิภาพในการส่งข้อมูลของ WEB ซึ่งสามารถส่งข้อมูลได้ทั้งข้อความ รูปภาพ เสียง ภาพเคลื่อนไหว ตลอดจนข้อมูลแบบอื่น ทำให้การใช้งานในเชิงพาณิชย์เริ่มเป็นผลนับแต่นั้น มีการประยุกต์ WEB เพื่อการค้าหลากหลายรูปแบบ เช่น การโฆษณาประชาสัมพันธ์ การโปรโมทสินค้า การติดต่อคู่ค้า การบริการลูกค้า (Customer Supports & Customer Services) การซื้อขายและสั่งสินค้า การสำรวจและวิจัยตลาด การให้การศึกษาและให้ข้อมูลในตัวสินค้าต่อกลุ่มเป้าหมาย เป็นต้น ในช่วงเริ่มแรกนั้น การใช้งานในเชิงพาณิชย์มีลักษณะเป็นการหว่านเพื่อพัฒนาตลาด (Seeding the Market) ด้วยบริการที่ไม่คิดเงิน เพื่อที่จะทำให้ตลาดเติบโตในลักษณะ Spiral-Up คือเมื่อยิ่งมีผู้ใช้ก็ยิ่งมีบริการมากขึ้น เช่น บริษัท NETSCAPE ได้ทำการแจก Browser ฟรีไม่คิดเงินเพื่อให้คนใช้ WEB มาก ๆ เมื่อตลาดมีศักยภาพสูงขึ้นจึงค่อยหารายได้จากการบริการใหม่อื่น ๆ ในปัจจุบัน อินเตอร์เน็ตมีขนาดใหญ่พอ หรือมี economy of scale สำหรับการดำเนินกิจกรรมพาณิชย์เต็มรูปแบบ ไม่ใช่เพียงเพื่อใช้เป็นสื่อโฆษณาเท่านั้น ในประเทศสหรัฐอเมริกากำลังมีความตื่นตัวในการใช้เงินตราอิเล็กทรอนิกส์ (Electronic or Digital Money) ซึ่งจะถูกนำมาใช้แทนธนบัตรกระดาษ สามารถใช้ซื้อขายแลกเปลี่ยนบนอินเตอร์เน็ตได้ทันที มีการคาดการณ์กันว่าเงินตราอิเล็กทรอนิกส์จะสร้างผลกระทบต่อธุรกิจทั่วโลก และจะก่อให้เกิดการปรับตัวเปลี่ยนแปลงครั้งใหญ่ของธุรกิจทั่วโลกหลังปี ค.ศ. 2000 นี้


Hypertext Transfer Protocol (HTTP) และ Hypertext Markup Language (HTML)
จะว่าไปแล้ว HTTP กับ HTML นั้นก็เหมือนกาแฟกับคอฟฟี่เมท โดย HTTP คือโปรโตคอลที่ใช้สื่อสารระหว่าง client computer กับ server computer ทำให้ทั้งสองเครื่องรู้ว่าจะจัดการส่งข้อมูลไปอย่างไร ส่วน HTML คือสื่อภาษาที่ทำให้เอกสารหรือ contents ที่อยู่บนเครื่อง server computer เมื่อถูกส่งมาที่ client computer แล้วจะนำไปแสดงได้อย่างไร เราเรียกซอฟท์แวร์ที่ใช้แสดงนี้ว่า Browser

ข้อดีของการแยกชั้นการทำงานระหว่าง HTTP กับ HTML

  1. Contents
    • พัฒนาบนเครื่องแบบใดก็ได้ เช่น PC, Macintosh, IBM, DEC, SUN, HP, SGI, Cray etc.
    • มีเครื่องมือช่วยในการพัฒนามากมาย
  2. Web Server
    • เครื่องที่ใช้เป็น Web Server เป็นเครื่องใดๆ ก็ได้ เช่น PC, Macintosh, IBM, DEC, SUN, HP, SGI, Cray
    • ในแต่ละ Platform มี โปรแกรม Web Server ให้เลือกมากมาย
  3. Client Computer
    • เครื่องที่ใช้เป็น Client Computer เป็นเครื่องใดๆ ก็ได้ เช่น PC, Macintosh, IBM, DEC, SUN, HP, SGI, Cray, TV with Set-Top Box, Pen Computer etc.
  4. Browser
    • โปรแกรม Browser มีให้เลือกใช้มากมายบน PC, Macintosh, IBM, DEC, SUN, HP, SGI, Cray, TV with Set-Top Box, Pen Computer etc.

โปรโตคอล HTTP นี้วิ่งอยู่บน TCP/IP อีกชั้นหนึ่ง รูปแบบการทำงานจะไม่มีการจองสาย โดย client จะเรียกข้อมูลจาก server โดยการส่ง request ไปแล้วจะตัดการติดต่อทันที จากนั้นจะรอจนกระทั่ง server ส่งข้อมูลมาให้

สังเกต

นักศึกษาสามารถทดลองการทำงานดังรูปข้าง ต้นได้โดยดูที่ status bar ของโปรแกรม Netscape โดยโปรแกรม Netscape จะมีสถานะการทำงาน 3 ขั้นตอนคือ 1) Contacting Host 2) Host Connected Waiting for Reply .... และ 3) Transferring Data

ประโยชน์ของการทำงานแบบไม่จองสายของ HTTP ทำให้ WWW server สามารถให้บริการ client ได้หลายๆ คนพร้อมๆ กัน การสื่อสารของ WWW จึงมีประสิทธิภาพมากขึ้น


ความปลอดภัยบนเครือข่าย
ช้ามืดวันหนึ่งของฤดูหนาว ในขณะที่ผู้คนกำลัง หลับไหลใต้ผ้าห่มผืนอุ่นอย่างสบาย อากาศในกรุงเทพฯ เวลานี้ช่างน่านอนเสียจริง แต่สำหรับเด็กชายอ๊อด เขากลับนั่งอยู่หน้าจอคอมพิวเตอร์ ที่ต่อเข้ากับอินเตอร์เน็ต ท่ามกลางความมืด ก็มีเพียงแสงจากมอนิเตอร์ ที่ฉาดฉายให้เห็นรอยยิ้มน้อยๆ ของเด็กชาย ในวัยซุกซนคนนี้ เมื่อมองไปยังหน้าจอคอมพิวเตอร์ เด็กน้อยกำลังพยายามล็อกอิน เข้าไปยัง เครื่องคอมพิวเตอร์ของ บริษัทไฟแนนซ์แห่งหนึ่ง ที่ถูกทางการปิดไป เด็กน้อยกำลังพยายามเข้าไป แก้ไขไฟล์การผ่อนชำระรถยนต์ เพื่อที่จะทำให้ข้อมูลรถของพ่อเขา หายไปจากระบบ รถที่ค้างชำระมากว่า 6 เดือน และรอโดนยึด จะได้ปราศจากตัวตนอีกต่อไป

การกระทำของหนูน้อยคนนี้ คนทั่วๆไป มักจะคิดว่า และขนานนามเขาว่า Hacker แท้จริงแล้ว ชีวิตของ Hacker นั้นเป็นอย่างไร

อันที่จริงแล้ว ความเข้าใจของคนทั่วไป ที่มีต่อ Hacker นั้น ไม่ค่อยจะถูกต้องเท่าไรนัก แท้จริงแล้วในหมู่ของ Hacker เองนั้น กลับไม่ยอมรับ การกระทำแบบเจ้าหนูคนนี้ Hacker นิยามคนแบบนี้ว่า Cracker เพราะ Hacker นั้นไม่นิยม การหาประโยชน์ บนความเดือดร้อนของคนอื่น ในขณะที่ Cracker นั้น ใช้ประโยชน์จากความชาญฉลาด ของตนเอง เพื่อให้ได้มา ซึ่งสิ่งที่ตนเองต้องการ Hacker ต้องการทำในสิ่งที่เป็นการ ปลดโซ่ตรวน และพันธนาการ เพื่อความเป็นอิสระของตนเอง และผู้อื่น จากสิ่งที่พวกเขาคิดว่าไม่ถูกต้อง ทั้งหลาย

Hacker เชื่อในเรื่องของ พลังและอำนาจ ที่เขาสามารถควบคุม Cyberspace ได้ พวกเขาชอบที่จะค้นหา ความคิด วิธีการใหม่ๆ ที่จะปลดพันธนาการทั้งหลาย ที่ผูกมัดพวกเขาอยู่ เช่น พวกเขาเชื่อว่า ค่าโทรศัพท์ไปต่างประเทศ หรือต่างจังหวัด แพงเกินไป เนื่องจาก พวกผูกขาด (monopoly) อย่างองค์การโทรศัพท์ หรือ บริษัทเอกชน ขูดเลือดจากประชาชน คิดกำไรเกินควร พวกเขาจะคิดหาวิธีที่จะใช้โทรศัพท์ทางไกลฟรี เช่นการหา access code ที่ทำให้ควบคุมชุมสายได้ การต่อ oscillator เข้ากับสายโทรศัพท์เพื่อสร้างสัญญาณ Hacker ยินดีจ่ายค่าโทรศัพท์ท้องถิ่น ซึ่งมีราคาถูก แต่ไม่ยินยอมจ่ายค่าทางไกล เพราะพวกเขา คิดว่าราคาไม่ยุติธรรม และหากพวกเขาทำสำเร็จ พวกเขาจะไม่รีรอที่จะแพร่ขยาย ภูมิความรู้นี้ ไปสู่ Hacker คนอื่นๆ พวก Hacker จึงมีสังคมที่ค่อนข้างจะแข็งแกร่ง บางคนที่ไม่ ค่อยรู้เรื่องเกี่ยวกับ Hacker ก็มักจะ เสียดสีว่าเป็นพวก Digital Hippy บ้าง เป็น พวก Cyberpunk บ้าง ความจริง Hacker แตกต่างจากคนเหล่านั้น โดยสิ้นเชิง

Hacker เป็นคนที่มีความอุตสาหะ ใฝ่รู้ เป็นพื้นฐาน นอกจากนั้น เขายังเป็นคนที่ รักสันติ รังเกียจความรุนแรง และความเห็นแก่ตัว Hacker ชอบความท้าทาย พวกเขาชอบ ที่จะได้มาซึ่งความสามารถในการควบคุม ทั้งตัวเขาเอง และ Cyberspace ที่เขาอยู่ เขาพยายามชี้นำ Cyberspace เช่น ถ้าเขาเห็นว่า รัฐบาลอินโดนีเซีย ทำไม่ถูกในเรื่อง ติมอร์ตะวันออก เขาก็เข้าไปแก้ Homepage ของรัฐบาลอินโดนีเซียให้ มีข้อมูลที่ถูกต้อง Hacker ต่อต้านการละเมิดสิทธิมนุษยชน เขาเจาะเข้าไปใน computer ของรัฐบาล อินโดนีเซีย เพื่อลงโทษที่อินโดนีเซียทำไม่ถูกในเรื่องนี้ Hacker ทำตัวเหมือน Robinhood เช่น เข้าไปโอนเงินของ บริษัทน้ำมัน เพื่อไปยังกองทุนเด็ก

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

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

สิ่งที่ผมได้บรรยายมาทั้งหมด เป็นเพียงการเปิดโลก Hacker บางส่วนให้นักศึกษา รับรู้ ว่า Hacker มิได้เป็นภัยต่อเรา สิ่งที่เป็นภัยต่อเราคือ Cracker ผู้ที่ใช้ความฉลาดของตน ในทางที่ผิด Cracker ไม่คิดถึงผู้อื่น เขาจะทำในสิ่งที่เขาต้องการ Cracker จึงเป็น ภัยคุกคามต่อ Cyberspace เพราะเขามีความสามารถสูง เขาอาจจะโอนเงินในธนาคารไปใช้ เขาอาจจะดักฟังข้อมูล นำไปขายให้ผู้ที่ต้องการ เขาอาจจะทำลายหลักฐานของราชการ แต่ไม่ใช่เพื่อคนอื่นที่ด้อยโอกาส หากแต่เพื่อแลกกลับสิ่งที่เขาต้องการ เช่นเงินค่าจ้าง


Crackers ทำอันตรายกับระบบอย่างไร
ระบบคอมพิวเตอร์ใดใดก็ตาม แม้จะออกแบบมา อย่างดี แต่ก็มีช่องทางให้ crackers สามารถเจาะเข้าไปเล่นงานได้เสมอ จริงๆ แล้ว crackers ไม่จำเป็นต้องเป็นอัจฉริยะ เสมอไป ขอเพียงแค่เป็นคนช่างสังเกต และมีความรู้ ความเข้าใจ ในระบบคอมพิวเตอร์พอควร ก็สามารถที่จะเจาะระบบได้ การเจาะระบบของ crackers อาจจะพอแบ่งได้ตามวัตถุประสงค์ ซึ่งก็จะก่อให้เกิดความเสียหาย ได้มากน้อย แตกต่างกัน กล่าวคือ
  • การหยอกล้อ
  • การรบกวน
  • การดักฟัง หรือ ล้วงข้อมูล
  • การทำลายล้าง
การหยอกล้อ
crackers ที่เจาะระบบ เพื่อหยอกล้อเล่นๆ ก็อยู่ในข่าย ที่เป็น hackers ได้ เพราะผลลัพธ์ ที่ได้ไม่รุนแรงอะไร เช่น อาจจะปลอมแปลง e-mail เล่นๆ ซึ่งวิธีการปลอมแปลง e-mail นั้น ทำได้ง่ายมาก ในระดับต่ำสุดของการปลอม e-mail ทำได้โดยการ ใช้โปรแกรมส่ง e-mail ที่มีความสามารถสูง ก่อนที่จะให้นักศึกษา ลองทำการปลอมแปลง e-mail เรามาทำความรู้จัก กับระบบในการส่ง e-mail กันหน่อยดีไหม การส่ง e-mail บนเครือข่ายอินเตอร์เน็ตนั้น อาศัยโปรโตคอล SMTP (Simple Mail Transfer Protocol) เครื่องที่จะส่ง e-mail ได้เราเรียกว่า STMP Server สมมติว่านายมอส จะส่ง e-mail ไปหานายเจมส์ นายมอสจะต้องมี SMTP Server ที่ฝั่งของตน ซึ่งเจ้า STMP Server นี้ไม่จำเป็นต้องเป็นเครื่องของนายมอส นายมอสอาจจะ สร้าง e-mail ขึ้นมา บนเครื่อง PC ส่วนตัวที่บ้านของนายมอส แล้วนายมอส ก็ต่อเครื่องที่บ้านเข้ากับอินเตอร์เน็ต จากนั้นนายมอสก็ขอร้อง ให้เครื่องสักเครื่อง บนอินเตอร์เน็ต ที่มีเจ้า SMTP Server นี้อยู่ช่วยส่ง e-mail ให้ สมมติว่านายมอสขอร้อง ให้เครื่อง mucc.mahidol.ac.th ส่งให้ เจ้าเครื่อง mucc.mahidol.ac.th ก็จะเป็น SMTP Server ให้นายมอส อีกวันหนึ่งถ้าเครื่อง mucc.mahidol.ac.th เกิด shutdown นายมอสก็อาจจะ ขอร้องให้เครื่อง neural.sc.mahidol.ac.th ส่ง e-mail ให้แทน ความที่ SMTP Server เป็นคนใจดี นี่เอง มันจึงเชื่อคนง่าย นายมอสสามารถหลอกว่าตัวเองเป็น ใครก็ได้ เช่นหลอกว่าตัวเอง คือนายเจ เจ้า SMTP Server ก็จะส่งข้อมูลไป ทำให้นายเจมส์หลงเชื่อว่า นายเจส่ง e-mail มาหา ด้วยเหตุนี้ เราจึงมักพบบ่อยๆ ว่า e-mail ขยะที่ใครๆ มักส่งโฆษณามาให้เรา เราไม่สามารถ ตอบกลับไปได้เพราะว่า คนที่ส่งหลอกเจ้า SMTP Server เข้าให้แล้ว การปลอมแปลง e-mail ทำได้ด้วยการป้อนข้อมูลผิดๆ ให้กับ SMTP Server การปลอม e-mail ไม่นิยมทำบนเครื่องที่มี Permanent IP Address เพราะถ้าคนที่เสียหาย อยากตรวจสอบขึ้นมา ว่า e-mail ที่แท้จริงถูกส่งมาจากไหน สามารถเช็คจากการบันทึกของ SMTP Server ได้ ทำให้ทราบว่า เวลาใด มีคนติดต่อขอใช้ SMTP Server จากที่ไหน ผู้ปลอมแปลง e-mail จึงมักอาศัย เครื่องที่ใช้ Dynamics IP Address เช่น Dial-Up Connection หรือใช้เครื่องที่ต่อกับอินเตอร์เน็ต ที่อยู่ในศูนย์รวม ที่มีคนใช้มากๆ เพราะยากที่จะตรวจสอบว่า เวลานั้นๆ เครื่องใดมี IP อะไร มีใครใช้ หรือถ้าจะให้ปลอดภัยที่สุด ผู้ปลอมแปลง e-mail จะสร้าง IP ปลอมขึ้นมา ซึ่งจะไม่ขอ กล่าวถึงวิธีการทำ เกรงว่าจะมีผลร้ายมากกว่าผลดีครับ ความเสียหายที่เกิดขึ้นจากการปลอม e-mail นั้น ขึ้นอยู่กับว่า ผู้รับ e-mail เชื่อถือ e-mail ที่ตนรับ มากน้อยแค่ใด ใครที่เคยดูหนังเรื่อง My Best Friend's Wedding คงเห็นว่า มันเกือบทำให้พระเอกเลิกกับคนรักเลย ก่อนที่จะไปดูต่อว่า การปลอมแปลง e-mail ทำได้ ง่ายแค่ไหน เรากลับไปดูขั้นตอนในการรับ e-mail บ้าง หลังจากนายมอสขอให้ SMTP Server ส่ง e-mail ให้แล้ว e-mail ก็จะไปอยู่บนเครื่องที่มี account ของนายเจมส์ e-mail จะอยู่ที่นั่น จนกระทั่งนายเจมส์มาอ่าน เครื่องปลายทางนี้ เราจะเรียกว่า Point of Present Server (POP Server) ก็คือมันเป็นจุดที่ นายเจมส์บอกให้คนอื่นรู้ว่า ถ้าอยากส่ง e-mail มาหาตน ให้ส่งมาที่ POP Server ตัวนี้ เวลานายเจมส์อ่าน e-mail นายเจมส์ไม่จำเป็นจะต้อง อยู่ (Telnet) บนเครื่องนั้นก็ได้ นายเจมส์อาจจะเล่น PC ของตนที่บ้าน แล้วให้โปรแกรมอ่าน e-mail ซึ่ง อาจเป็น Eudora หรือ Netscape ให้ติดต่อเข้ามาอ่าน e-mail จาก POP Server โดยใช้ POP Protocol ได้ โดย POP Server จะถาม password ในการติดต่อ เห็นหรือยังครับว่า POP Server มี security มากกว่า SMTP Server เพราะคนที่จะอ่านต้อง มี password แต่คนที่จะส่งไม่ต้อง ก็เหมือนๆ จดหมายธรรมดานั่นแหละ ปลายทางนั้นเป็น จุดที่คงที่ตายตัว แต่คนส่งจะไปส่งที่ตู้ไปรษณีย์ไหนก็ได้ คนที่เขาปลอมแปลง e-mail เขาก็ จะเลือกเอาตู้ไปรษณีย์ที่ใกล้ กับบ้านของคนที่เขาจะปลอมตัวเป็นคนนั้น ให้มากที่สุด สมมตินายมอสอยู่ลาดกระบัง นายเจมส์อยู่เกษตร นายเจอยู่มหิดล นายมอสจะหลอกให้ นายเจมส์เชื่อว่า นายเจจากมหิดลส่ง e-mail มาหานายเจมส์ นายมอสก็ต้องใช้ให้ SMTP Server ที่มหิดลส่ง e-mail ให้ มันจะได้สมจริงสมจัง มาดูวิธีการปลอมจากภาพข้างล่างนี้ วิธีง่ายๆ ก็คือใช้โปรแกรม Netscape แล้ว set ให้ตัวเองมีหน้าตาให้เหมือนคนที่จะถูกปลอม

ภาพการแก้ไข identity ของผู้ปลอมแปลงให้เหมือนผู้ถูกปลอมแปลง

ภาพการใช้ SMTP Server ที่ใกล้เคียงกับผู้ถูกปลอมแปลงมากที่สุด
จากการทดลองใช้ SMTP Server ของ mucc.mahidol.ac.th พบว่ามี security สูงคือ mucc.mahidol.ac.th จะไม่ยอมส่ง e-mail ให้ นายมอสจึงต้องลองใช้ SMTP Server ตัวอื่นๆ เช่น neural.sc.mahidol.ac.th ซึ่งเจ้า neural.sc.mahidol.ac.th จะยอมส่งให้ อีกวิธีหนึ่งที่นายมอสสามารถทำได้ คือการติดต่อกับ โปรแกรม sendmail ของเครื่องได้โดยตรง โดยการ telnet ไปที่ port 25 เช่น
telnet neural.sc.mahidol.ac.th 25
จากนั้นเครื่อง neural.sc.mahidol.ac.th จะต้อนรับนายมอสให้ทำการส่ง e-mail นายมอสจะ ยิ่งง่ายในการปลอม e-mail โดยการ ใช้คำสั่ง
HELO neural.sc.mahidol.ac.th
MAIL FROM: tata
RCPT TO: james@nontri.ku.ac.th
DATA

พิมพ์อะไรก็ได้ ถ้าต้องการหยุดให้ใช้ . (จุดฟูลสตอบ)
.
quit

จากข้างบนนี้ นายมอสสามารถ ปลอม e-mail จาก TATA ส่งไปยัง นายเจมส์ที่เกษตร นายมอสไม่จำเป็นต้องใส่ชื่อ TATA เพราะเครื่อง neural.sc.mahidol.ac.th จะดูจากคำสั่ง MAIL FROM: ว่าส่งจากใคร แล้วมันจะไปเอาข้อมูลเกี่ยวกับคนนั้นมาใส่ให้ ซึ่งใต้คำสั่ง DATA นั้น นายมอสสามารถเพิ่มความน่าเชื่อถือด้วยข้อความหลอกๆ อะไรก็ได้ เช่น
SUBJECT:  Phone me please
Reply-To Address: tata@neural.sc.mahidol.ac.th
X-Priority: Urgent
Sender: tata@neural.sc.mahidol.ac.th at 11:02 February 15, 1998 (GMT +0700)
ข้อมูลพวกนี้ทำให้น่าเชื่อถือใช่ไหม ถ้าผู้อ่านเอา header ของ e-mail มาตรวจสอบ

การรบกวน
ผู้ใดก็ตาม ตกเป็นเป้าการรบกวนของ crackers เขาผู้นั้นน่าสงสารที่สุด crackers ใช้ จุดที่ ง่ายที่สุดในการรบกวนเป้าหมาย นั่นคือ การส่ง e-mail เนื่องจากการส่ง e-mail ทำได้ง่าย และ หาต้นตอได้ยาก สมมติว่านายมอส รู้ว่านายเจมส์ใช้ internet ของบริษัท สามารถ ซึ่ง เป็นบริษัทของเอกชน นายเจมส์ต้องเสียค่าใช้จ่ายในการอ่าน e-mail นายมอสก็อาจจะแกล้ง ส่ง e-mail ขนาด 10 เมกะไบต์ไปให้นายเจมส์ เมื่อนายเจมส์จะอ่าน e-mail โปรแกรม e-mail จะพยายาม download ไฟล์ 10 เมกะไบต์ดังกล่าวมา สมมตินายเจมส์มี e-mail อยู่ 10 ฉบับ แต่ไอ้เจ้าไฟล์ 10 เมกะไบต์นี้ อยู่ในอันดับ 2 นายเจมส์จะไม่เคยได้อ่านฉบับที่ 3 ถึง 10 เลย เพราะโปรแกรมอ่าน e-mail จะอ่านแต่ไฟล์นี้ อาจจะใช้เวลาอ่านเป็นชั่วโมง ถ้านักศึกษาเจอกับ สถานการณ์เช่นนี้จะทำอย่างไร ? บังเอิญว่านายเจมส์เมื่อเจอแบบนี้ เขาเลยไปปรึกษาสาวนุ๊ก ซึ่งเป็นผู้เชี่ยวชาญ สาวนุ๊กจึง telnet เข้าไปยัง POP Server ที่มี account ของนายเจมส์อยู่ จากนั้นใช้โปรแกรม elm บน POP Server นั้นอ่าน e-mail แล้วลบไฟล์ 10 เมกะไบต์นั้นออก นายเจมส์จึงสามารถอ่าน e-mail ด้วยโปรแกรม Netscape ต่อไป โดยไม่รู้ว่าสาวนุ๊ก ทำอะไรลงไป ผู้ใช้ที่ใช้ internet ของเอกชน มักจะใช้โปรแกรมอ่าน e-mail โดยผ่าน POP Protocol ซึ่งโปรแกรม อ่าน e-mail เช่น Netscape จะอ่าน e-mail ไปจาก POP Server อีกทอดหนึ่ง ด้วยเหตุนี้ crackers จึงสามารถรบกวนโดยส่งไฟล์ใหญ่ๆ มาแกล้งได้ บนระบบ UNIX นั้น e-mail จะถูกเก็บไว้ใน /var/spool/mail ซึ่งมักจะถูกติดตั้ง ไว้บนฮาร์ดดิสก์ ของระบบ (System Area) ซึ่งมักจะมีเนื้อที่จำกัด เช่นบางระบบมีเนื้อที่เหลือเพียง 5 เมกกะไบต์ Crackers สามารถแกล้งส่ง e-mail ใหญ่ๆ มา ทำให้พื้นที่เก็บ e-mail เต็ม ซึ่งก็จะทำให้เครื่อง crash ได้ การทำให้เครื่องที่ run Windows 95 เกิดอาการ crash นั้น สามารถทำได้ โดยการส่งข้อมูล เข้าไปรบกวนที่ port 139 ของ Windows Socket แต่ไม่ขอบอกวิธีทำ เพราะว่าเครื่องในภาควิชา ของเรา ส่วนใหญ่ใช้ Windows 95 คงจะไม่ค่อยดี หากมีใครคอย บอมพ์เครื่องต่างๆ ในภาควิชาของเราบ่อย ๆ

การดักฟัง
ถึงแม้ Internet Protocol จะมีลักษณะเป็นแบบ Point to Point คือ เครื่องส่ง กับ เครื่องรับ มี identity ของตัวเอง คือมี IP Address หนึ่งเดียว แต่ก็มีจุดอ่อน เนื่องจากบนเส้น LAN เดียวกันนั้น ข้อมูลจะถูก Broadcast ออกไปทุก ๆ เครื่อง ด้วย Ethernet Protocol สมมติมีใคร ส่งข้อมูลมายังเครื่องของเรา เมื่อข้อมูลมาถึง gateway เจ้าตัว gateway จะส่ง ข้อมูลไปให้เครื่อง ทุกเครื่องบน LAN ด้วย Ethernet Protocol จากนั้น IP Protocol จะตรวจว่าข้อมูลส่งถึงใคร เครื่องเป้าหมายก็จะหยิบข้อมูลนั้นขึ้นมา ลองนึกดูสิว่าในเมื่อข้อมูลถูกส่งไป ทุกๆ เครื่อง หาก เราแกล้งบอกว่า นี่คือข้อมูลของฉันนะ ฉันขออ่าน ทีนี้ คนคนนั้น ก็จะเห็นทุกอย่าง ตั้งแต่ e-mail กิจกรรมทุกอย่างที่บุคคลเป้าหมายทำอยู่ password และ อะไรก็ได้ อันที่จริง การดักฟังไม่ใช่เรื่องที่ ต้องใช้ความรู้อะไรมากเลย มี source code อยู่บน internet ด้วยซ้ำ โปรแกรมที่นิยมกันคือ tcpdump บนระบบ UNIX และ โปรแกรม Netxray บน Windows 95 การดักฟังข้างบน เป็นการดักฟังกิจกรรมบน networks ซึ่งอาจนำไปสู่ password ของ บุคคลเป้าหมาย การกระทำเช่นนี้ ยากที่จะตรวจสอบ และป้องกัน ยังมีการดักฟังอีกอย่าง โดยการใช้โปรแกรม ฝังตัวลงไปในหน่วยความจำ ซึ่ง Crackers จะเรียกโปรแกรมนี้ แล้ว ปล่อยให้มัน ยันทึกการกด key ของผู้ใช้ ซึ่งโปรแกรมก็จะบันทึกทุกสิ่งทุกอย่าง ที่ผู้ใช้ กด key ลงไปในไฟล์ Crackers ก็จะมาเอาไฟล์ไปวิเคราะห์ การกดในภายหลัง ทำให้ Crackers สามารถทราบ password ของผู้ใช้ได้

การทำลายล้าง
สิ่งที่อันตรายที่สุด ที่ Cracker คนหนึ่งอาจกระทำ ก็คือ การทำลายล้าง ถ้า Cracker ทราบ password ของคนที่มีอำนาจที่สุด บนเครื่อง UNIX นั่นคือ root เขาก็สามารถลบทุกอย่างได้ อันที่จริง Cracker อาจไม่จำเป็นต้องรู้เลยด้วยซ้ำ ว่า password ของบุคคลเป้าหมาย คืออะไร เขาก็สามารถหาช่องทางอื่น เข้าไปทำอันตรายต่อข้อมูลของบุคคลนั้นได้ ดังตัวอย่างต่อไปนี้
  • rlogin ระบบ UNIX นั้นอนุญาตให้ ผู้ใช้ login เข้ามาได้โดยไม่ต้องใช้ password โดยการใส่ เบอร์ IP กับชื่อ account ที่จะ login ลงไปในไฟล์ ชื่อ .rhosts ใน home directory เช่น สมมติว่าผู้ใช้ชื่อ root บน neural.sc.mahidol.ac.th สร้างไฟล์ชื่อ .rhosts ใน home directory ของ root โดยในไฟล์นั้นมีข้อความ
    einstein.sc.mahidol.ac.th  jinta
    202.28.156.2 jinta

    จะทำให้คนชื่อ jinta บนเครื่อง einstein.sc.mahidol.ac.th หรือเครื่องที่มี IP เลข 202.28.156.2 สามารถ login เข้ามาที่เครื่อง neural.sc.mahidol.ac.th account ชื่อ root โดยใช้คำสั่ง rlogin neural.sc.mahidol.ac.th -l root
    คราวนี้ ถ้า Crackers รู้ข้อมูลนี้ Crackers ก็สามารถปลอม IP ของเครื่องบน เน็ตเวอร์ค เดียวกัน แล้วก็ login มาที่เครื่อง neural.sc.mahidol.ac.th โดยเครื่อง neural.sc.mahidol.ac.th ก็จะเชื่ออย่างสนิทใจ ว่าคนที่ login เข้ามาคือ jinta ด้วยเหตุนี้เราจึงไม่ควรมี .rhosts ในไดเรคทอรีของเรา

โพสต์ยอดนิยมจากบล็อกนี้

ปัญหาและเฉลยวิชาธรรม นักธรรมชั้นตรี สอบในสนามหลวง วันอังคาร ที่ ๒๙ กันยายน พ.ศ.๒๕๕๒

I miss you all กับ I miss all of you ต่างกันอย่างไร

ปัญหาและเฉลยวิชาอนุพุทธประวัติ นักธรรมชั้นโท สอบในสนามหลวง วันอาทิตย์ ที่ ๒๐ พฤศจิกายน พ.ศ. ๒๕๔๘