سرورها ستون فقرات اینترنت، سایت‌ها، محاسبات ابری و مدیریت داده‌ها هستند. مخصوصا سرورهای لینوکس که به‌دلیل ثبات، امنیت و انعطاف‌پذیری، محبوب دل مبتدیان و متخصصان هستند. این سیستم‌عامل برخلاف ویندوز، یک‌سری تنظیمات خاصی نیاز دارد که با دستورات متنی، در ترمینال انجام می‌شوند. در این مقاله، نحوه کانفیگ سرور مجازی لینوکس را برای مسیر root کاربر، فایروال و پروکسی شبکه یاد خواهید گرفت. در کنار این موارد، در ادامه کانفیگ SSH، DNS و غیره را هم انجام می‌دهیم.

چرا راه اندازی سرور مجازی لینوکس اهمیت دارد؟

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

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

سرور مجازی

با خرید سرور مجازی، پشت یک سیستم پرسرعت و قدرتمند بنشینید و فرمان بدهید!

خرید vps

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

دلیل دیگر راه‌اندازی این سرورهای مجازی این است که سیستم‌عامل لینوکس عملا هیچ خرابی‌ای ندارند. این مقاومت زیاد در برابر خرابی، به توسعه‌دهندگان نرم‌افزار درجه‌ بالایی از کنترل را می‌دهد که هنگام ایجاد ابزارهای SaaS یا اپلیکیشن‌های زنده (Live Applications) یک ویژگی بسیار کارامد خواهد بود؛ چون می‌توانند چند اپلیکیشن را در یک سرور واحد مدیریت کنند.

۸ ویژگی‌ سرور مجازی لینوکس

تمام سرورهای مجازی لینوکس، هفت ویژگی عالی را از قدرت این سیستم‌عامل به ارث برده‌اند که در ادامه، اشاره کوتاهی به هر کدام خواهیم داشت.

۱. تکامل سریع

کد منبع لینوکس کاملا رایگان در دسترس همه مردم در سراسر دنیا است که باعث می‌شود باگ‌های آن به‌سرعت شناخته شوند. از طرفی دیگر، تیم‌های متخصص تمام نقاط جهان قابلیت‌های کارامدی برای آن می‌سازند و به تکامل سریعش کمک می‌کنند.

۲. امنیت بالا

امنیت دغدغه اصلی هر کاربر، به‌خصوص کاربران سرورهای مجازی است. امنیت این سیستم‌عامل در سطح بسیار بالایی قرار دارد؛ چون از قابلیت‌های احراز هویت قوی مثل محافظت از رمز عبور، رمزگذاری داده‌ها و دسترسی کنترل‌شده به فایل‌های خاص استفاده می‌کند. همچنین فایروال هوشمند و سیستم دسترسی سخت‌گیرانه به تمام فایل‌ها، امنیت نسبتا کامل سایت شما و داده‌هایش را تضمین می‌کند.

۳. پایداری و دوام عالی

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

۴. اجرای چندگانه برنامه‌ها با امکان چندوظیفه‌ای

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

سرور مجازی

با خرید سرور مجازی، پشت یک سیستم پرسرعت و قدرتمند بنشینید و فرمان بدهید!

خرید vps

۶. مقرون‌ به‌ صرفه

لینوکس یک سیستم‌عامل منبع باز است که دانلود و نصب آن کاملا رایگان است. البته در برخی از توزیع‌ها – مثل RedHat – باید مبلغی را پرداخت کنید که در مقایسه با سایر وب‌سرورهای مشابه، هزینه کمتری دارد.

۷. سهولت مدیریت و کارایی بالا در عملیات

می‌گوییم سهولت مدیریت؛ چون مشتریان سرورهای مجازی لینوکس برای راه‌اندازی و کانفیگ آن، هیچ نیازی به نرم‌افزار خاصی ندارند؛ چراکه تمام دستورات از طریق ترمینال و از راه دور نوشته و اجرا می‌شوند.

سرورهای لینوکس توانایی مدیریت کارآمد حجم بالای کاربر را دارند. سرورهای لینوکس برای اهداف شبکه ایده آل هستند و عملکرد خوبی با دستگاه های متصل دارند.

۸. سازگاری کامل با محیط‌های ابری

