Anonim

'ฉันใหม่กับ Linux และได้รับคำสั่งให้ตรวจสอบพอร์ตที่เปิดอยู่บนกล่อง Linux ของฉันเพื่อตรวจสอบความปลอดภัย นั่นหมายความว่าอย่างไรและฉันควรทำอย่างไร ' นี่เป็นคำถามที่เราได้รับจากผู้อ่าน TechJunkie ในสัปดาห์นี้และฉันคิดว่ามันน่าสนใจพอที่จะมีคนอยากรู้มากกว่านี้

ดูบทความของเราวิธีติดตั้ง Linux Virtual Machine ด้วย VirtualBox

เนื่องจากพอร์ตเป็นส่วนประกอบสำคัญในการเชื่อมต่อคอมพิวเตอร์กับอินเทอร์เน็ตจึงเป็นหัวข้อที่ครอบคลุม

พอร์ตคืออะไร

พอร์ตนั้นเป็นแบบฟิสิคัลหรือเสมือน ฟิสิคัลพอร์ตคือพอร์ต Ethernet ของคุณบนคอมพิวเตอร์หรือพอร์ต LAN หรือ WAN บนเราเตอร์ของคุณ ในบริบทของคำถามเรากำลังพูดถึงพอร์ตเสมือนบนคอมพิวเตอร์ที่แตกต่างจากพอร์ตทางกายภาพเหล่านั้น

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

ตัวอย่างเช่นระบบปฏิบัติการรู้ว่าการลงจอดที่พอร์ต 80 จะเป็น HTTP หรือปริมาณการใช้งานเว็บพอร์ต 443 สำหรับ HTTPS หรือการรับส่งข้อมูลทางเว็บที่ปลอดภัย สิ่งที่เชื่อมโยงไปถึงที่พอร์ต 25 จะเป็น SMTP หรือปริมาณการใช้อีเมลเป็นต้น แม้ว่าจะมีบริการเว็บไม่มากนัก แต่ก็มีการมอบหมายพอร์ตมากกว่าหนึ่งพันครั้ง

ตัวอย่างเช่นเบราว์เซอร์ของคุณเชื่อมต่อกับ TechJunkie ผ่านพอร์ต 443 เพื่อให้เว็บเซิร์ฟเวอร์รู้ว่าคุณกำลังขอสำเนา HTTPS ของหน้าเว็บ ถ้าฉันต้องการอัปโหลดไฟล์ไปยังเซิร์ฟเวอร์ฉันจะใช้พอร์ต FTP 989 หรือ 990 สำหรับ FTP ที่ปลอดภัย เมื่อคำขอมาถึงที่พอร์ตเซิร์ฟเวอร์จะทราบปริมาณการใช้งานโดยอัตโนมัติและกำหนดเส้นทางไปยังบริการที่ถูกต้อง

เราเตอร์ยังมีพอร์ต แต่ก็แตกต่างกันและอยู่นอกขอบเขตของบทความนี้

เปิดและปิดพอร์ต

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

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

ตรวจสอบพอร์ตใน Linux

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

คำสั่ง Netstat คือสิ่งที่เราใช้เพื่อตรวจสอบพอร์ตและบริการเครือข่ายอื่น ๆ

  • พิมพ์ 'netstat -atu' ลงในเทอร์มินัลแล้วกด Enter นี่จะแสดงซ็อกเก็ตทั้งหมดการเชื่อมต่อ TCP และ UDP ที่ใช้งานอยู่ใน Linux
  • พิมพ์ 'netstat –listen' หรือ 'netstat -l' แล้วกด Enter เพื่อแสดงรายการพอร์ตการฟังบนคอมพิวเตอร์ของคุณ
  • พิมพ์ 'netstat -vatn' แล้วกด Enter เพื่อแสดงรายการการเชื่อมต่อ TCP ที่มีอยู่จากคอมพิวเตอร์ของคุณ
  • พิมพ์ 'netstat -vaun' แล้วกด Enter เพื่อแสดงรายการการเชื่อมต่อ UDP ที่มีอยู่
  • พิมพ์ 'netstat -ltup' เพื่อแสดงการเชื่อมต่อทั้งหมดพร้อมกับโปรแกรมฟังแต่ละพอร์ต
  • พิมพ์ 'netstat -lntup' แล้วกด Enter เพื่อแสดงที่อยู่ IP พร้อมกับหมายเลขพอร์ต

คำสั่งเหล่านั้นทำสิ่งเดียวกัน แต่ให้ข้อมูลที่แตกต่างกันตามความต้องการของคุณ แต่ละคนจะตอบคำถามเดิมว่า

ปิดพอร์ต

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

ผู้ใช้ขั้นสูงสามารถเล่นกับ IPTables ใน distros Linux บางตัว แต่มันซับซ้อนเกินไปสำหรับฉัน คำแนะนำนี้จะแนะนำคุณเกี่ยวกับเรื่องนี้

คุณต้องการตรวจสอบพอร์ตหรือไม่?

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

วิธีการตรวจสอบพอร์ตที่เปิดใน linux