خوش آموز درخت تو گر بار دانش بگیرد، به زیر آوری چرخ نیلوفری را


نحوه اسکن پورت های باز در لینوکس

نحوه اسکن پورت های باز در لینوکس
چه در حال عیب یابی مشکلات Connection شبکه یا پیکربندی فایروال باشید، یکی از اولین چیزهایی که باید بررسی کنید این است که چه پورت هایی در سیستم شما باز شده است.

نرم افزار سامانه مودیان راهکار
این مقاله چندین روش را توضیح می دهد تا پورت های باز سیستم لینوکس تان را بیابید.


listening port یک پورت شبکه ای است که یک اپلیکیشن بدان گوش می دهد شما می توانید با جستجو در stack شبکه با دستوراتی مانند ss، netstat یا lsof لیستی از listening port ها را در سیستم خود مشاهده کنید. هر listening port را می توان با استفاده از فایروال، باز یا بسته (فیلتر) کرد.
به طور کلی، پورت باز یک پورت شبکه است که بسته های دریافتی را از سیستم های ریموت می پذیرد.
به عنوان مثال، اگر از یک وب سرور استفاده می کنید که به پورت های 80 و 443 گوش می دهد و آن پورت ها روی فایروال شما باز هستند، هر کسی (به جز IP های مسدود شده) می تواند با استفاده از مرورگرش به وب سایت های هاست شده روی وب سرور شما دسترسی داشته باشد. در این حالت هر دو پورت 80 و 443 باز هستند.
پورت های باز ممکن است خطر امنیتی ایجاد کنند زیرا هر پورت باز می تواند توسط مهاجمان برای سوء استفاده از یک آسیب پذیری یا انجام هر نوع حمله دیگری استفاده شود. شما می بایست پورت های مورد نیاز برای کار اپلیکیشن تان را در معرض دید قرار داده و یا به عبارت دیگر آنها را باز کنید و سایر پورت های دیگری که بدان ها نیاز ندارید را ببندید.

Check Open Ports with nmap

Nmap یک ابزار قدرتمند برای اسکن شبکه است که می تواند هاست ها و شبکه های بزرگ را اسکن کند که عمدتا برای security audit ها و تست نفوذ استفاده می شود.
nmap باید اولین ابزار شما برای Port Scan باشد. علاوه بر اسکن پورت، nmap می‌تواند Mac Address، نوع سیستم عامل، نسخه‌های کرنل و موارد دیگر را نیز شناسایی کند.
دستور زیر مشخص می کند که کدام پورت ها TCP connection های شبکه را گوش می دهند:

sudo nmap -sT -p- 10.10.8.8

دستور sT- می گوید که پورت های TCP را اسکن کند و -p- همه 65535 پورت ها را اسکن کند. اگر -p- استفاده نشود، nmap فقط 1000 پورت رایج و پراستفاده را اسکن می کند.

Starting Nmap 7.60 ( https://nmap.org ) at 2019-07-09 23:10 CEST
Nmap scan report for 10.10.8.8
Host is up (0.0012s latency).
Not shown: 998 closed ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
MAC Address: 08:00:27:05:49:23 (Oracle VirtualBox virtual NIC)

Nmap done: 1 IP address (1 host up) scanned in 0.41 seconds

خروجی بالا نشان می دهد که تنها پورت های 22، 80 و 8069 روی سیستم هدف باز هستند.


برای اسکن پورت های UDP از sU- به جای sT- استفاده کنید


sudo nmap -sU -p- 10.10.8.8

Netcat یا nc یک ابزار خط فرمان است که با استفاده از پروتکل‌های TCP یا UDP می‌تواند داده‌ها را در اتصالات شبکه Read و Write کند. با netcat می توانید یک پورت یا محدوده ای از پورت ها را اسکن کنید.
به عنوان مثال برای اسکن پورت های TCP باز در یک دستگاه ریموت با آدرس آی پی 10.10.8.8 در محدوده 20-80، از دستور زیر استفاده می کنید:

nc -z -v 10.10.8.8 20-80

گزینه z- به nc می گوید که فقط پورت های باز را بدون ارسال هیچ داده ای اسکن کند.
خروجی چیزی شبیه به این خواهد بود:

nc: connect to 10.10.8.8 port 20 (tcp) failed: Connection refused
nc: connect to 10.10.8.8 port 21 (tcp) failed: Connection refused
Connection to 10.10.8.8 22 port [tcp/ssh] succeeded!
...
Connection to 10.10.8.8 80 port [tcp/http] succeeded!

اگر می‌خواهید فقط خطوط با پورت های باز روی صفحه نشان داده شوند، نتایج را با دستور grep فیلتر کنید.

nc -z -v 10.10.8.8 20-80 2>&1 | grep succeeded

Connection to 10.10.8.8 22 port [tcp/ssh] succeeded!
Connection to 10.10.8.8 80 port [tcp/http] succeeded!

برای اسکن پورت های UDP، گزینه u- را به دستور nc ارسال کنید:

nc -z -v -u 10.10.8.8 20-80 2>&1 | grep succeeded

البته که راه های دیگری هم برای این منظور وجود دارد که من در این پست فقط به دو مورد آن اشاره کردم. چنانچه شما دوستان عزیز راه حل های ساده تر و بهتر و حتی دقیق تری را دارید لطفا در قسمت ثبت نظرات آن را با ما و سایر دوستان تان به اشتراک قرار دهید.

نمایش دیدگاه ها (0 دیدگاه)

دیدگاه خود را ثبت کنید:

انتخاب تصویر ویرایش حذف
توجه! حداکثر حجم مجاز برای تصویر 500 کیلوبایت می باشد.


دسته بندی مطالب خوش آموز