اگر سرورهای ابری نبودند، احتمالا هیچ کدام از امکانات و سرویس‌های فعلی را نداشتیم؛ به‌خصوص هوش مصنوعی مثل گوگل جمینی و ChatGPT. خبر خوب این است که اگر از سرور مجازی لینوکس استفاده کنید، می‌توانید به‌راحتی با محیط‌های ابری یا فضای ابری مثل AWS، Microsoft Azure و Google Cloud هم کار کنید و تمام برنامه‌هایتان را روی این پلتفرم‌ها بسازید.

در مقاله تفاوت سرور مجازی و سرور ابری ، می‌توانید اطلاعات مفیدی درباره تفاوت این دو سرویس به‌دست آورید.

سلسله مراتب فایل‌های سیستمی در لینوکس چگونه است؟

درک سلسله مراتب سیستم فایل Linux، روی کانفیگ سرور مجازی لینوکس تاثیر مستقیمی می‌گذارد. پس باید با لیست زیر آشنا باشیم تا بتوانیم کانفیگ را به‌درستی انجام دهیم.

۷ دستور پایه در لینوکس

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

۱. sudo

مخفف “Superuser Do” است که برای اجرای دستورات با امتیازات مدیر (Administrative Privileges) استفاده می‌شود.

۲. apt-get

یکی از دستورات پایه لینوکس است که با ابزار خط فرمان خود، برای مدیریت پکیج‌ها در توزیع‌های مبتنی‌بر دبیان، مثل اوبونتو استفاده می‎‌شود.

۳. yum

معادل دستور apt-get است؛ با این تفاوت که برای توزیع‌های مبتنی‌بر RedHat مانند CentOS  به‌کار می‌رود.

۴. ls

فایل‌ها و دایرکتوری‌ها را در دایرکتوری فعلی لیست می‌کند.

۵. cd

دایرکتوری فعلی را تغییر می‌دهد. به‌عنوان مثال، دستور cd /home مسیر را به دایرکتوری اصلی هدایت می‌کند.

۶. mkdir

یک دایرکتوری جدید ایجاد می‌کند. برای مثال، mkdir new_folder یک پوشه جدید به‌نام ‘new_folder’ می‌سازد.

۷. chmod

حالت فایل – File Mode – که همان مجوزها یا ‘Permissions’ است را به یک فایل یا دایرکتوری تغییر می‌دهد.

مطلب مرتبط: آموزش اتصال به سرور مجازی ویندوز با موبایل

فایل‌های کانفیگ سرور مجازی لینوکس

فایل‌های کانفیگ که پسوند .cfg دارند، فایل‌های متنی ASCII هستند و در پوشه /etc که تابع دایرکتوری PSTHOME است نصب می‌شوند. PSTHOME یک متغیر محیطی (Environment Variable) است که در حین نصب، به‌شکل خودکار تنظیم می‌شود و به دایرکتوری‌ای که سرور در آن نصب شده است، اشاره می‌کند.

پیش نیازهای راه‌اندازی و کانفیگ سرور مجازی لینوکس

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

برای ایجاد یک اتصال امن، از شبیه‌سازهای ترمینال مانند PuTTY در ویندوز یا کلاینت داخلی SSH در لینوکس و مک استفاده کنید.

اتصال به سرور از طریق SSH

اتصال از طریق SSH به سرور مجازی لینوکس در ویندوز را مطابق مراحل زیر انجام دهید.

  1. Command Prompt ویندوز را با فشار دادن کلیدهای Windows + R روی کیبورد باز کنید.

در فیلد cmd را وارد کرده و OK کنید.

  1. در صفحه‌ای که باز می‌شود، از دستور SSH استفاده کنید و نام کاربری سرور خود را به‌جای root بنویسید. در ادامه این نام، آدرس IP سرور مجازی‌تان را جایگزین your_vps_ip در دستور زیر کنید:
ssh root@your_vps_ip

فعالسازی احراز هویت در SSH با کلید عمومی 

احراز هویت با کلید عمومی، از رمزهای عبور معمولی، امن‌تر و پیچیده‌‌تر است؛ به این دلیل که از یک جفت کلید عمومی یا خصوصی برای ایمن کردن اتصال SSH شما با VPS لینوکس استفاده می‌کند. 

