پورت های رایج شبکه و سرور و کاربرد هر کدام

پورت‌های رایج شبکه و سرور را هر مدیر باید بشناسد. پورت شماره‌ای بین ۰ تا ۶۵۵۳۵ است که مشخص می‌کند داده‌های ورودی به کدام برنامه یا سرویس روی یک دستگاه برسد. IP آدرس دستگاه است و پورت آدرس سرویس روی آن: وب‌سرور روی ۸۰ و ۴۴۳ گوش می‌دهد، SSH روی ۲۲ و میل سرور روی چند پورت دیگر. مدیر شبکه و سرور باید پورت‌های رایج را بشناسد، چون هم برای باز کردن سرویس لازم‌اند و هم هر پورت باز یک راه ورود احتمالی است.

پورت‌ها در سه گروه قرار می‌گیرند. پورت‌های شناخته‌شده از ۰ تا ۱۰۲۳، مثل ۲۲ و ۸۰ و ۴۴۳. پورت‌های ثبت‌شده از ۱۰۲۴ تا ۴۹۱۵۱ که نرم‌افزارها برای سرویس‌شان رزرو می‌کنند، مثل ۳۳۰۶ برای MySQL. و پورت‌های موقت از ۴۹۱۵۲ به بالا که سیستم‌عامل برای اتصال‌های خروجی کلاینت‌ها استفاده می‌کند. این بازه‌بندی طبق IANA است، ولی بعضی سیستم‌عامل‌ها بازه موقت را متفاوت می‌گیرند.

تفاوت TCP و UDP

هر پورت برای یک پروتکل حمل‌ونقل تعریف می‌شود. TCP اتصال برقرار می‌کند و رسیدن داده را بررسی می‌کند؛ برای وب، SSH، ایمیل و دیتابیس استفاده می‌شود. UDP بدون برقراری اتصال و سریع‌تر است ولی رسیدن داده را تأیید نمی‌کند؛ برای DNS، تماس صوتی، DHCP و WireGuard به کار می‌رود. پورت ۵۳ TCP و پورت ۵۳ UDP دو چیز جدا هستند و فایروال باید برای هر کدام قانون داشته باشد.

جدول پورت‌های رایج سرور و شبکه

پورتپروتکلسرویسنکته
22TCPSSHورود امن به سرور؛ ترجیحاً محدود به IP مدیریتی
23TCPTelnetبدون رمزنگاری؛ نباید باز باشد
25TCPSMTPارسال ایمیل بین سرورها
53TCP و UDPDNSپرسش و پاسخ نام دامنه
67 و 68UDPDHCPدریافت خودکار آدرس
80TCPHTTPوب بدون رمزنگاری
110TCPPOP3دریافت ایمیل بدون رمزنگاری
123UDPNTPهماهنگی ساعت
143TCPIMAPدریافت ایمیل بدون رمزنگاری
161UDPSNMPپایش تجهیزات؛ باید محدود باشد
389TCP و UDPLDAPسرویس دایرکتوری و Active Directory
443TCPHTTPSوب رمزنگاری‌شده
445TCPSMBاشتراک فایل ویندوز؛ نباید از اینترنت باز باشد
465 و 587TCPSMTP امنارسال ایمیل کاربران
636TCPLDAPSLDAP رمزنگاری‌شده
993TCPIMAPSدریافت ایمیل رمزنگاری‌شده
995TCPPOP3Sدریافت ایمیل رمزنگاری‌شده
1433TCPMicrosoft SQL Serverدیتابیس؛ نباید عمومی باشد
3306TCPMySQL و MariaDBدیتابیس؛ نباید عمومی باشد
3389TCPRDPریموت دسکتاپ ویندوز؛ هدف حملات حدس رمز
5432TCPPostgreSQLدیتابیس؛ نباید عمومی باشد
6379TCPRedisنباید از اینترنت باز باشد
8006TCPProxmox VEرابط وب مدیریت
8291TCPWinbox میکروتیکنباید روی اینترنت باز باشد
2083 و 2087TCPcPanel و WHMپنل مدیریت هاست
2222TCPDirectAdminپنل مدیریت هاست
27017TCPMongoDBنباید عمومی باشد

این جدول پورت‌های پیش‌فرض را نشان می‌دهد. هر سرویس را می‌توان روی پورت دیگری راه انداخت، پس وقتی چیزی روی پورت استاندارد کار نمی‌کند، تنظیمات سرویس را هم ببینید.

پورت‌هایی که نباید از اینترنت باز باشند

سرویس‌های دیتابیس (۳۳۰۶، ۵۴۳۲، ۱۴۳۳، ۶۳۷۹، ۲۷۰۱۷)، اشتراک فایل SMB (۴۴۵)، Telnet (۲۳) و پنل‌های مدیریتی تجهیزات، از پرتکرارترین هدف‌های اسکن و حمله‌اند. اگر سرویسی فقط برای برنامه‌ای روی همان سرور لازم است، باید فقط روی 127.0.0.1 گوش بدهد. اگر ماشین دیگری لازم دارد، فقط IP همان ماشین را در فایروال مجاز کنید. برای SSH و ریموت دسکتاپ، دسترسی را به IPهای مشخص یا یک VPN سازمانی محدود کنید. روش نوشتن قانون در UFW در فایروال UFW در اوبونتو آمده است.

