هنگامی که به دنبال خطایابی برنامه های سمت کلاینت یا سرور هستیم، گاهی لازم است تا از باز یا بسته بودن بودن پورت سرور که آن برنامه، از آن استفاده می کند اطمینان حاصل نماییم.
در این مقاله به شما آموزش می دهیم که چگونه می توانیم پورت های باز را به کمک ابزارهای ویندوز ببینیم.
Port چیست؟
پورت (Port) در لغت به معنی درگاه ترجمه شده است و از این درگاه برای رد و بدل کردن اطلاعات بین دو کامپیوتر یا سرور استفاده می شود.
اگر به زبان ساده تر بخواهیم بگوییم، پورت محلی است که از طریق آن داده ها به کامپیوتر یا سرور وارد و یا خارج می شود و به هر کدام از این درگاه ها عددی نسبت داده می شود. اين اعداد بين ۰ تا ۶۵۵۳۵ هستند که بعضی از این پورتها کار خاصی را انجام میدهند مثلا پورت ۲۵ برای ارسال ایمیل مورد استفاده قرار می گیرد.
تقسیمبندی پورتها بر مبنای شماره آن ها
پورتهای ۱ تا ۱۰۲۴ :
شناخته شده ترین پورتها هستند و معمولا هرکدام برای یک سرویس خاص استفاده میشوند. این دسته از پورت ها قبلا توسط سرویس های متفاوتی از قبیل تل نت، FTP و HTTP رزرو شده اند.
پورتهای ۱۰۲۵ تا ۴۹۱۵۱ :
این سری از پورتها به طور مشخص با هیچیک از سرویسهای اینترنتی مرتبط نیستند و به آنها پورت های ثبت شده می گویند. و وقتی با یکی از ابزارهای شبکه مانند مرورگرهای اینترنتی، نزم افزارهای ارسال و دریافت ایمیل ما Outlook و نرم افزارهای FTP مانند Filezilla کار می کنید، یکی از این پورت ها به صورت تصادفی باز می شوند و یک ارتباط با سرور برقرار شده و داده ها ارسال و دریافت می شوند.
پورتهای ۴۹۱۵۲ تا ۶۵۵۳۵ :
این سری از پورتها به ندرت مورد استفاده قرار می گیرند. کاربرد اساسی این پورت ها برای یک سری سرویسهای خاص اینترنتی است و یا توسط Trojan یا ویروس ها استفاده می شود.
البته بعضی از Trojanو ویروس های معروف از پورتهای ردیف ۲ نیز استفاده میکنند و این تقسیمبندیها بالا همیشه برقرار نیست و بههمین علت گاهی پورتها را به دودسته زیر ۱۰۲۴ و بالای ۱۰۲۴ تقسیم میکنند.
بررسی باز بودن پورت سرور با استفاده از دستور Telnet
از دستور Telnet جهت ارتباط صحیح با پورت مورد نظر به سرور مقصد میتوانیم استفاده کنیم.
برای انجام اینکار با فشردن کلید ترکیبی ویندوز+R وارد محیط Command Prompt یا cmd ویندوز می شویم.
در پنجره باز شده دستور CMD را تایپ کرده و بر روی گزینه OK کلیک نمائید.
در محیط Command Prompt، با استفاده از دستور Telnet که ساختار آن به شرح ذیل میباشد، میتوانید نسبت به بررسی ارتباط کامپیوتر مورد استفاده با پورت خاصی از یک سرور یا سایت با آدرس IP مشخص اقدام نمائید.
telnet IP/Host PORT-NUMBER
به جای عبارت IP/Host و PORT-NUMBER باید به ترتیب نام دامنه یا آدرس IP و شماره پورت مورد نظر جهت اتصال را وارد نمائید.
اگر Telnet در سیستم شما نصب نباشد، خطای زیر نمایش داده می شود.
برای نصب Telnet در ویندوز، آموزش زیر را مشاهده کنید.
آموزش نصب و فعالسازی Telnet در ویندوز
پورت های اصلی به شرح ذیل می باشند.
- SMTP Port: 25 (برای ارسال ایمیل)
- SMTP Port: 587 (برای ارسال ایمیل)
- POP3 Port: 110 (برای دریافت ایمیل)
- IMAP Port: 143 (برای دریافت ایمیل)
- FTP Port: 21 (برای انتقال فایل و اطلاعات بین کامپیوتر مبداء و سرور)
- FTP Port: 20 (برای انتقال فایل و اطلاعات بین کامپیوتر مبداء و سرور)
- Web Port: 80 (برای مشاهده اطلاعات و صفحات قرار گرفته روی هاست از طریق مرورگر اینترنتی)
- SSL Port: 443 (برای برقراری ارتباطات امن بین کامپیوتر مبداء و سرور)
برای مثال می خواهیم پورت ایمیل کیمیاهاست را بررسی کنیم. برای این کار باید به صورت بنویسیم.
telnet mail.kimiahost.com 25
در صورت باز بودن اتصال پیغام زیر در صفحه نمایش داده خواهد شد.
حالا می خواهیم پورت دیگری را در کیمیاهاست بررسی کنیم. اگر پورت باز نباشد، همانند تصویر زیر پیغام Connect failed نمایش داده می شود.
بررسی باز بودن پورت با استفاده از دستور Powershell
یکی دیگر از روش های بررسی باز بودن پورت سرور استفاده از دستورات در محیط powershell ویندوز می باشد.
برای اینکار ابتدا باید محیط Powershell که تنها مختص ویندوز است را باز کنید.
اینکار را می توانید با زدن کلید استارت یا پنجره روی کیبورد و تایپ کلمه Powershell و کلیک روی آن انجام دهید.
در صفحه باز شده می توانید از دو کد زیر باز بودن پورت را تست کنید.
tnc mail.kimiahost.com -port 25
Test-NetConnection mail.kimiahost.com -Port 25
همانطور که در تصویر زیر مشاهده می کنید، اگر پورت باز باشد، پیغام اول و اگر پورت بسته باشد، پیغام دوم نمایش داده می شود. شایان ذکر است ما در دستور دوم، به عمد پورت را به ۲۱ تغییر دادیم تا بسته بودن پورت نمایش داده شود.