کلید عمومی در سرورتان ذخیره می‌شود و برای احراز هویت خصوصی استفاده می‌شود. در طرف دیگر، کلید خصوصی را فقط می‌توان از شرکت ارائه‌دهنده گرفت.

آموزش کانفیگ سرور مجازی لینوکس

برای فعال کردن احراز هویت fh کلید عمومی، مراحل زیر را دنبال کنید:

  1. با دستور زیر، یک جفت کلید (عمومی و خصوصی) ایجاد کنید:
ssh-keygen -t rsa -b 4096
  1. می‌توانید مکانی را برای ذخیره کلیدها انتخاب کنید. بااین‌حال در بیشتر موارد، مکان پیش‌فرض برای ذخیره این کلیدها انتخاب می‌شود و کلید تحت پسوند .ssh/ ذخیره می‌شود. این مکان پیش‌‌فرض در سرور لینوکس، دایرکتوری home است. برای امنیت بیشتر جفت کلید خود، می‌توانید یک کلمه عبور (همان Password) را برای کلید خصوصی‌تان تنظیم کنید.
  2. برای کپی کردن کلید عمومی در سرور، دستور زیر را اجرا کنید و نام کاربری را با نام کاربری خود و server_ip را با آدرس IP یا نام سرورتان جایگزین کنید:
sssh-copy-id username@server_ip
  1. سپس رمز عبور سرور را بنویسید و Enter بزنید.
  2. پس از موفقیت‌آمیز بودن فرایند احراز هویت در این مرحله، کلید عمومی شما به فایل ~/.ssh/authorized_keys سرور اضافه می‎شود.
  3. برای اعمال تغییرات کانفیگ و کلیدها، SSH را با دستور زیر ری‌استارت کنید:
sudo service ssh restart
  1. برای تست احراز هویت با کلید عمومی و تایید صحت آن، دستور زیر را بنویسید و کلمه عبوری را که برای کلید خصوصی‌تان تنظیم کرده بودید، وارد کنید:
ssh -i /path/to/private_key username@server_ip

نحوه راه‌اندازی و کانفیگ سرور مجازی لینوکس

هنگامی که از لینوکس یا یونیکس برای سرور مجازی استفاده می‌کنید، فایل‌های پیکربندی و اسکریپت‌های Shell با فایل‌های اجرایی نصب می‌شوند. این آبجکت‌ها، پیش‌فرض‌هایی را برای سرور ایجاد می‌کنند و باید طوری تنظیم شوند که با محیط شبکه سرورتان سازگاری کاملی داشته باشند. این فایل‌ها را با یک ویرایش‌گر متن در لینوکس، مانند vi یا emacs تغییر می‌دهیم.

به‌روزرسانی سرور مجازی لینوکس برای شروع کانفیگ آن

برای حفظ امنیت و ثبات VPS خود، به‌روزرسانی منظم پکیج‌های سیستم و ریپازیتوری نرم‌افزارهای آن ضروری است. بسته به توزیع لینوکسی که انتخاب می‌کنید، سیستم مدیریت پکیج به شما امکان می‌دهد تا پکیج‌های نرم‌افزاری را به‌سرعت نصب و به‌روز کنید. 

ما در توزیع‌های دبیان و CentOS، دستورات به‌روزرسانی را در ادامه توضیح داده‌ایم.

برای توزیع‌های مبتنی بر دبیان مانند اوبونتو، از ابزار APT استفاده کنید. برای Refresh کش پکیج و به‌روزرسانی پکیج‌های نصب‌شده، دستورات زیر را اجرا کنید:

sudo apt update

همچنین کاربران CentOS می‌توانند از Yellowdog Updater (YUM) برای به‌روزرسانی پکیج‌های سیستم با اجرای دستورات زیر استفاده کنند:

sudo yum update

پس از تکمیل به‌روزرسانی لیست پکیج‌ها، می‌توانید انواع سیستمی آن‌ها را به‌روزرسانی کنید. آخرین نسخه از پچ‌های امنیتی و قابلیت‌های رفع خطاها برای Debian/Ubuntu، با دستور زیر نصب خواهد شد:

sudo apt upgrade

در CentOS/RHEL هم دستور بالا این شکلی نوشته می‌شود:

sudo yum upgrade

گاهی اوقات برای فعال کردن به‌روزرسانی سرور لینوکس، نیاز به راه‌اندازی مجدد آن دارید. پس VPS خود را با دستور زیر، Restart کنید:

