آموزش بررسی پورتهای باز در ویندوز با CMD؛ شناسایی Open Port در چند دقیقه

اگر میخواهید امنیت سیستم خود را افزایش دهید یا دلیل برخی مشکلات شبکه و اینترنت را پیدا کنید، بررسی پورتهای باز (Open Ports) یکی از اولین کارهایی است که باید انجام دهید. هر پورت باز در ویندوز مانند یک درگاه ارتباطی عمل میکند که برنامهها، سرویسها و حتی سیستمهای دیگر از طریق آن با رایانه شما ارتباط برقرار میکنند.
وجود پورتهای باز برای اجرای بسیاری از سرویسها ضروری است؛ برای مثال وبسرورها، بازیهای آنلاین، نرمافزارهای ریموت و بسیاری از برنامههای شبکه بدون آنها قادر به فعالیت نیستند. اما اگر پورتی بدون دلیل باز باشد یا توسط برنامهای ناشناس استفاده شود، میتواند راهی برای نفوذ هکرها، حملات باجافزاری (Ransomware)، سرقت اطلاعات و اجرای کدهای مخرب باشد.
خوشبختانه برای مشاهده پورتهای باز نیازی به نصب هیچ نرمافزار جانبی ندارید. تنها با استفاده از Command Prompt (CMD) و چند دستور ساده میتوانید تمامی پورتهای در حال استفاده را مشاهده کرده، برنامه استفادهکننده از هر پورت را شناسایی کنید و وضعیت امنیتی سیستم خود را بررسی نمایید.
در این آموزش به صورت قدمبهقدم یاد میگیرید:
- ✅ مشاهده تمامی پورتهای باز در ویندوز
- ✅ بررسی برنامه یا پردازش استفادهکننده از هر پورت
- ✅ جستجوی یک پورت خاص
- ✅ افزایش امنیت سیستم با شناسایی سرویسهای غیرضروری
🔍 پورت باز (Open Port) چیست؟
هر دستگاه متصل به شبکه دارای هزاران پورت منطقی است که برای ارسال و دریافت اطلاعات مورد استفاده قرار میگیرند. زمانی که یک برنامه منتظر دریافت اطلاعات باشد، اصطلاحاً آن پورت در حالت Listening یا “در حال گوش دادن” قرار میگیرد.
برای مثال:
| شماره پورت | کاربرد |
|---|---|
| 80 | سرویس HTTP |
| 443 | ارتباط امن HTTPS |
| 3389 | Remote Desktop |
| 445 | اشتراک فایل ویندوز (SMB) |
| 135 | سرویسهای RPC ویندوز |
هرچه تعداد پورتهای غیرضروری باز کمتر باشد، امنیت سیستم نیز بیشتر خواهد بود.
🛡️ چرا باید پورتهای باز ویندوز را بررسی کنیم؟
بررسی دورهای Open Portها مزایای زیادی دارد که مهمترین آنها عبارتاند از:
- افزایش امنیت سیستم در برابر حملات سایبری
- شناسایی سرویسهای ناشناس و مشکوک
- رفع مشکلات اتصال برنامهها
- بررسی علت باز نشدن بازیهای آنلاین یا سرورها
- مدیریت بهتر تنظیمات فایروال ویندوز
- کاهش احتمال نفوذ از طریق سرویسهای قدیمی
اگر سرور، کامپیوتر شخصی یا حتی لپتاپ خود را به اینترنت متصل میکنید، بررسی پورتهای باز یکی از مهمترین اقدامات امنیتی محسوب میشود.
⚙️ قبل از بررسی پورتها، فایروال ویندوز را بررسی کنید
قبل از اجرای دستورات CMD بهتر است مطمئن شوید که Windows Defender Firewall به درستی پیکربندی شده است.
در صورتی که متوجه شدید پورتی بدون دلیل باز است، میتوانید یکی از اقدامات زیر را انجام دهید:
- غیرفعال کردن سرویس مربوطه
- حذف برنامهای که پورت را باز کرده است
- مسدود کردن پورت از طریق Windows Firewall
- تغییر تنظیمات نرمافزار مربوطه
این کار باعث میشود سطح امنیت سیستم تا حد زیادی افزایش پیدا کند.
💻 مرحله اول: اجرای Command Prompt در ویندوز
برای مشاهده پورتهای باز ابتدا باید CMD را اجرا کنید.
مراحل انجام کار:
- کلیدهای Win + R را همزمان فشار دهید.
- عبارت cmd را تایپ کنید.
- کلید Enter را بزنید.

