مشکلات اتصال سرور مجازی همیشه به دلایل کاملاً متفاوت آزاردهنده بوده است، حتی زمانی که از سرور برای اهداف خاصی استفاده می شود. معمولاً، اغلب اوقات، کوچکترین دلایل نیز ما را مجبور می کند زمان زیادی را صرف یافتن راه حل برای هر یک از مشکلات کنیم تا اتصال موفق و پایداری داشته باشیم.
در این مقاله، ما تلاش کرده ایم بیشتر مشکلات اصلی اتصال سرور مجازی را که باعث از کار افتادن سرور می شوند بررسی کنیم و راه حل های موجود را برای آنها ارائه دهیم. امیدواریم این مقاله به شما کمک کند تا این مشکلات آزاردهنده اتصال را حل کنید. ابتدا مشکلات اتصال هر سرور مجازی را به طور جداگانه توضیح خواهیم داد و سپس مشکلات فرعی و راه حل های آنها را نیز بررسی خواهیم کرد.
چرا اتصال سرور مجازی من قطع می شود؟
تنها مشکلات محدود به خطاهای RDP یا Putty نیستند که باعث می شوند اتصال به سرور را از دست بدهیم؛ عوامل فرعی دیگر شامل از دست دادن اتصال پایدار به سرور به دلیل قطع اینترنت، اختلال در سرورهای شرکت، ارائه دهندهسرور مجازییا اختلال در سیستم عامل است که شما از طریق آن سعی در دسترسی به سرور خود دارید، می تواند باعث شود اتصال خود را به سرور از دست بدهید.
مشکلات اتصال سرور مجازی ویندوز
خوب است این نکته را در نظر داشته باشید: RDP برای تمام نسخه های ویندوز سرور یکسان است، بنابراین ما همان خطاها را در سرور مجازی ویندوز خواهیم دید. همچنین، هنگام تلاش برای اتصال به سرور ویندوز، گاهی اوقات علاوه بر مشکلات اصلی RDP، موارد فرعی باعث می شود اتصال VPS ما از سرور قطع شود.
در بخش بعدی، برخی از موارد را توضیح خواهیم داد که شامل موارد زیر است:
پورت پیش فرض RDP
مجوزهای ناکافی
دسترسی دوگانه کاربر در RDP
مصرف پهنای باند اضافی
و …
توجه: می توانید از مقاله زیر نیز استفاده کنید: ۶ دلیل برای عدم اتصال سرور RDP؛ برای حل مشکلات اتصال سرور مجازی ویندوز خود!
مشکلات اتصال سرور مجازی لینوکس
ما می توانیم با دلایل اصلی که باعث قطع اتصال سرور لینوکس می شوند آشنا شویم؛ در واقع، مشکل اصلی اتصال به سرور در نسخه های لینوکس و ویندوز به دلایل مختلفی است؛ همانطور که در بخش قبل ذکر شد، موارد فرعی نیز اغلب بر اتصال RDP تأثیر می گذارند، اما در سرورهای لینوکس، بیشتر این خطاهای اتصال مربوط به برنامه Putty است که باعث می شود اتصال خود را به سرور از دست بدهیم؛ در ادامه، برخی از این موارد و همچنین راه حل های آنها را بیان خواهیم کرد:
فقط نمایش یک صفحه خالی هنگام تلاش برای ورود (SSH)
خطای فاجعه بار Putty: خط ۱۱
خطای فاجعه بار Putty: اتصال چندگانه
خطای زمان اتصال Putty
اکنون، ما هر یک از خطاهای اتصال را که توضیح دادیم و همچنین برخی از سوالات اصلی را که ممکن است داشته باشیم، بررسی خواهیم کرد:
مشکلات اصلی اتصال VPS ویندوز
مشکلات (RDP)
۱. مجوزهای ناکافی
در برخی موارد، برای کار با بخش های خاصی از سرور ویندوز، اتصال به سرور مجازی ویندوز مختل می شود، بنابراین شما نیاز دارید مجوزها را از طریق خدمات ریموت دسکتاپ به سرویس ترمینال اعطا کنید. اغلب اوقات، اگر مجوز برای اتصال به منبع راه دور کافی نباشد، کاربر با خطاهایی مانند مجوز ناکافی برای اتصال مواجه می شود.
توجه: این، اغلب اوقات، بر ویندوز سرور ۲۰۱۶ تأثیر می گذارد.
۲. پورت پیش فرض RDP
هنگام اتصال به یک سرور ویندوز از طریق پورت دیگری غیر از پورت اصلی RDP، گاهی اوقات ممکن است اتصال خود را به سرور از دست بدهید؛ فقط به این دلیل که یک فایروال شبکه در مقابل سرور فقط اتصال به پورت پیش فرض سرور را اجازه می دهد، دسترسی به سرور را مسدود می کند!
۳. دسترسی دوگانه کاربر
فرض کنید شما نام کاربری یکسانی با کاربر ۲ دارید یا سعی می کنید از کاربران بیشتری که دسترسی محدود کاربر به سرور را دارند، استفاده کنید که ارائه دهندگان سرور مجازی آن را تنظیم می کنند. در آن صورت، RDP به شما هشدار می دهد: کاربر دیگری به ریموت متصل است، بنابراین اتصال خود را از دست خواهید داد. سعی کنید دوباره متصل شوید یا با مدیر شبکه یا گروه پشتیبانی فنی تماس بگیرید.
۴. مصرف پهنای باند اضافی
هنگام کار با RDP، برخی برنامه ها نیازمند پهنای باند بیشتری هستند که ممکن است به دلیل کمبود پهنای باند در دسترس و اختصاص پهنای باند زیادی به مناطقی که کیفیت گرافیک را بهبود می بخشد یا مواردی که نیاز خاصی به پهنای باند بالا ندارند، باشد؛ این امر باعث می شود سرعت اینترنت و حتی قطع اتصال سرور هنگام کار با برنامه شود؛ و شما باید سرویس یا برنامه را در سرور دوباره اجرا کنید.
راه حل ها
مجوزهای ناکافی
مرحله ۱:ابزار ویرایشگر سیاست گروهی (Group Policy Object Editor) را باز کنید و به مسیر زیر بروید:
Computer Configuration \ Windows Settings \ Security Settings \ Local Policies \ User Rights Assignment
مرحله ۲: در پنل سمت راست، روی “Allow log on through Remote Desktop Services” دابل کلیک کنید.
مرحله ۳: در پنجره باز شده، روی دکمه “Add User or Group” کلیک کنید.
مرحله ۴: در پنجره “Select Users or Groups”، نام کاربری یا گروهی را که می خواهید به آن اجازه ورود از طریق ریموت دسکتاپ را بدهید، تایپ کنید و سپس روی “OK” کلیک کنید.
مرحله ۵: پس از اضافه کردن کاربر یا گروه، روی “OK” کلیک کنید تا تغییرات اعمال شود.
با انجام این مراحل، مجوزهای لازم برای ورود از طریق ریموت دسکتاپ به کاربر یا گروه انتخابی اعطا می شود.
پورت پیش فرض RDP
مرحله ۱: اگر یک فایروال شبکه در مقابل سرور وجود دارد، ما نیاز داریم پورت ریموت دسکتاپ را به حالت پیش فرض: ۳۳۸۹ برگردانیم!
مرحله ۲: ابتدا، ویرایشگر رجیستری ویندوز را اجرا می کنیم و سپس؛
با استفاده از آدرس زیر، می توانیم به کلید شماره پورت ریموت دسکتاپ دسترسی پیدا کنیم:
Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
مرحله ۳: در پنل سمت راست، روی “PortNumber” دابل کلیک کنید.
مرحله ۴: در پنجره باز شده، مقدار داده شده را به “۳۳۸۹” تغییر دهید و سپس روی “OK” کلیک کنید.
مرحله ۵: سیستم را راه اندازی مجدد کنید تا تغییرات اعمال شود.
پس از انجام این مراحل، پورت ریموت دسکتاپ به حالت پیش فرض ۳۳۸۹ برگردانده می شود و باید بتوانید از طریق این پورت به سرور متصل شوید.
دسترسی دوگانه کاربر
مرحله ۱: ابتدا، باید به آدرس زیر در سرور خود بروید:
All Programs > Administrative Tools > Remote Desktop Services > Remote Desktop Session Host > Configuration
مرحله ۲: پس از آن، باید تنظیمات را برای محدود کردن هر کاربر به یک جلسه تنها، در بخش “NO” قرار دهید.
توجه: اگر دوباره همان خطا را دریافت کردید، باید با ارائه دهنده سرویس VPS خود تماس بگیرید.
مصرف پهنای باند اضافی
مرحله ۱: برنامه هایی را که ممکن است پهنای باند اضافی مصرف کنند، ببندید.
معمولاً، استفاده از رزولوشن نمایش یا عمق رنگ پایین تر و غیرفعال کردن ویژگی های بصری می تواند به طور قابل توجهی سرعت اتصال را افزایش دهد و اتصال پایداری در VPS ویندوز داشته باشید.
مرحله ۲: می توانید به سربرگ “تجربه و نمایش” در RDP دسترسی پیدا کنید تا تنظیمات عملکرد خود را در بخش پایین تر تنظیم کنید یا آنها را لغو انتخاب کنید تا سرعت اتصال خود را افزایش دهید.
مشکلات اصلی اتصال سرور مجازی لینوکس
مشکلات (Putty)
۱. فقط نمایش یک صفحه خالی در Putty هنگام تلاش برای ورود (SSH)
در این موارد، معمولاً با یک خطای هشدار دهنده مواجه میشوید که “PuTTY Network Error: Software caused connection abort” را نشان میدهد.
این خطاها معمولاً زمانی رخ میدهد که صفحه وارد شده در Putty برای مدت طولانی بیکار بماند و هیچ دستوری استفاده نشود.
توجه: این بیشتر اوقات بر اتصال سرور VPS با توزیع CentOS تأثیر میگذارد.
۲. خطاهای فاجعه بار Putty در خط ۱۱
این خطاها شامل محتوای زیر هستند:
- agent forwarding is required to connect using a public key via SSH TCP
- public-key authentication is not permitted via SSH TCP
زمانی که احراز هویت کلید عمومی برای سرویس TCP فعال نشده باشد یا حتی اگر Putty برای اجازه دادن به agent forwarding پیکربندی نشده باشد، معمولاً میتوانیم این خطاها را در سرورهای Debian مشاهده کنیم!
۳. اتصال چندگانه
معمولاً زمانی رخ میدهد که شما سعی کنید چندین بار پشت سر هم به سرور لینوکس متصل شوید. اگر دقیقتر نگاه کنیم: برنامههای امنیتی مبتنی بر لینوکس، مانند Fail2Ban و LFD، برخی از آیپیها را برای جلوگیری از حملات نیرومند مسدود میکنند. در برخی موارد، آیپی شما نیز ممکن است مسدود شود، یعنی زمانی که ابزار ایمیل، ابزار FTP یا ابزار SSH دارای جزئیات ورود نادرست باشد، آیپی به عنوان یک لیست مسدودشده در برنامههای امنیتی مبتنی بر لینوکس Fail2Ban و LFD ذخیره میشود.
۴. خطای زمان اتصال Putty
خطای شماره اول که توصیف شد، گاهی اوقات در مورد دوم نمایش داده میشود. ما با یک خطای هشدار دهنده مانند “PuTTY Network Error: Connection timed out” مواجه خواهیم شد.
توجه: در این نوع خطا، تنها پیام خطای داده شده متفاوت است، اما راههای متعددی برای رفع آن وجود دارد.
راه حل ها (Putty)
فقط نمایش یک صفحه خالی در Putty هنگام تلاش برای ورود (SSH)
مرحله ۱: اگر میخواهید از خطایی که مشاهده کردهاید جلوگیری کنید، ابتدا باید به عنوان یک کاربر ریشه (root) فایل sshd_config را ویرایش کنید.
مرحله ۲: با استفاده از دستور VIM یا NANO، فایل ClientAliveInterval را پیدا کنید.
برای تغییر مقدار فایل ClientAliveInterval به ۶۰، از یکی از دستورات زیر استفاده کنید:
vim /etc/ssh/sshd_config
nano /etc/ssh/sshd_config
مرحله ۳: اکنون نیاز است که VPS را راهاندازی مجدد کنید.
برای CentOS 7:
systemctl restart sshd.service
برای CentOS 5/6، RHEL 5/6:
service sshd restart
توجه: ما فقط یک بازه زمانی ۶۰ ثانیهای را تنظیم کردیم. این بدان معنی است که اگر دوباره برای مدت زمان مشخصی بیکار بمانیم، سرور اتصال را به ۶۰ ثانیه از سر میگیرد، و پس از آن، اگر هیچ داده یا پاسخی از کلاینت دریافت نشده باشد، سرور اتصال را قطع میکند و خودکار یک خطای زمان اتصال را هشدار میدهد!
خطاهای فاجعه بار Putty در خط ۱۱
مرحله ۱: برای حل این مشکل، میتوانیم گزینه allow agent forwarding را فعال کنیم.
ما نیاز داریم برای Putty از آدرس زیر استفاده کنیم و گزینه agent forwarding را فعال کنیم:
Connection > SSH > Auth > Allow agent forwarding
مرحله ۲: برای خطای هشدار دوم، شما نیاز دارید سرویس TCP را باز کنید و گزینه احراز هویت کلید عمومی (public-key authentication) را بررسی یا فعال کنید.
اتصال چندگانه
مرحله ۱: دوباره وارد سیستم شوید، در این موارد، معمولاً سرویسهای امنیتی به اشتباه آیپی شما را برای حملات نیرومند مسدود میکنند.
مرحله ۲: اگر آیپی کلاینت مسدود شده است، با ارائهدهنده سرویس خود تماس بگیرید و از آنها بخواهید که لاگ فایروال را بررسی کنند. سپس، ارائهدهنده سرویس شما جزئیات ورود را بازنشانی میکند و خطا را برطرف میکند.
خطای زمان اتصال Putty
مرحله ۱: پیکربندی عمومی PuTTY را باز کنید.
مرحله ۲:در بخش لیست دستهبندی سمت چپ، گزینه “Connection” را انتخاب کنید.
مرحله ۳: در فیلد “Seconds between keepalives (0 to turn off)”، عدد ۲۰ را وارد کنید.
مرحله ۴: کادر “Enable TCP keepalives (SO_KEEPALIVE option)” را تیک بزنید.
توجه: در این روش، سرویس پس از هر بار مدت زمان مشخص شده برای قطع اتصال از سرور، بیکار میماند. هر ۲۰ ثانیه یکبار تجدید میشود و اتصال ثابت باقی میماند.
مشکلات فرعی مشترک: برای هر دو اتصال سرور مجازی لینوکس و ویندوز
مشکلات فایروال: نیاز به خاموش کردن آن.
استفاده از VPN در هنگام اتصال به سرور مجازی: خاموش شدن ناگهانی VPN زمانی که به سرور متصل هستید، باعث از دست رفتن اتصال شما به سرور میشود.
سوالات متداول
زمانی که سرور لینوکس شما از کار میافتد، آیا برنامههای در حال اجرا نیز از کار میافتند؟
چه کاری میتوانیم انجام دهیم تا از قطع اتصال سرور پس از کوچک کردن صفحه اتصال سرور در گوشیهای هوشمند جلوگیری کنیم؟
پاسخها:
۱. بله، تمام اطلاعاتی که در آن زمان داشتید حذف میشود و باید دوباره انجام شود. برای جلوگیری از از دست رفتن دادهها پس از از کار افتادن سرور، میتوانید پس از نصب نرمافزار یا بسته مربوطه (که زمان زیادی میبرد) با ارائهدهنده سرویس خود تماس بگیرید و SnapShot را درخواست دهید تا فرآیند نصب ذخیره شود و نیازی به نصب مجدد بسته یا نرمافزار مورد نظر نباشد.
۲. در برخی از نسخههای گوشیهای هوشمند اندروید، زمانی که به سرور متصل میشوید، اگر صفحه اتصال سرور را کوچک کنید، اتصال شما به سرور قطع میشود. بنابراین، ایجاد یک صفحه مجازی میتواند اتصال به سرور را در یک صفحه جداگانه نگه دارد و نیازی به کوچک کردن صفحه اتصال ندارید.
نتیجه گیری
در این مقاله، ما تلاش کردهایم بهترین راه حلها را برای خطاهایی که اغلب به دلایل مختلف رخ میدهند و باعث قطع اتصال سرورو مجازی از سرور میشوند، توضیح دهیم. اگر با خطاهای مشابه مواجه شدید و سوالات دیگری دارید یا راه حل متفاوتی برای هر بخش دارید، همیشه میتوانید از طریق بخش نظرات در ارتباط باشید. با احترام