โปรโตคอล NTP และ SNTP: ความแตกต่างและวิธีการทำงาน

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

โปรโตคอล NTP และ SNTP

NTP (Network Time Protocol) คืออะไรและทำงานอย่างไร

โปรโตคอล NTP เป็นโปรโตคอลแรกที่เปิดตัวไปยัง ซิงโครไนซ์นาฬิกาของระบบคอมพิวเตอร์ต่างๆ , NTP ไม่เพียงทำงานบนคอมพิวเตอร์หรือเซิร์ฟเวอร์เท่านั้น แต่ยังเป็นส่วนพื้นฐานของเราเตอร์ สวิตช์ อินเตอร์เน็ตไร้สาย จุดเชื่อมต่อและอุปกรณ์เครือข่ายประเภทใดก็ได้ เช่น ไฟร์วอลล์ NTP เป็นหนึ่งในโปรโตคอลอินเทอร์เน็ตแรกๆ ที่เกิดในปี 1981 และยังคงใช้เพื่อซิงโครไนซ์นาฬิกาของระบบคอมพิวเตอร์ต่างๆ โปรโตคอล NTP ช่วยให้คุณสามารถซิงโครไนซ์เวลากับเซิร์ฟเวอร์ NTP ต่างๆ ที่ติดตั้งทั่วโลกและสามารถเข้าถึงได้ผ่านทางอินเทอร์เน็ต นอกจากนี้ โปรโตคอล NTP ยังช่วยให้คุณสามารถซิงโครไนซ์เวลาได้แม้ว่าเราจะมีเวลาแฝงที่สูงมากหรือแปรผัน เนื่องจากมีการรวมกลไกเพื่อหลีกเลี่ยงการหน่วงเวลาเนื่องจากเวลาแฝงนี้

โปรโตคอล NTP ใช้ประโยชน์จาก โปรโตคอล UDP Transport Layer บนพอร์ต 123 เพื่อสื่อสารกับเซิร์ฟเวอร์ NTP ที่แตกต่างกันทั่วโลก . รายละเอียดที่สำคัญมากคือโปรโตคอล NTP นี้ใช้พอร์ต UDP 123 ทั้งในพอร์ตต้นทางและพอร์ตปลายทาง ดังนั้นเราต้องคำนึงถึงหากเรามีอุปกรณ์อยู่เบื้องหลัง ไฟร์วอลล์ หรือหากมีรายการควบคุมการเข้าถึงในสวิตช์ที่จัดการได้ต่างๆ ของเครือข่ายท้องถิ่น หากคุณมีอุปกรณ์ที่ใช้โปรโตคอล NTP และสวิตช์ที่จัดการได้ซึ่งเปิดใช้งานการโจมตีเครือข่ายแบบต่างๆ คุณจะต้องปิดการใช้งาน ” โจมตีแบลต ” โจมตีเพื่อให้โปรโตคอล NTP ทำงานได้อย่างถูกต้อง «การโจมตีแบบบลาท» ประกอบด้วยการบล็อกแพ็กเก็ต TCP หรือ UDP ที่มีพอร์ตต้นทางและปลายทางเหมือนกัน สิ่งที่ NTP ทำเมื่อใช้พอร์ตต้นทางและปลายทาง UDP 123 ดังนั้น เราต้องคำนึงถึงมันในขณะกำหนดค่าเครือข่ายของเรา

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

เมื่อเวลาผ่านไป ปัญหาด้านความปลอดภัยที่เกี่ยวข้องกับโปรโตคอล NTP ตรวจพบทั้งในการติดตั้งใช้งานในระบบปฏิบัติการต่าง ๆ ในไคลเอนต์ NTP ของคอมพิวเตอร์เครื่องต่าง ๆ รวมถึงการรักษาความปลอดภัยที่แท้จริงของโปรโตคอลซึ่งไม่ได้ใช้ การรับรองความถูกต้องหรือการเข้ารหัสข้อมูลทุกประเภทสำหรับการแลกเปลี่ยนข้อความ เซิร์ฟเวอร์ NTP อ่อนไหวต่อการโจมตีแบบ Man in the Middle เว้นแต่แพ็กเก็ตจะได้รับการเซ็นชื่อด้วยการเข้ารหัส เช่นเดียวกับคอมพิวเตอร์เอง มันสามารถดำเนินการโจมตี MitM เพื่อปรับเปลี่ยนเวลาบนคอมพิวเตอร์ปลายทางได้ โปรโตคอล NTP จะส่งข้อมูลทั้งหมดในรูปแบบข้อความล้วน ไม่มีการเข้ารหัส ความถูกต้อง หรือความสมบูรณ์ของข้อมูลใดๆ ถูกตรวจสอบ เพื่อหลีกเลี่ยงปัญหานี้ เวลาเครือข่าย Security โปรโตคอล (NTS) ได้รับการออกแบบซึ่งเป็นเวอร์ชันที่ปลอดภัยของ NTP โดยใช้ TLS และ AEAD เพื่อปกป้องการสื่อสาร และไม่มีใครสามารถแอบอ้างเป็นเซิร์ฟเวอร์ NTP เพื่อกำหนดค่าเวลาบนระบบของเราผิดพลาด

จะเกิดอะไรขึ้นหากฉันไม่มีเวลาที่ถูกต้องในระบบของฉัน