نکته: برای مشاهده برخی اطلاعات بهتر است CMD را با گزینه Run as Administrator اجرا کنید.
📡 مرحله دوم: مشاهده تمامی پورتهای باز با دستور Netstat
یکی از کاربردیترین ابزارهای داخلی ویندوز برای بررسی وضعیت شبکه، دستور Netstat است.
این دستور اطلاعات کاملی از جمله موارد زیر را نمایش میدهد:
- تمامی ارتباطهای فعال
- پورتهای Listening
- نوع پروتکل (TCP یا UDP)
- آدرسهای محلی و راه دور
- وضعیت هر اتصال
برای مشاهده پورتهای باز دستور زیر را اجرا کنید:
netstat -an | find "LISTEN"

نمونه خروجی:
TCP 0.0.0.0:135 0.0.0.0:0 LISTENING
TCP 0.0.0.0:445 0.0.0.0:0 LISTENING
TCP 0.0.0.0:902 0.0.0.0:0 LISTENING

هر بخش از خروجی چه معنایی دارد؟
| بخش | توضیح |
|---|---|
| TCP | نوع پروتکل ارتباطی |
| 0.0.0.0 | گوش دادن روی تمام کارتهای شبکه |
| 135 | شماره پورت |
| LISTENING | پورت آماده دریافت اتصال است |
اگر در ستون اول مقدار 0.0.0.0 را مشاهده کردید، یعنی آن پورت روی تمام رابطهای شبکه فعال بوده و آماده برقراری ارتباط است.
🧩 مرحله سوم: شناسایی برنامه یا پردازش استفادهکننده از هر پورت
پس از اینکه لیست پورتهای باز را مشاهده کردید، احتمالاً این سؤال برایتان پیش میآید که کدام برنامه این پورت را باز کرده است؟
برای پاسخ به این سؤال میتوانید از نسخه کاملتر دستور Netstat استفاده کنید. این دستور علاوه بر نمایش پورتها، شناسه پردازش یا PID (Process ID) را نیز نمایش میدهد تا بتوانید برنامه مربوطه را شناسایی کنید.
دستور زیر را در CMD اجرا کنید:
netstat -ano | find "LISTEN"

نمونه خروجی:
TCP 0.0.0.0:135 0.0.0.0:0 LISTENING 1160
TCP 0.0.0.0:445 0.0.0.0:0 LISTENING 4
TCP 0.0.0.0:3389 0.0.0.0:0 LISTENING 1088

در این خروجی، ستون آخر همان PID است که مشخص میکند هر پورت توسط کدام پردازش در حال استفاده است.
لینک پیشنهادی: شما همچنین می توانید برای آشنایی با روش های فرمت کردن هارد با cmd، مقاله “آموزش فرمت کردن هارد با CMD در ویندوز | فرمت HDD، SSD و فلش با Command Prompt” مطالعه نمایید.
📌 PID چیست؟
PID یا Process ID یک شناسه منحصربهفرد است که ویندوز به هر پردازش اختصاص میدهد. با استفاده از این شناسه میتوانید بهراحتی متوجه شوید چه برنامه یا سرویسی مسئول باز بودن یک پورت است.
این قابلیت زمانی بسیار کاربردی است که:
- برنامهای ناشناس در حال استفاده از شبکه باشد.
- بخواهید علت اشغال شدن یک پورت را پیدا کنید.
- قصد داشته باشید یک سرویس غیرضروری را غیرفعال کنید.
- در حال عیبیابی نرمافزارهای شبکه یا سرور باشید.
🖥️ چگونه PID را در Task Manager پیدا کنیم؟
بعد از مشاهده PID کافی است مراحل زیر را انجام دهید:
- کلیدهای Ctrl + Shift + Esc را فشار دهید.
- وارد Task Manager شوید.
- روی تب Details کلیک کنید.
- ستون PID را پیدا کنید.
اگر ستون PID نمایش داده نمیشود:
- روی عنوان ستونها راست کلیک کنید.
- گزینه Select Columns را انتخاب کنید.
- تیک PID (Process Identifier) را فعال نمایید.
حالا کافی است عدد PID نمایش دادهشده در CMD را پیدا کنید تا نام برنامه یا سرویس مشخص شود.
⚡ مشاهده نام برنامه با استفاده از دستور Tasklist
اگر نمیخواهید از Task Manager استفاده کنید، CMD این امکان را نیز در اختیار شما قرار میدهد.
برای مثال اگر PID برابر با 1160 باشد، دستور زیر را اجرا کنید:
tasklist /FI "PID eq 1160"
نمونه خروجی:
Image Name PID
svchost.exe 1160
به این ترتیب مستقیماً متوجه خواهید شد که کدام فایل اجرایی از آن پورت استفاده میکند.
🎯 مرحله چهارم: بررسی باز بودن یک پورت خاص
گاهی نیازی به مشاهده تمام پورتهای سیستم ندارید و فقط میخواهید وضعیت یک شماره پورت مشخص را بررسی کنید.
در این شرایط کافی است شماره پورت موردنظر را در دستور Netstat وارد کنید.
به عنوان مثال برای بررسی پورت 60 دستور زیر را اجرا کنید:
netstat -an | find ":60"