دیدن پورت‌های باز روی سرور

در لینوکس:

sudo ss -ltnp
sudo ss -lunp

گزینه t برای TCP، u برای UDP، l برای پورت‌های در حال گوش دادن، n برای نمایش عدد پورت و p برای نام پروسه است. ستون Local Address نشان می‌دهد سرویس روی کدام آدرس گوش می‌دهد؛ 127.0.0.1 یعنی فقط از خود سرور و 0.0.0.0 یا * یعنی از همه آدرس‌ها. در ویندوز:

netstat -ano | findstr LISTENING

ستون آخر شناسه پروسه (PID) است که با Task Manager یا دستور tasklist به نام برنامه تبدیل می‌شود.

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

باز بودن پورت روی سرور با باز بودن آن از اینترنت فرق دارد: فایروال سرور، فایروال ارائه‌دهنده یا NAT مودم ممکن است مانع شوند. از یک سیستم بیرون از شبکه می‌توانید با Telnet یا nc امتحان کنید:

nc -zv 203.0.113.10 443

در ویندوز PowerShell:

Test-NetConnection 203.0.113.10 -Port 443

اگر می‌خواهید بدانید پورتی که روی مودم یا روتر خودتان فوروارد کرده‌اید از اینترنت باز است، ابزار تست پورت باز این کار را برای IP عمومی خود شما انجام می‌دهد. نتیجه «بسته» و «پاسخی نیامد» معنای متفاوتی دارند و در همان صفحه توضیح داده شده است.

تغییر پورت پیش‌فرض: چه اثری دارد؟

عوض کردن پورت SSH یا پنل مدیریت از ۲۲ به عددی دیگر، تعداد تلاش‌های ورود خودکار در لاگ را کم می‌کند، ولی امنیت واقعی نمی‌آورد: اسکنر پورت‌های دیگر را هم می‌بیند. پورت را عوض کنید اگر می‌خواهید لاگ کمتر شود، ولی ورود با کلید، فایروال و Fail2ban کارهای اصلی‌اند. جزئیات در نصب و تنظیم Fail2ban آمده است.

پورت و NAT در شبکه‌های خانگی و اداری

دستگاه‌های پشت مودم آدرس خصوصی دارند و از بیرون دیده نمی‌شوند. برای دسترسی به یک سرویس داخلی از اینترنت، روی روتر پورت فوروارد (Port Forwarding) می‌کنند: درخواست به یک پورت IP عمومی به یک آدرس و پورت داخلی هدایت می‌شود. اگر اپراتور شما CGNAT دارد و IP عمومی در اختیارتان نیست، فوروارد کار نمی‌کند. برای ساخت قانون فوروارد و فایروال در میکروتیک، ابزار ساخت اسکریپت فایروال میکروتیک را ببینید.

خطاهای رایج

نشانهعلت و راه حل
سرویس روی سرور بالاست ولی از بیرون وصل نمی‌شودفایروال سرور یا ارائه‌دهنده پورت را بسته؛ سرویس هم باید روی آدرس درست گوش بدهد
Address already in useبرنامه دیگری همان پورت را گرفته؛ با ss -ltnp پیدایش کنید
پورت فوروارد شده ولی باز نمی‌شودCGNAT، IP داخلی اشتباه یا فایروال دستگاه مقصد
دسترسی از داخل شبکه هست ولی از بیرون نهقانون فوروارد یا NAT روی روتر درست تنظیم نشده

سوالات متداول

پورت ۸۰ و ۴۴۳ چه فرقی دارند؟

۸۰ برای HTTP بدون رمزنگاری است و ۴۴۳ برای HTTPS رمزنگاری‌شده. امروز ۸۰ بیشتر برای هدایت به HTTPS و اعتبارسنجی گواهی‌های SSL باز می‌ماند.

چند پورت در دسترس است؟

۶۵۵۳۶ پورت (۰ تا ۶۵۵۳۵) برای هر پروتکل TCP و UDP. پورت ۰ رزرو است و عملاً از ۱ تا ۶۵۵۳۵ استفاده می‌شود.

پورت ۸۰۸۰ و ۸۰۸۱ چه سرویسی هستند؟

استاندارد خاصی ندارند. بسیاری از برنامه‌ها و پراکسی‌ها از آن‌ها به‌عنوان پورت جایگزین HTTP استفاده می‌کنند، مثل Tomcat و برنامه‌های Docker. سرویس واقعی را با ss -ltnp ببینید.

آیا باز بودن پورت ۲۲ خطرناک است؟

خود پورت خطرناک نیست؛ خطر از رمز ضعیف و نبودن محدودیت می‌آید. با ورود با کلید، فایروال و Fail2ban، SSH روی اینترنت ایمن‌تر می‌شود و بهتر است به IPهای مدیریتی محدود شود.

منابع