sudo reboot

تایید مسیر کاربر root

اولین کار در کانفیگ سرور مجازی لینوکس، بررسی مسیر کاربر root سیستم است؛ چون مسیر باید برای STA Installation به‌درستی پیکربندی شود.

STA Installation در لینوکس معمولا به نصب درایور Broadcom STA (مخفف “Station”) اشاره دارد که یک درایور اختصاصی است و برای آداپتورهای شبکه بی‌سیم Broadcom استفاده می‌شود. 

  1. یک Session ترمینال در سرور STA باز کنید و به‌عنوان کاربر root، وارد سیستم شوید.
  2. متغیر PATH را با دستور زیر روی صفحه چاپ می‌کنیم:
echo $PATH

حالا باید لیست را چک کنید و مطمئن شویم که تمام دایرکتوری‌های زیر در آن هستند:

به‌عنوان مثال، خروجی چیزی مشابه خط زیر می‌شود:

# echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/root/bin:/sbin:/bin:/usr/sbin:/usr/bin
  1. اگر هیچ دایرکتوری در PATH وجود ندارد، از همان ویرایش‌گرهای متن لینوکس استفاده کنید. حالا باید پروفایل کاربر را باز کنید و تمام دایرکتوری‌ها را در آن بنویسید و ذخیره کنید. این کار را دقیقا مثل کادر زیر انجام دهید. می‌توانید همین متن را کپی کنید.
# vi /root/.bash_profile
PATH=$PATH:/sbin:/bin:/usr/sbin:/usr/bin

بعد از ذخیره کردن فایل، از محیط ویرایش‌گر خارج شوید.

  1. از سیستم خارج شوید و مجدد به‌عنوان کاربر root وارد شوید.
  2. حالا متغیر PATH را چک کنید و مطمئن شوید که به‌درستی به‌روز شده است و دایرکتوری‌های بالا را دارد. برای تایید این موضوع، از دستور زیر استفاده کنید:
# echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/root/bin:/sbin:/bin:/usr/sbin:/usr/bin

فعال کردن iptables در فایروال لینوکس 

باید سرویس فایروال iptables را فعال کنید تا STA Installation بتواند تنظیمات پورت مورد نیاز را اعمال و پیکربندی کند. پس از نصب STA، iptables به پشتیبانی از فوروارد کردن بسته‌های داده در پورت داخلی ادامه می‌دهد تا SNMP Traps به‌درستی کارش را انجام دهد.

نحوه کانفیگ iptables لینوکس نسخه ۶، طبق مراحل زیر انجام می‌شود.

  1. یک Session ترمینال در سرور STA باز کنید و به‌عنوان کاربر root سیستم وارد شوید.
  2. حالا با دستور زیر، iptableها را فعال کنید:
# service iptables status
# service iptables restart

اگر تمام مراحل را تا این‌جا با ما طی کرده باشید، پس از اجرای این دستور، پیغام زیر را می‌بینید:

iptables: Applying firewall rules: [  OK  ]
  1. حالا iptables را برای شروع خودکار، به‌محض روشن شدن سرور و راه‌اندازی لینوکس، با دستور زیر پیکربندی کنید:
# chkconfig --list iptables

service iptables supports chkconfig, but is not referenced in any runlevel (run ‘chkconfig –add iptables’)

با دستور زیر این کار را انجام می‌دهیم. این تنظیمات به‌طور پیش‌فرض، برای ری‌استارت در سطوح اجرا ۲ تا ۵ پیکربندی شده‌اند.

# chkconfig --add iptables
# chkconfig --list iptables

خروجی زیر نشان می‌دهد که کانفیگ فایروال لینوکس را با موفقیت روی سرور مجازی انجام دادیم:

iptables        ۰:off   ۱:off   ۲:on    ۳:on    ۴:on    ۵:on    ۶:off

فعالسازی فایروال لینوکس ۷ هم به‌شکل زیر انجام می‌شود:

  1. یک Session ترمینال در سرور STA باز کنید و به‌عنوان کاربر root وارد سیستم شوید.
  2. iptableها را در دو مرحله به‌شکل زیر فعال کنید.
# systemctl status iptables
# systemctl start iptables
# systemctl enable iptables

