خلاصه مقاله: پورت شبکه چیست و چه کاربردی دارد؟ در این راهنما با مفهوم شماره پورت، تفاوت TCP و UDP، بازههای پورت، سرویسهای پرکاربرد، روش بررسی پورتهای باز در ویندوز و لینوکس و اصول ایمنسازی سرویسهای شبکه آشنا میشوید.
پورت شبکه چیست؟
پورت شبکه یک شماره منطقی در ارتباطات مبتنی بر TCP/IP است که به سیستمعامل کمک میکند دادههای دریافتی را به سرویس یا برنامه مناسب تحویل دهد. آدرس IP دستگاه مقصد را مشخص میکند و شماره پورت، نقطه ارتباطی سرویس مورد نظر را مشخص میسازد.
برای مثال، یک سرور میتواند همزمان وبسایت، سرویس ایمیل و دسترسی مدیریتی داشته باشد. شماره پورت و پروتکل انتقال به سیستمعامل کمک میکنند ارتباط هر سرویس از ارتباطهای دیگر تفکیک شود. شماره پورت بهتنهایی هویت قطعی برنامه یا امنبودن ترافیک را ثابت نمیکند؛ تنظیمات واقعی سرویس نیز باید بررسی شوند.
فضای شماره پورت ۱۶ بیتی است و از ۰ تا ۶۵۵۳۵ را در بر میگیرد. پورت منطقی را نباید با درگاه فیزیکی شبکه روی سوئیچ، روتر یا کارت شبکه اشتباه گرفت.
تفاوت پورت TCP و UDP چیست؟
شماره پورت همراه با پروتکل انتقال معنا پیدا میکند. برای نمونه، TCP/53 و UDP/53 دو نقطه ارتباطی متفاوت هستند؛ بنابراین در تنظیم فایروال یا عیبیابی، مشخصکردن پروتکل اهمیت دارد.
| ویژگی | TCP | UDP |
|---|---|---|
| نحوه ارتباط | اتصالگرا؛ پیش از تبادل داده ارتباط برقرار میشود. | ارسال دیتاگرام بدون برقراری اتصال به شیوه TCP |
| تحویل داده | سازوکارهایی برای تحویل قابل اعتماد، ترتیب داده و ارسال مجدد دارد. | تحویل یا ترتیب رسیدن دیتاگرامها را تضمین نمیکند. |
| کاربردهای نمونه | HTTPS، SSH، انتقال فایل و بسیاری از ارتباطات پایگاه داده | DHCP، NTP، بسیاری از درخواستهای DNS و برخی ارتباطات بلادرنگ |
| نکته عیبیابی | وضعیت اتصال و پورت TCP قابل بررسی است. | قواعد UDP و پاسخ سرویس باید جداگانه بررسی شوند. |
هیچیک از این دو پروتکل برای همه کاربردها بهتر نیست؛ انتخاب به نیاز سرویس بستگی دارد. موفقیت یک آزمون TCP نیز دسترسیپذیری UDP روی همان شماره را ثابت نمیکند.
بازههای شماره پورت طبق IANA
مرجع رسمی IANA شماره پورتها را به سه بازه اصلی تقسیم میکند:
| بازه | عنوان | توضیح |
|---|---|---|
| ۰ تا ۱۰۲۳ | سیستمی یا شناختهشده | پورتهای دارای ثبت شناختهشده برای سرویسهای متداول |
| ۱۰۲۴ تا ۴۹۱۵۱ | ثبتشده یا کاربری | برای سرویسهایی که طبق رویههای IANA ثبت میشوند. |
| ۴۹۱۵۲ تا ۶۵۵۳۵ | پویا یا خصوصی | معمولاً برای پورتهای موقت ارتباطات خروجی استفاده میشوند. |
پورت صفر معمولاً برای ارائه یک سرویس شبکه استفاده نمیشود. همچنین شماره ثبتشده الزاماً نشاندهنده سرویس فعال نیست؛ یک برنامه میتواند روی پورت دیگری پیکربندی شده باشد. هنگام بررسی رخداد امنیتی، شماره پورت را در کنار فرایند، آدرس مبدأ، مقصد و نوع ترافیک ارزیابی کنید.
پورتهای پرکاربرد شبکه
جدول زیر شمارههای متداول و کاربردهای رایج آنها را نشان میدهد. پورتهای واقعی ممکن است با توجه به تنظیمات سازمان تغییر کرده باشند.
| پورت و پروتکل | سرویس | کاربرد و ملاحظه |
|---|---|---|
| ۲۰ و ۲۱ / TCP | FTP | پورت ۲۱ معمولاً برای کنترل و پورت ۲۰ در حالت فعال برای انتقال داده استفاده میشود. FTP معمولی رمزنگاری مناسبی ندارد. |
| ۲۲ / TCP | SSH | مدیریت امن سیستمها؛ دسترسی باید محدود و احراز هویت قوی باشد. |
| ۲۵ / TCP | SMTP | انتقال ایمیل بین سرورها؛ ارسال ایمیل کاربران ممکن است از پورتهای ۴۶۵ یا ۵۸۷ نیز استفاده کند. |
| ۵۳ / TCP و UDP | DNS | تبدیل نام دامنه به اطلاعات نامگذاری شبکه؛ هر دو پروتکل کاربرد دارند. |
| ۶۷ و ۶۸ / UDP | DHCPv4 | بهترتیب ارتباط سمت سرور و کلاینت برای تخصیص پیکربندی شبکه |
| ۸۰ / TCP | HTTP | ارتباط معمول وب بدون رمزنگاری انتقال |
| ۱۲۳ / UDP | NTP | همگامسازی ساعت سیستمها |
| ۱۴۳ و ۹۹۳ / TCP | IMAP و IMAPS | دریافت و همگامسازی ایمیل؛ پورت ۹۹۳ معمولاً برای IMAP با TLS استفاده میشود. |
| ۱۶۱ / UDP | SNMP | پایش و مدیریت تجهیزات شبکه؛ دسترسی را به سامانههای مدیریتی مجاز محدود کنید. |
| ۳۸۹ و ۶۳۶ / TCP | LDAP و LDAPS | دسترسی به سرویس دایرکتوری؛ تنظیمات حفاظت ارتباط باید بررسی شوند. |
| ۴۴۳ / TCP و UDP | HTTPS و HTTP/3 | HTTPS رایج از TCP و HTTP/3 از QUIC روی UDP استفاده میکند. |
| ۴۴۵ / TCP | SMB | اشتراک فایل و منابع ویندوزی؛ معمولاً نباید مستقیماً از اینترنت در دسترس باشد. |
| ۱۴۳۳ / TCP | Microsoft SQL Server | پورت پیشفرض رایج نمونههای متداول؛ تنظیم واقعی سرور را بررسی کنید. |
| ۳۳۰۶ / TCP | MySQL | ارتباط با پایگاه داده؛ دسترسی را به میزبانهای مورد نیاز محدود کنید. |
| ۳۳۸۹ / TCP و UDP | RDP | دسترسی از راه دور به دسکتاپ ویندوز؛ از انتشار مستقیم و ناایمن آن پرهیز کنید. |
| ۵۰۶۰ / TCP و UDP | SIP | سیگنالینگ در برخی سامانههای تلفنی تحت شبکه؛ تنظیمات به راهکار VoIP بستگی دارد. |
چگونه پورتهای باز را در ویندوز بررسی کنیم؟
نمایش پورتهای TCP در PowerShell
PowerShell را با سطح دسترسی مناسب باز کنید و این دستور را اجرا کنید:
Get-NetTCPConnection -State Listen | Sort-Object LocalPort | Format-Table LocalAddress,LocalPort,State,OwningProcess
این دستور TCPهایی را نشان میدهد که در وضعیت انتظار برای اتصال هستند. برای مشاهده نقطههای انتهایی UDP از دستور زیر استفاده کنید:
Get-NetUDPEndpoint | Sort-Object LocalPort | Format-Table LocalAddress,LocalPort,OwningProcess
ستون OwningProcess شناسه فرایند یا PID را نشان میدهد. برای شناسایی فرایند، عدد نمونه را با PID واقعی جایگزین کنید:
Get-Process -Id 1234
بررسی با خط فرمان ویندوز
در CMD دستور زیر اتصالها، وضعیت آنها و شناسه فرایند را نمایش میدهد:
netstat -ano
برای فیلترکردن اتصالهای TCP در وضعیت LISTENING:
netstat -ano | findstr LISTENING
برای آزمایش اتصال TCP به یک میزبان و پورت مشخص نیز میتوانید از PowerShell استفاده کنید:
Test-NetConnection example.com -Port 443
این آزمون فقط ارتباط TCP را بررسی میکند و بازبودن UDP را اثبات نمیکند.
چگونه پورتهای باز را در لینوکس بررسی کنیم؟
برای مشاهده سوکتهای TCP و UDP در حالت انتظار، در بسیاری از توزیعهای لینوکس میتوانید از دستور زیر استفاده کنید:
sudo ss -lntup
-l: سوکتهای در حال انتظار-n: نمایش عددی پورتها و آدرسها-t: سوکتهای TCP-u: سوکتهای UDP-p: نمایش فرایند مربوط، در صورت دسترسی کافی
اگر ابزار lsof نصب شده باشد، برای نمایش سوکتهای TCP در حالت Listening میتوانید اجرا کنید:
sudo lsof -i -P -n | grep LISTEN
برای آزمایش اتصال TCP به میزبان راه دور، در صورت نصب بودن netcat:
nc -vz example.com 443
اگر پورت محلی در وضعیت انتظار است ولی اتصال از راه دور برقرار نمیشود، آدرس اتصال سرویس، فایروال سیستمعامل، فایروال مرزی، NAT، مسیریابی و قواعد امنیتی محیط ابری را نیز بررسی کنید.
چگونه امنیت پورتهای شبکه را افزایش دهیم؟
- فهرستبرداری کنید: پورتهای در حال انتظار، سرویسها و فرایندهای مربوط را ثبت و مستند کنید.
- حداقل دسترسی را رعایت کنید: فقط سرویسهای مورد نیاز را فعال نگه دارید و دسترسی را به مبدأهای مجاز محدود کنید.
- فایروال را درست پیکربندی کنید: قواعد ورودی و خروجی میزبان و شبکه را بازبینی کنید. راهنمای فایروال شبکه را نیز ببینید.
- دسترسی مدیریتی را محدود کنید: تا حد امکان SSH و RDP را به VPN یا شبکه مدیریت محدود کنید و احراز هویت قوی به کار ببرید.
- سرویسهای داخلی را منتشر نکنید: پورتهای SMB و پایگاه داده را بیدلیل در اینترنت قابل دسترسی قرار ندهید.
- پایش مستمر داشته باشید: لاگها و تغییرات غیرمنتظره سرویسها را بررسی کنید. مقاله مانیتورینگ شبکه برای مطالعه بیشتر مناسب است.
- سامانهها را بهروز نگه دارید: اصلاحیههای امنیتی را نصب کنید و سرویسهای بدون استفاده را غیرفعال سازید.
- فقط شماره پورت را تغییر ندهید: تغییر شماره پیشفرض بهتنهایی کنترل امنیتی کافی نیست و جایگزین فایروال، وصله امنیتی و احراز هویت نمیشود.
چرا پورت باز است اما اتصال برقرار نمیشود؟
- بررسی کنید سرویس روی آدرس شبکه مناسب گوش میدهد؛ گوشدادن صرفاً روی 127.0.0.1 معمولاً ارتباط مستقیم از دستگاه دیگر را ممکن نمیکند.
- مطمئن شوید سرویس روی شماره پورت و پروتکل مورد انتظار فعال است.
- قواعد فایروال سیستمعامل، شبکه مرزی، NAT و سرویس ابری را بررسی کنید.
- درستی IP، نام دامنه، مسیر شبکه و محدودیتهای دسترسی را کنترل کنید.
- از آزمون متناسب با پروتکل استفاده کنید؛ آزمون TCP نتیجهای درباره در دسترس بودن UDP نمیدهد.
برای پیگیری مرحلهبهمرحله مشکل، راهنمای عیبیابی شبکه نیز مفید است.
سؤالات متداول درباره پورت شبکه
آیا هر پورت باز به معنی خطر امنیتی است؟
خیر. پورت باز ممکن است برای عملکرد سرویس ضروری باشد. ریسک به نوع سرویس، آسیبپذیری، سطح دسترسی و محدودیتهای شبکه بستگی دارد؛ سرویس غیرضروری را غیرفعال یا دسترسی آن را محدود کنید.
آیا یک شماره پورت فقط متعلق به یک برنامه است؟
خیر. فضاهای TCP و UDP جداگانهاند و یک شماره ممکن است در هر دو پروتکل استفاده شود. تعارض برنامهها نیز به آدرس، پروتکل و نحوه اتصال سوکت بستگی دارد.
آیا میتوان سرویس را فقط از روی شماره پورت تشخیص داد؟
خیر. شمارههای رایج سرنخ هستند، نه اثبات قطعی. نام فرایند، پیکربندی سرویس و شواهد ترافیکی را هم بررسی کنید.
تفاوت پورت Listening با پورت در دسترس از اینترنت چیست؟
Listening بودن نشان میدهد برنامه روی نقطه انتهایی محلی منتظر ارتباط است. دسترسی از اینترنت به آدرس اتصال، فایروال، مسیریابی، NAT و سیاستهای شبکه نیز وابسته است.
برای بررسی UDP از چه دستوری استفاده کنیم؟
در ویندوز Get-NetUDPEndpoint و در لینوکس ss -lunp اطلاعات نقطههای انتهایی UDP را نشان میدهند. برای بررسی دسترسی از راه دور به ابزار و آزمون سازگار با UDP نیاز است.
منابع و مستندات رسمی
- رجیستری رسمی نام سرویسها و شماره پورتهای IANA
- مستندات Microsoft درباره Get-NetTCPConnection
- مستندات Microsoft درباره Get-NetUDPEndpoint
- راهنمای دستور ss در لینوکس
دریافت مشاوره درباره امنیت و مدیریت شبکه
برای بررسی پورتهای باز، عیبیابی ارتباطات، تنظیم فایروال و افزایش امنیت زیرساخت سازمانی، از خدمات تخصصی واریان شبکه گستر استفاده کنید.