การรักษาเวลาให้ถูกต้องบนระบบคอมพิวเตอร์นั้นสำคัญมาก ไม่เช่นนั้นซอฟต์แวร์บางตัวอาจไม่ทำงาน และอาจทำให้คอมพิวเตอร์โจมตีเราด้วย หากในระบบปฏิบัติการของเราไม่ได้กำหนดค่าเวลาอย่างถูกต้อง เราอาจมีปัญหาดังต่อไปนี้:

  • ความเป็นไปไม่ได้ในการท่องอินเทอร์เน็ตด้วยเว็บเบราว์เซอร์ใด ๆ ขึ้นอยู่กับเวลาที่กำหนดค่าไว้ จะแสดงข้อผิดพลาดอย่างต่อเนื่องในใบรับรอง SSL / TLS ต่างๆ ของเว็บ
  • มีปัญหากับซอฟต์แวร์บางตัวที่ต้องการเวลาที่ถูกต้องในการทำงาน
  • เราอาจมีปัญหากับการอัปเดต Windows

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

อย่างที่คุณเห็น เรามีปัญหามากมายเกี่ยวกับการไม่มีเวลาที่ถูกต้องในระบบคอมพิวเตอร์บางระบบ

SNTP (Simple Network Time Protocol) คืออะไรและทำงานอย่างไร

พื้นที่ สนท โปรโตคอล (Simple Network Time Protocol) คือ a การใช้งานโปรโตคอล NTP ที่ซับซ้อนน้อยกว่า จะใช้โปรโตคอลเดียวกันและมีจุดประสงค์เดียวกัน โปรโตคอลนี้ใช้กันอย่างแพร่หลายในอุปกรณ์ฝังตัว เช่น เราเตอร์ในบ้านหรือสวิตช์ภายในบ้าน ซึ่งไม่จำเป็นต้องใช้ความสามารถเต็มรูปแบบของโปรโตคอล NTP ปัจจุบันโปรโตคอลที่ใช้คือ SNTPv4 และกำหนดไว้ใน RFC4330

SNTPv4 อนุญาตให้เข้าถึงได้ง่ายขึ้นสำหรับเซิร์ฟเวอร์และไคลเอนต์ที่ใช้ NTP และ SNTP เวอร์ชันปัจจุบันและก่อนหน้า การเข้าถึงจะเหมือนกับโปรโตคอล UDP / TIME ดังนั้นการปรับควรง่ายมาก โปรโตคอลนี้ออกแบบมาเพื่อทำงานในการกำหนดค่าเซิร์ฟเวอร์เฉพาะที่มีวิทยุนาฬิกาในตัว นอกจากนี้ เวลาแฝงได้รับการปรับปรุงและควบคุม เวลาที่แน่นอนสามารถป้อนได้หลายไมโครวินาทีโดยไม่มีปัญหาใดๆ

SNTP มีการพัฒนาอยู่ตลอดเวลา ปรับปรุงประสิทธิภาพการทำงานและความเข้ากันได้กับโปรโตคอลพื้นฐานต่างๆ ตัวอย่างเช่น การเปลี่ยนแปลงที่สำคัญเพียงอย่างเดียวใน SNTPv4 เมื่อเทียบกับเวอร์ชันก่อนหน้าคือส่วนหัวเพื่อปรับให้เข้ากับโปรโตคอล IPv6 นอกจากนี้ยังมีการเพิ่มส่วนขยายเสริมบางรายการให้กับ NTP พื้นฐาน ในปัจจุบัน เมื่อเรากำหนดค่าเซิร์ฟเวอร์ NTP ในไคลเอนต์ NTP ต่างๆ ที่มีอยู่ทั่วโลก การดำเนินการและการแลกเปลี่ยนข้อมูลสามารถทำได้ทั้งโดยใช้โปรโตคอล NTP และ SNTP การทำงานก็เหมือนกันเนื่องจากเรามีความเข้ากันได้

ความแตกต่างระหว่าง NTP และ SNTP

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

โปรโตคอล NTP ทำงานร่วมกับโปรโตคอล UDP บนพอร์ต 123 พอร์ต UDP 123 นี้ใช้ในการสื่อสารทั้งที่ต้นทางและปลายทาง ดังที่เราได้อธิบายไว้ก่อนหน้านี้ หากคุณเปิดใช้งาน «การโจมตีแบบบลาท» ในสวิตช์ และคุณมีอุปกรณ์ที่ใช้โปรโตคอล NTP ล้วนๆ มันจะปิดกั้นการรับส่งข้อมูลจาก NTP เท่านั้นโดยที่คุณไม่รู้ตัว

โปรโตคอล SNTP ทำงานร่วมกับโปรโตคอล UDP บนพอร์ต 123 การสื่อสาร ใช้พอร์ต UDP แบบสุ่มเป็นแหล่งที่มา และพอร์ต UDP 123 เป็นปลายทาง ตามมาตรฐาน SNTP พอร์ตต้นทางสามารถเป็นอะไรก็ได้ยกเว้น 0 เพื่อทำการมัลติเพล็กซ์แน่นอนเซิร์ฟเวอร์ตอบอย่างถูกต้องบนพอร์ตต้นทางที่ลูกค้าเลือกในการสื่อสารครั้งแรกเพื่อไม่ให้เกิดปัญหากับ NAT ที่พวกเขา มีเราเตอร์ วัตถุประสงค์ของการเปลี่ยนแปลงที่สำคัญนี้คือเพื่อให้สามารถระบุไคลเอ็นต์เฉพาะได้ เพื่อไม่ให้เกิดปัญหากับ NAT และเพื่อป้องกันไม่ให้สวิตช์ที่ Blat Attack เปิดใช้งานจากการบล็อกการสื่อสาร

ดังที่คุณได้เห็นแล้วว่า โปรโตคอล NTP และ SNTP เป็นโปรโตคอลพื้นฐานและสำคัญมากสำหรับระบบคอมพิวเตอร์ จำเป็นต้องมีการกำหนดค่าเวลาอย่างถูกต้อง ไม่ว่าจะในระบบปฏิบัติการเดสก์ท็อปหรือในอุปกรณ์เครือข่ายต่างๆ ที่คุณมี