کانفیگ دیتابیس MySQL

  1. برای نصب و راه‌اندازی پایگاه داده MySQL در سرور مجازی لینوکس و سرور اوبونتو نسخه ۲۰.۰۴، به سرور وارد شوید و MySQL را با دستور زیر نصب کنید:
sudo apt-get install mysql-server -y
  1. پس از اتمام نصب، سرور را با دستور زیر راه‌اندازی و فعال کنید:
sudo systemctl enable --now mysql
  1. با نوشتن و اجرای این دستورات، MySQL باید نصب و اجرا شود. 
  2. هنگام کانفیگ دیتابیس لینوکس، اکانت Admin در MySQL، بدون رمز عبور کار را پیش می‌برد که این موضوع، یک مشکل امنیتی بزرگ ایجاد می‌کند. پس باید این اکانت را در دیتابیس MySQL ایمن کنیم. این کار را با نوشتن و اجرای دستور زیر انجام می‌دهیم:
sudo mysql_secure_installation
  1. ابتدا سرور از شما می‌پرسد که آیا می‌خواهید کامپوننت «Validate Password» را فعال کنید؟ این کامپوننت تمام حساب‌ها را ملزم به استفاده از رمزهای عبور بسیار قوی می‌کند. ما هم می‌خواهیم این اتفاق بیفتد. پس دکمه ‘Y’ را می‌زنیم تا این کامپوننت فعال شود. 

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

کانفیگ دیتابیس MySQL

 

  1. پس از این مرحله، سرور مجازی لینوکس از شما می‌خواهد که یک رمز عبور برای کاربر Admin MySQL تایپ کنید و آن را مجدد بنویسید. این کار را انجام دهید و برای رد شدن از تمام سوالات دیگر، با فشردن دکمه Y کیبورد، مراحل کانفیگ دیتابیس VPS لینوکس را به اتمام برسانید.

کانفیگ پروکسی شبکه در سرور مجازی لینوکس

از منوی System دسکتاپ لینوکس، Preferences را انتخاب کنید. سپس Network Proxy را انتخاب کنید.

در کادر Network Proxy Preferences، کانفیگ پروکسی را با توجه به نیاز سایت‌تان مشخص کنید. برای ذخیره تغییرات و اعمال پروکسی جدید، روی Close کلیک کنید.

کانفیگ SSH در سرور مجازی لینوکس

  1. برای کانفیگ SSH سرور لینوکس، باید فایل پیکربندی آن را با یک ویرایش‌گر متن باز کنید. ما از ویرایش‌گر vi استفاده کردیم و دستور زیر را در آن نوشتیم:
# vi /etc/ssh/sshd_config
  1. حالا موجودیت‌های AddressFamily و UseDNS را در این فایل جست‌وجو کنید. سپس آن‌ها را طوری تغییر دهید که قبل از کاراکتر Comment قرار نگیرند. مقادیرشان باید به‌شکل زیر باشد:
AddressFamily inet
UseDNS no
  1. فایل را ذخیره کنید و از آن خارج شوید.
  2. sshd daemon را مجددا راه‌اندازی کنید. باید آن را Restart کنید. این کار در لینوکس ۶ با دستور زیر انجام می‌شود:
# service sshd restart

در لینوکس ۷ هم باید از دستور زیر استفاده کنید:

# systemctl restart sshd

پیکربندی DNS و انجام تنظیمات آن

آدرس IP سرور STA را به نام هاست آن تغییر دهید و مراحل زیر را برای پیکربندی DNS در سرور مجازی لینوکس طی کنید.

  1. فایل هاست‌ها را با یک ویرایش‌گر متن باز کنید و دستور زیر را در آن بنویسید:
vi /etc/hosts
  1. در انتهای فایل، آدرس IP سرور STA را به‌همراه یک تب و نام سرور STA به این دستورها اضافه کنید. برای مثال، ما از دستور زیر برای انجام این کار استفاده کردیم:
۱۲۷.۰.۰.۱    localhost localhost.localdomain localhost4...
::۱          localhost localhost.localdomain localhost6...
۱۹۲.۰.۲.۲۰    sta_server
  1. فایل را ذخیره کرده و از آن خارج شوید. برای اعمال تنظیمات جدید، نیازی به راه‌اندازی مجدد سرور STA ندارید.

