כיצד לבדוק אם יציאה נמצאת בשימוש ב- Linux

How Check If Port Is Use Linux



אם אתה מרקע מדעי המחשב או אפילו קצת בקיא ברשת, אולי שמעת על מחסנית TCP/IP. מחסנית TCP/IC מורכבת מחמש שכבות שונות, כלומר השכבה הפיזית, שכבת קישור הנתונים, שכבת הרשת, שכבת התחבורה ושכבת היישומים. לכל שכבה של מחסנית TCP/IP יש אמצעי תקשורת שונים, וכל התקשורת בתוך שכבת התחבורה נעשית באמצעות מספרי יציאה.

מספר יציאה משמש לזיהוי ייחודי של התקן לצד כתובת ה- IP. תקשורת בין תהליכים נפוצה בעת שימוש במערכות מחשב. כדי להקל על תקשורת זו, מערכות ההפעלה שומרות על יציאות מסוימות פתוחות, בהתאם לגוף שאיתו המשתמש רוצה לתקשר. אז, בכל מופע יחיד, מספר יציאות יכולות להיות פתוחות במערכת שלך.







כאשר אנו אומרים שיציאה נמצאת בשימוש, אנו מתכוונים בעצם ליציאה פתוחה, או, במילים אחרות, ליציאה הנמצאת במצב האזנה (מוכן לקבל חיבורים). ישנן מספר דרכים לקבוע את היציאות הפתוחות במערכת הפעלה. מאמר זה מציג לך ארבע שיטות אפשריות לשימוש כדי לבדוק אם יציאה נמצאת בשימוש ב- Linux.



הערה: כל השיטות המוצגות במאמר זה בוצעו ב- Linux Mint 20.



כדי לקבוע אם יציאה נמצאת בשימוש ב- Linux Mint 20, ניתן להשתמש בכל אחת מארבע השיטות הבאות.





שיטה 1: שימוש בפקודה lsof

ה lsof ניתן להשתמש בפקודה כדי לרשום את כל היציאות הנמצאות בשימוש במערכת שלך באופן הבא:

ראשית, הפעל את מסוף Linux Mint 20 על ידי לחיצה על סמל קיצור הדרך שלו. הטרמינל מוצג בתמונה למטה:



לאחר מכן, יהיה עליך להתקין את lsof פקודה אם מעולם לא השתמשת בה בעבר. לשם כך, בצע את הפקודה הבאה במסוף:

$סודו apt-get להתקיןlsof

לאחר ההתקנה המוצלחת של הפקודה, תראה את הפלט הבא במסוף:

לאחר התקנת פקודה זו, ניתן להשתמש בה לשאילתת כל יציאות הנמצאות בשימוש ב- Linux. כדי לבדוק אם יש יציאות פתוחות במערכת שלך, בצע את הפקודה הבאה במסוף שלך:

$סודוlsof –i

בפלט של פקודה זו, היציאות המופיעות במצב LISTEN הן אלה שנמצאות בשימוש, כפי שמוצג בתמונה למטה:

שיטה 2: שימוש בפקודה ss

ה ss ניתן להשתמש בפקודה כדי לקבוע כל יציאות TCP ו- UDP פתוחות במערכת שלך באופן הבא:

לשאילתת יציאות TCP ו- UDP הנמצאות בשימוש, בצע את הפקודה הבאה במסוף:

$ss –lntup

בפלט של פקודה זו, היציאות (הן TCP והן UDP) הנמצאות בשימוש הן בעלות מצב LISTEN, בעוד שכל הנמלים האחרות מציגות את המצב UNCONN.

שיטה 3: שימוש בפקודה netstat

ה netstat ניתן להשתמש בפקודה גם לקביעת כל יציאות TCP ו- UDP פתוחות במערכת שלך באופן הבא:

לשאילתת יציאות TCP ו- UDP הנמצאות בשימוש, הפעל את הפקודה הבאה במסוף:

$סודו netstat–פנלטו

אם תנסה להריץ פקודה זו ללא מילת המפתח sudo, לא תוכל לגשת לכל היציאות. אם אתה מחובר עם חשבון משתמש הבסיס, תוכל לדלג על מילת מפתח זו.

בעת הפעלת פקודה זו, תוכל לראות שכל היציאות הנמצאות בשימוש נמצאות במצב LISTEN, בעוד שמצבי כל היציאות האחרות אינן זמינות, כפי שמוצג בתמונה למטה:

שיטה 4: שימוש בפקודה nmap

ה nmap פקודה היא כלי עזר נוסף שניתן להשתמש בו כדי לקבוע את יציאות TCP ו- UDP הנמצאות בשימוש באופן הבא:

אם ה nmap השירות עדיין לא מותקן במערכת Linux Mint 20 שלך, מכיוון שהוא אינו מותקן כברירת מחדל, ייתכן שיהיה עליך להתקין אותו ידנית. לשם כך, בצע את הפקודה הבאה:

$סודומַתְאִיםלהתקין nmap

לאחר שהתקנת בהצלחה את nmap השירות במערכת Linux Mint 20 שלך, הטרמינל שלך יחזיר לך את הפקד כך שתוכל לבצע את הפקודה הבאה, כפי שמוצג בתמונה למטה:

לאחר התקנת כלי שירות זה, שאול הן לגבי יציאות TCP והן UDP הנמצאות בשימוש במערכת שלך על ידי הפעלת הפקודה הבאה במסוף:

$סודו nmap–N –PN –sT –sU –p- localhost

לאחר שתבצע את הפקודה הזו, מצב כל היציאות הנמצאות בשימוש יהיה פתוח, כפי שמוצג בפלט בתמונה למטה:

סיכום

מאמר זה הראה לך ארבע שיטות שונות לבדיקת האם יציאה נמצאת בשימוש במערכת הלינוקס שלך. כל השיטות הללו נבדקו עם Linux Mint 20, עם זאת, ניתן להריץ גם את הפקודות המוצגות בשיטות אלה עם כל הפצה אחרת של Linux, עם וריאציות קלות. כל אחת מהפקודות המשמשות בשיטות אלה אורכת מספר שניות בלבד לביצוע. לכן, יש לך זמן לנסות כל אחת מארבע השיטות כדי לראות איזו מהן מתאימה לך ביותר.