File Transfer (FTP), WWW, HTTP, DHCP
File Transfer Protocol (FTP) FTP คือ Protocol ที่ใช้ในจัดการและแลกเปลี่ยน file ข้อมูล จากเครื่องหนึ่งไปยังเครื่องอื่น ๆ โดยส่วนใหญ่จะถูกใช้ในระบบ Internet FTP ถูกสร้างมาเพื่อให้ทำงานในแบบ client-server FTP ใช้ service ของ TCP ซึ่งต้องมี 2 การติดต่อของ TCP FTP ใช้ port 21 ในการติดต่อเพื่อควบคุม (control connection) และ port 20 เพื่อติดต่อข้อมูล (data connection)
File Transfer Protocol (FTP)
World Wide Web (WWW) WWW ในปัจจุบันเป็นบริการแบบ client-server โดยที่ client จะใช้โปรแกรม browser ในการติดต่อเพื่อขอข้อมูลหรือ service ต่าง ๆ ที่อยู่ใน server ซึ่ง service นั้นจะสามารถให้บริการกับ client ได้หลาย ๆ เครื่องพร้อมกัน
Browser
URL URL คือที่อยู่ของ website ต่าง ๆ โดยประกอบไปด้วย 4 ส่วนหลัก ๆ ดังนี้ โดยทั่วไปในการเข้าใช้งาน website ต่าง ๆ เรามักจะป้อนแค่ชื่อของ website เหล่านั้นเช่น www.kmutnb.ac.th ซึ่งในส่วนของ protocol และ port จะถูกกำหนดโดยอัตโนมัติ คือ http และ port 80
Hypertext Transfer Protocol (HTTP) HTTP เป็นโปรโตคอลหลักที่ใช้ในการเข้าถึงข้อมูลต่าง ๆ บน WWW โดยใช้ service ของ TCP บน port 80
ตัวอย่างการรับส่งข้อมูล HTTP Request ถูกส่งไปยัง server เพื่อแสดงว่า client ยอมรับรูปภาพ gif หรือ jpeg หลังจากนั้น Response จะถูกส่งกลับมา ซึ่ง header จะบอกถึงรายละเอียดของข้อมูลต่าง ๆ ส่วน Body คือข้อมูลที่ส่งมา
Dynamic Host Configuration Protocol (DHCP) DHCP หรือ DHCPv6 คือโปรโตคอลที่ใช้ใน Network ที่ทำงานแบบ client-server โดยเครื่อง client จะทำการร้องขอข้อมูลที่จำเป็น ในการเข้าร่วมเครือข่ายจาก server ซึ่งข้อมูลเหล่านี้ประกอบไปด้วย - IP Address - subnet mask - gateway - dns server ซึ่งใช้ภายในเครือข่าย ซึ่ง server เป็นฝ่ายกำหนดให้กับ client ตัวอย่างของการใช้งาน DHCP เช่น การเข้าใช้งาน Network ของมหาวิทยาลัย เมื่อเราทำการต่อ Wi-Fi แล้ว Router ของมหาวิทยาลัยจะเป็นตัว server เพื่อแจกจ่าย IP Address และข้อมูลต่าง ๆ เพื่อเซ็ตค่าให้กับคอมพิวเตอร์ของเราอัตโนมัติ โดยที่เราไม่จำเป็นจะต้องรู้รายละเอียดเหล่านั้น
Network Security
Security services Network Security คือการรักษาความปลอดภัยของข้อมูลภายในเครือข่าย ซึ่งสามารถแบ่งออกเป็น 5 service ดังนี้ ใน 4 services แรก จะคำนึงถึงข้อมูล (message) ที่มีการแลกเปลี่ยนกันในเครือข่าย ส่วน service สุดท้ายจะใช้การยืนยันตัวตนของผู้ใช้
MESSAGE CONFIDENTIALITY ข้อมูลต่าง ๆ จะถูกเข้ารหัสในฝั่งของผู้ส่ง และถอดรหัสในฝั่งผู้รับ โดยจะใช้ Key ในการเข้ารหัส สามารถแบ่งออกได้เป็นแบบ symmetric-key และ asymmetric-key symmetric-key คือการแชร์ key ที่เหมือนกัน
MESSAGE CONFIDENTIALITY asymmetric-key คือการสร้าง key คู่หนึ่ง ของแต่ละเครื่อง เป็น private key (สำหรับถอดรหัส) และ public key (สำหรับให้เครื่องอื่นที่ต้องการส่ง เข้ารหัสข้อมูล)
MESSAGE INTEGRITY ข้อมูลต่าง ๆ ก่อนที่จะส่งไปยังปลายทางจะถูกเข้ารหัสก่อนโดยการย่อย (Hash function) เพื่อให้ได้ข้อมูลที่เรียกว่า Fingerprint เมื่อทำการส่งข้อมูล จะส่งไปทั้งข้อมูล (Document) และ ข้อมูลที่ถูกย่อย (Fingerprint)
MESSAGE INTEGRITY ในฝั่งของผู้รับเมื่อรับข้อมูล (Document+Fingerprint) มาแล้วจะทำการ Hash ในส่วนของ Document แล้วนำมาเปรียบเทียบกับ Fingerprint ที่ได้รับมา
MESSAGE INTEGRITY ตัวอย่างของการ Hash แบบ SHA-1
MESSAGE AUTHENTICATION ข้อมูลในการส่งจะใช้ MAC Address เป็นการยืนยันตัวตนของผู้ส่ง
DIGITAL SIGNATURE Digital signature จะเหมือนกับการเซ็นชื่อกำกับลงไปในข้อมูลเพื่อใช้ในการยืนยันตัวตนว่าถูกส่งมาจากผู้ส่งนั้น ๆ จริง โดยผู้ส่งจะใช้ Private key ในการเซ็นชื่อ ส่วนผู้รับจะได้รับ Public key เพื่อใช้ในการตรวจสอบเพื่อยืนยันตัวบุคคลจากลายเซ็น
DIGITAL SIGNATURE การใช้งาน Digital signature กับ Hash function เพื่อเข้ารหัสข้อมูลและยืนยันตัวตน
ENTITY AUTHENTICATION Authentication คือการยืนยันตัวตน สามารถทำได้โดยการใส่ Password ก่อนที่จะเข้าใช้ และอีกวิธีหนึ่งคือ challenge-response challenge คือ ค่าที่ถูกส่งโดยผู้ตรวจสอบซึ่งเปลี่ยนไปตามเวลา response คือ ผลลัพธ์การคำนวณของ challenge
ENTITY AUTHENTICATION Challenge-response authentication โดยการใช้ timestamp Challenge-response authentication โดยการใช้ keyed-hash function
ENTITY AUTHENTICATION Challenge-response authentication โดยการใช้ asymmetric-key Challenge-response authentication โดยการใช้ digital signature
Security in the Internet: Firewalls และ VPN
Firewall Firewall หรือกำแพงกันผู้บุกรุก คือ Software หรือ Hardware ในระบบเครือข่าย หน้าที่ของ Firewall คือเป็นตัวกรองข้อมูลสื่อสารระหว่างเขตที่เชื่อถือต่างกัน เช่น อินเทอร์เน็ต (อาจนับเป็นเขตที่เชื่อถือไม่ได้) และ อินทราเน็ต (เขตที่เชื่อถือได้) โดยการกำหนดกฎและระเบียบมาบังคับใช้โดยเฉพาะเรื่องของการดูแลระบบเครือข่าย
Firewall ในตัว Firewall จะมีการกรองข้อมูลก่อนที่จะรับหรือส่งข้อมูลออกไปยัง Internet (Packet-filter) โดยจะกรองจากส่วน Network Layer หรือ Transport Layer เช่น IP Address , Port Number ตัวอย่าง (คำอธิบายให้ดูในหน้าถัดไป)
Firewall จากรูปจะเห็นได้ว่าแพ็กเก็ตจะถูกกรองดังนี้ 1. แพ็กเก็ตขาเข้าทั้งหมดที่มาจากเครือข่าย 131.34.0.0 จะถูกบล็อก 2. แพ็กเก็ตขาเข้าทั้งหมดที่ต้องการติดต่อไป TELNET port 23 ในเครือข่ายภายในจะถูกบล็อก (เป็นการป้องกันไม่ให้แพ็กเก็ตจากภายนอกสามารถ telnet เข้ามาที่เซิร์ฟเวอร์ในองค์กรได้) 3. แพ็กเก็ตขาเข้าทั้งหมดที่ต้องการติดต่อไปยังโฮสต์ที่มี IP 194.78.20.8 จะถูกบล็อก 4. แพ็กเก็ตขาออกทั้งหมดที่ต้องติดต่อไปยังพอร์ต 80 จะถูกบล็อก (เป็นการป้องกันไม่ให้โฮสต์ภายในองค์กรสามารถใช้ HTTP server ภายนอกได้)
Proxy Firewall Proxy firewall ทำหน้าที่ในการกรองเนื้อหาของข้อมูลที่ส่งมาจาก client ว่าจะอนุญาตให้ข้อมูลเหล่านี้เข้ามาที่ server ได้หรือไม่ ในการกรองข้อมูลแบบนี้จะกระทำที่ Application Layer
Virtual Private Networks (VPN)
Virtual Private Networks (VPN) VPN จะใช้โพรโตคอล IPSec ในการรักษาความปลอดภัยของ packet ที่ถูกส่งออกไป โดย packet ที่จะถูกส่งออกไปนั้นจะถูก router ทำการเอ็นแคปซูเลตให้เป็น packet ใหม่เสียก่อน แล้วจึงทำการส่งออกไป
การออกแบบระบบเครือข่าย และ แผนผังเครือข่าย
Network ของ KMUTNB
Network ของ KMUTNB (2)
แบบฝึกหัด จากตารางของ Packet filter firewall จงอธิบายผลลัพธ์ที่เกิดขึ้น เมื่อ Packet จากอินเตอร์เน็ต ถูกส่งเข้ามาจาก Source IP Address คือ 131.34.0.0 และ Destination IP Address คือ 194.78.20.8 เครื่องคอมพิวเตอร์ในเครือข่ายภายในเปิดเว็บไซท์คือ http://www.chaichan.in.th:8080 ผู้ใช้ภายนอก จาก Source IP Address คือ 131.10.1.2 ใช้ Telnet เข้ามาที่เซิร์ฟเวอร์ในเครือข่ายภายใน