غیر فعال کردن Name Services

Name services (مانند LDAP) با STA Installation تداخل دارند. بنابراین باید این سرویس‌ها را به‌طور موقت غیرفعال کنید.

  1. فایل پیکربندی Name Service Switch را با یک ویرایش‌گر متن باز کنید.
# vi /etc/nsswitch.conf
  1. هر موجودیت Name Service را غیرفعال کنید. به‌عنوان مثال، برای غیرفعال کردن LDAP، همان‌طور که در جدول زیر نشان داده شده است، “ldap” را از خطوط زیر با کامنت کردن آن‌ها حذف می‌کنیم:
passwd:     files #ldap nis nisplus
shadow:     files #ldap nis nisplus
group:      files #ldap nis nisplus
  1. فایل را ذخیره کرده و از آن خارج شوید. برای اعمال تنظیمات جدید، نیازی به راه اندازی مجدد سرور STA ندارید. پس از STA Installation، می‌توانید فایل nsswitch.conf را تغییر دهید تا Name Service را دوباره فعال کنید.

مشکلات کانفیگ سرور مجازی لینوکس و راه‌حل آن‌ها

هنگام کانفیگ یک سرور مجازی لینوکس از طریق خط فرمان، ممکن است با مشکلات رایجی روبه‌رو شوید. بخش‌های زیر نحوه عیب‌یابی مشکلات اتصال VPS و خرابی‌های سرویس را شرح می‌دهند و برای هر کدام راه‌حلی پیش‌روی‌تان می‌گذارند.

SSH Connection Refused

علامت: 

پیغام “Connection refused” نشان می‌دهد که اتصال به سرور VPS لینوکس از طریق SSH امکان‌پذیر نیست. 

راه‌حل:

  1. مطمئن شوید که VPS لینوکس فعال است و در مدار شبکه قرار دارد. همچنین باید پورت ۲۲ که متعلق به SSH است، در این سرور باز باشد.
  2. وضعیت سرویس SSH را با استفاده از دستور زیر بررسی کنید و از فعال بودن آن مطمئن شوید:
sudo systemctl status sshd
  1. برای مطمئن شدن از باز بودن پورت SSH (پیش‌فرض ۲۲) در فایروال VPS، باید دستور زیر را با Command Line ویندوز اجرا کنید:
  1. از معتبر بودن آدرس IP سرور مجازی‌تان مطمئن شوید و آن را به‌درستی در CMD ویندوز تایپ کنید. همچنین DNS Resolution سرورتان باید فعال و درحال‌اجرا باشد. 
sudo ufw status
iptables -L

SSH connection timed out

علامت: 

تلاش مکرر سیستم شما برای اتصال با سرور لینوکس از طریق SSH که انجام نمی‌شود.

راه‌حل:

  1. مطمئن شوید که VPS روشن است و اتصال درست و پایداری به اینترنت دارد.
  2. مشکلات شبکه یا پیکربندی نادرست، از جمله آدرس‌های IP نادرست یا پورت‎های مسدود‌شده را بررسی کنید.
  3. برای بررسی اتصال شبکه خود و مطمئن شدن از این‌که مشکل از سمت شما است، از دستور زیر در CMD ویندوز استفاده کنید:
ping <VPS_IP>
  1. اگر از NAT یا فایروال روی سیستم‌تان استفاده می‌کنید، باید ارسال و دریافت پورت‌ها را چک کنید و مطمئن شوید که به‌درستی پیکربندی شده‌اند.

Permission denied (public key)

علامت: 

اتصال SSH به‌دلیل مشکلات اصلی احراز هویت رد می‌شود

راه‌حل:

  1. مطمئن شوید که کلید SSH شما به‌درستی به فایل ~/.ssh/authorized_keys VPS اضافه شده است.
  2. مجوزهای دایرکتوری ~/.ssh و فایل authorized_keys (chmod 700 ~/.ssh و chmod 600 ~/.ssh/authorized_keys) را بررسی کنید.
  3. کلاینت SSH را چک کنید. این کلاینت باید از کلید خصوصی صحیح با گزینه -i استفاده کند که چیزی مشابه زیر می‌شود:
ssh -i /path/to/private_key user@VPS_IP

Service Failures

علامت: 