اگر پورت باز باشد، خروجی مشابه زیر نمایش داده میشود:
TCP 0.0.0.0:60 0.0.0.0:0 LISTENING

در صورتی که هیچ نتیجهای نمایش داده نشود، یعنی آن پورت در حال حاضر فعال نیست یا برنامهای از آن استفاده نمیکند.
لینک پیشنهادی: شما همچنین می توانید برای آشنایی با روش های فشرده سازی و استخراج فایل ها با استفاده از cmd، مقاله “آموزش فشردهسازی و استخراج فایلها و پوشهها با CMD در ویندوز (بدون نصب نرمافزار)” مطالعه نمایید.
🔎 بررسی چند پورت مختلف
به همین روش میتوانید وضعیت هر پورتی را بررسی کنید.
چند نمونه:
بررسی پورت 80:
netstat -an | find ":80"
بررسی پورت 443:
netstat -an | find ":443"
بررسی پورت Remote Desktop:
netstat -an | find ":3389"
بررسی پورت اشتراک فایل ویندوز:
netstat -an | find ":445"
📊 پرکاربردترین پورتهای ویندوز
| شماره پورت | سرویس | توضیحات |
|---|---|---|
| 21 | FTP | انتقال فایل |
| 22 | SSH | مدیریت امن سرورها |
| 25 | SMTP | ارسال ایمیل |
| 53 | DNS | تبدیل نام دامنه به IP |
| 80 | HTTP | صفحات وب |
| 110 | POP3 | دریافت ایمیل |
| 143 | IMAP | همگامسازی ایمیل |
| 443 | HTTPS | ارتباط امن وب |
| 445 | SMB | اشتراک فایل در ویندوز |
| 3389 | Remote Desktop | اتصال از راه دور |
💡 نکته مهم
باز بودن یک پورت همیشه به معنای وجود مشکل امنیتی نیست. بسیاری از سرویسهای ویندوز و نرمافزارهای معتبر برای عملکرد صحیح خود به پورتهای مشخصی نیاز دارند. با این حال، اگر پورتی ناشناس یا غیرضروری را مشاهده کردید، بهتر است ابتدا برنامه مربوط به آن را شناسایی کرده و در صورت عدم نیاز، آن را غیرفعال یا از طریق فایروال مسدود کنید.
🔒 چگونه پورتهای غیرضروری را ببندیم؟
اگر پس از بررسی متوجه شدید پورتی بدون دلیل در حال استفاده است، بهتر است ابتدا برنامه یا سرویس مربوط به آن را شناسایی کنید. سپس در صورت عدم نیاز، یکی از روشهای زیر را برای بستن آن به کار ببرید.
روش اول: غیرفعال کردن سرویس مربوطه
اگر پورت توسط یکی از سرویسهای ویندوز باز شده باشد:
- کلیدهای Win + R را فشار دهید.
- عبارت services.msc را وارد کرده و Enter بزنید.
- سرویس موردنظر را پیدا کنید.
- روی آن دوبار کلیک کنید.
- گزینه Startup Type را روی Disabled یا Manual قرار دهید.
- روی Stop کلیک کنید.
توجه: قبل از غیرفعال کردن هر سرویس، از کاربرد آن مطمئن شوید؛ زیرا برخی سرویسها برای عملکرد صحیح ویندوز ضروری هستند.
🛡️ روش دوم: مسدود کردن پورت از طریق Windows Defender Firewall
اگر نمیخواهید سرویس را غیرفعال کنید، میتوانید تنها دسترسی به آن پورت را مسدود نمایید.
مراحل انجام کار:
- وارد Windows Defender Firewall with Advanced Security شوید.
- روی Inbound Rules کلیک کنید.
- گزینه New Rule را انتخاب نمایید.
- نوع قانون را روی Port قرار دهید.
- شماره پورت موردنظر را وارد کنید.
- گزینه Block the Connection را انتخاب کنید.
- تنظیمات را ذخیره کنید.
این روش باعث میشود ارتباط از طریق آن پورت مسدود شود، بدون اینکه سرویس اصلی حذف یا غیرفعال گردد.
⚠️ رایجترین خطاها هنگام بررسی پورتها
در زمان استفاده از دستورات CMD ممکن است با برخی مشکلات روبهرو شوید. در جدول زیر متداولترین آنها را مشاهده میکنید.
| مشکل | علت احتمالی | راهکار |
|---|---|---|
| هیچ پورتی نمایش داده نمیشود | دستور اشتباه یا نبود اتصال فعال | دستور را دوباره بررسی کنید. |
| Access Denied | CMD با دسترسی Administrator اجرا نشده است | CMD را با Run as Administrator اجرا کنید. |
| PID پیدا نمیشود | پردازش خاتمه یافته است | دستور را دوباره اجرا کنید. |
| پورت همیشه باز است | سرویس ویندوز یا نرمافزار دائماً فعال است | سرویس مربوطه را بررسی کنید. |
| برنامه از پورت استفاده میکند اما دیده نمیشود | نرمافزار امنیتی یا آنتیویروس | تنظیمات امنیتی سیستم را بررسی کنید. |
💡 نکاتی برای افزایش امنیت پورتهای ویندوز
برای کاهش احتمال نفوذ و افزایش امنیت سیستم، رعایت نکات زیر توصیه میشود:
- ✅ فقط سرویسهای موردنیاز را فعال نگه دارید.
- ✅ برنامههای ناشناس را حذف کنید.
- ✅ ویندوز و درایورها را همیشه بهروز نگه دارید.
- ✅ از Windows Defender Firewall یا فایروال معتبر استفاده کنید.
- ✅ سیستم را بهطور دورهای با دستور Netstat بررسی کنید.
- ✅ از آنتیویروس معتبر استفاده کنید.
- ✅ در صورت عدم نیاز، سرویسهایی مانند Remote Desktop را غیرفعال کنید.
- ✅ برنامههایی که به اینترنت دسترسی غیرضروری دارند را محدود کنید.
📌 جمعبندی
بررسی پورتهای باز یکی از سادهترین و در عین حال مهمترین اقدامات برای افزایش امنیت ویندوز است. خوشبختانه با استفاده از Command Prompt و دستور Netstat میتوانید بدون نصب هیچ نرمافزار اضافی، تمامی پورتهای باز، پردازشهای فعال و برنامههای استفادهکننده از آنها را شناسایی کنید.
اگر متوجه شدید پورتی غیرضروری باز است، ابتدا برنامه یا سرویس مربوطه را بررسی کرده و سپس در صورت نیاز آن را غیرفعال یا از طریق فایروال مسدود کنید. انجام این بررسی بهصورت دورهای میتواند از بسیاری از مشکلات امنیتی و نفوذهای احتمالی جلوگیری کند.
❓ سوالات متداول (FAQ)
❓ چگونه پورتهای باز ویندوز را با CMD مشاهده کنیم؟
کافی است Command Prompt را باز کرده و دستور زیر را اجرا کنید:
netstat -an | find "LISTEN"
❓ چگونه بفهمیم یک پورت متعلق به کدام برنامه است؟
از دستور زیر استفاده کنید:
netstat -ano | find "LISTEN"
سپس با استفاده از PID در Task Manager یا دستور tasklist برنامه مربوطه را پیدا کنید.
❓ آیا باز بودن یک پورت همیشه خطرناک است؟
خیر. بسیاری از پورتها برای عملکرد صحیح ویندوز و نرمافزارهای مختلف ضروری هستند. تنها پورتهایی که توسط سرویسهای ناشناس یا غیرضروری باز شدهاند، میتوانند تهدید امنیتی باشند.
❓ بهترین دستور CMD برای بررسی پورتهای باز چیست؟
دستور Netstat بهترین ابزار داخلی ویندوز برای مشاهده وضعیت پورتها و ارتباطهای شبکه محسوب میشود.
❓ آیا بدون نصب نرمافزار میتوان پورتهای باز را مشاهده کرد؟
بله. تمامی نسخههای ویندوز دارای ابزار Command Prompt و دستور Netstat هستند و نیازی به نصب نرمافزار جانبی ندارید.