سرویس gThe شروع نمی‌شود یا هنگام شروع، قادر به اجرا و انجام وظایفش نیست و به‌اصطلاح شکست می‌خورد.

راه‌حل:

  1. وضعیت سرویس‌ها را با استفاده از دستور زیر چک کنید:
sudo systemctl status <service_name>
  1. سری به فایل Log سرویس‌ها بزنید و آن را با دقت بخوانید. اگر خطا یا هشداری یافتید، راه‌حل‌های این قسمت را پیاده کنید. بررسی این فایل با دستور زیر ممکن است:
sudo Journalctl -u <service_name>
  1. مطمئن شوید که تمام وابستگی‌های سرویس و ابزارهای آن، به‌درستی نصب و پیکربندی شده‌اند.
  2. فایل‌های پیکربندی را چک کنید. ممکن است حاوی خطاهای سینتکسی یا پیکربندی‌های نادرست در آن وجود داشته باشد که چنین خطایی را ایجاد کرده‌اند.

gThe service is running but not responding

علامت: 

به‌نظر می‌رسد سرویس gThe فعال است، اما مطابق انتظار پاسخ نمی‌دهد یا اصلا کار نمی‌کند.

راه‌حل:

  1. ابتدا سرویس را با دستور زیر مجدد راه‌اندازی کنید:
sudo systemctl restart <service_name>
  1. محدودیت‌های منابع سخت‌افزاری مثل CPU، RAM یا دستگاه‌های ورودی و خروجی دیسک جانبی را با استفاده از ابزارهایی مانند top، htop یا iotop بررسی کنید.
  2. فایل لاگ را باز کنید و گزارش‌های آن را در سرویس‌های خاص ببینید. ممکن است خطاهایی در آن بیابید که خودشان خبر از وجود مشکلات اساسی می‌دهند.

Service configuration changes are not applied

علامت: 

تغییرات در فایل کانفیگ سرویس اعمال نمی‌شوند.

راه‌حل:

  1. ابتدا باید سرویس را پس از ایجاد تغییرات در فایل پیکربندی هسته لینوکس، Restart کنید که با استفاده از دستور زیر، مجدد راه‌‌اندازی می‌شود:
sudo systemctl restart <service_name>
  1. حتما باید فایل پیکربندی درستی را برای هر کانفیگ تغییر دهید و ویرایش کنید.
  2. فایل پیکربندی را باز کنید و به تمام سینتکس‌های آن نگاهی بیندازید. این سینتکس‌ها باید درست نوشته شده باشند؛ وگرنه از راه‌اندازی مجدد سرویس جلوگیری می‌کنند.

جمع بندی 

کانفیگ سرور مجازی لینوکس از طریق خط فرمان ترمینال آن، یک مهارت اساسی برای هر مدیر یا توسعه‌دهنده سیستم است؛ چون فقط با کانفیگ این سیستم‌عامل است که می‌توانید اپلیکیشن‌های وب را روی سرورتان به‌درستی مدیریت کنید و با سرویس‌های مختلف آن کار کنید. این کانفیگ‌ها شامل غیر فعال کردن Name  Service، راه‌اندازی SSH و پیکربندی DNS است که در کنار دیگر تنظیمات، آن‌ها را در این مقاله توضیح دادیم.

شما چه کانفیگی مدنظرتان است که در این مقاله به آن اشاره نکردیم؟ کانفیگ یا سوال‌تان را در بخش نظرات همین مقاله بنویسید تا کارشناسان فنی ما آن را پاسخ دهند.

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

  1. کانفیگ سرور مجازی لینوکس در چه بخش‌هایی انجام می‌شود؟

دیتابیس، DNS، Name Service و SSH، ازجمله کانفیگ‌های مهم در سرور مجازی لینوکس هستند.

  1. کانفیگ VPS لینوکس چه پیش‌نیازهایی می‌خواهد؟

اتصال به سرور از طریق SSH و فعالسازی احراز هویت SSH با کلید عمومی یا خصوصی.

  1. چگونه مشکل Service Failures را هنگام اتصال به سرور مجازی لینوکس با SSH حل کنیم؟

حل این مشکل با چهار روش ممکن است که دو تا از بهترین آن‌ها عبارتند از چک کردن وضعیت سرویس‌ها و خواندن فایل Log سرویس‌های لینوکس.

منابع:

Oracle

is hosting

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *