DirectAdmin یکی از محبوبترین کنترل پنلهای مدیریت سرور است که به کاربران امکان مدیریت ساده و کارآمد وبسرور، پایگاهداده، ایمیلها و سایر سرویسهای مرتبط را میدهد. نصب DirectAdmin در Ubuntu22 به دلیل پایداری و انعطافپذیری این سیستمعامل، یک گزینه ایدهآل برای مدیران سرور محسوب میشود. در این مقاله، بهصورت گامبهگام به بررسی مراحل نصب DirectAdmin در Ubuntu22 می پردازیم، از بررسی پیشنیازها گرفته تا تنظیمات امنیتی نهایی، خواهیم پرداخت تا بتوانید یک محیط میزبانی قدرتمند و ایمن را راهاندازی کنید:
مرحله اول: نصب پیش نیازها:
۱-نصب بستههای لازم:
sudo apt install wget curl tar net-tools -y
۲-نصب وابستگی های DirectAdmin:
sudo apt install wget gcc g++ make flex bison openssl libssl–dev perl perl–base perl–modules libperl–dev libperl4–corelibs–perl libwww–perl libaio1 libaio–dev zlib1g zlib1g–dev libcap–dev cron bzip2 zip automake autoconf libtool cmake pkg–config python libdb–dev libsasl2–dev libncurses5 libncurses5–dev libsystemd–dev bind9 dnsutils quota patch logrotate rsyslog libc6–dev libexpat1–dev libcrypt–openssl–rsa–perl curl libnuma–dev libnuma1
توضیح مختصری از هر بسته:
-
- apache2: سرور وب Apache که برای ارائه محتوای وب ضروری است.
- mysql-server: سرور پایگاهداده MySQL که برای ذخیره و مدیریت دادهها استفاده میشود.
- mysql-client: کلاینت MySQL که به شما اجازه میدهد از خط فرمان با سرور MySQL تعامل کنید.
- php: زبان اسکریپتنویسی PHP که برای توسعه وبسایتهای سمت سرور استفاده میشود.
- php-cli: رابط خط فرمان برای PHP که به شما اجازه میدهد اسکریپتهای PHP را از ترمینال اجرا کنید.
- php-mysql: افزونه PHP برای MySQL که به PHP اجازه میدهد با سرور پایگاهداده MySQL ارتباط برقرار کند.
- php-gd: افزونه PHP برای پردازش تصویر که برای برنامههای وب مختلف ضروری است.
- php-curl: افزونه PHP برای cURL که به شما اجازه میدهد دادهها را با استفاده از پروتکلهای مختلف منتقل کنید.
- libapache2-mod-php: ماژول Apache برای PHP که به Apache اجازه میدهد فایلهای PHP را پردازش کند.
- libxml2: کتابخانه تجزیهکننده XML C که توسط برنامههای مختلف نیاز است.
- libexpat1: کتابخانه تجزیه XML C که برای برنامههای مختلف ضروری است.
- libssl-dev: بسته توسعه برای OpenSSL که برای ارتباطات امن در اینترنت نیاز است.
- libcurl4-openssl-dev: بسته توسعه برای cURL با پشتیبانی از OpenSSL که برای انتقال امن دادهها ضروری است.
- wget: برای دانلود فایلها از اینترنت.
- gcc, g++: کامپایلرهای C و C++ برای کامپایل کدهای منبع.
- make: ابزار ساخت برای کامپایل و نصب نرمافزارها.
- openssl, libssl-dev: برای رمزنگاری و امنیت ارتباطات.
- perl: زبان برنامهنویسی مورد نیاز برای برخی اسکریپتها.
مرحله دوم: نصب DirectAdmin در Ubuntu22
۱- تهیه لایسنس DirectAdmin:
-
- اگر لایسنس ندارید: به وبسایت رسمی DirectAdmin یا سایت زویپ سرور مراجعه کرده و یک لایسنس خریداری کنید.
- اگر از قبل لایسنس دارید: در صورتی که قصد انتقال سایت به سرور یا هاست جدید را دارید، باید یک لایسنس جدید ایجاد کرده و آن را روی سرور جدید اعمال کنید. توجه داشته باشید که اگر لایسنس فعلی را از سرور قدیمی حذف کنید، سایت قبلی غیرفعال میشود و امکان انتقال اطلاعات به هاست جدید وجود نخواهد داشت. پس از اتمام انتقال و انجام تنظیمات لازم روی سرور جدید، میتوانید لایسنس قدیمی را غیرفعال کنید.
-
- پس از ایجاد لایسنس جدید، از بخش اکانت وارد Client Area شوید و لایسنس مربوط به سایت مورد نظر را انتخاب کنید.
- در صفحه جدیدی که باز میشود، روی شماره لایسنس کلیک کنید تا صفحه جزئیات لایسنس نمایش داده شود. سپس، روی دکمه + کلیک کرده و کد لایسنس را از کادر مربوطه کپی کنید.
۲- نصب DirectAdmin
-
- از دستور wget برای دانلود فایل نصب استفاده کنید:
wget -O setup.sh directadmin.com/setup.sh
-
- با استفاده از دستور زیر سطح دسترسی فایل نصب را تغییر دهید:
chmod 755 setup.sh
-
- نصب ابزارهای ضروری:
بستههای کاربردی مورد نیاز را نصب کنید:
sudo apt install -y net-tools curl vim
-
- نصب لایسنس: دستور زیر را همراه لایسنس وارد کنید تا نصب شروع شود.
./setup.sh [lisence]
-
- تغییر پسورد دایرکت ادمین:
passwd admin
-
- تغییر پورت پیش فرض دایرکت ادمین (۲۲۲۲): برای افزایش امنیت سرور و جلوگیری از دسترسی غیرمجاز با دستور زیر
nano /usr/local/directadmin/conf/directadmin.conf
-
-
- مقدار port=2222 را پیدا کنید و مقدار جدیدی به آن بدهید (مثلاً ۸۰۸۰ یا عددی که استفاده نشده باشد): port=8080
- فایل را ذخیره کنید (CTRL + X سپس Y و Enter).
-
مرحله سوم: نصب یا فعال سازی فایروال و باز کردن پورت دایرکت ادمین:
۱-نصب فایروال csf در ترمینال سرور (گزینه پیشنهادی):
- به دایرکتوری /usr/src بروید:
cd /usr/src
- حذف فایل قدیمی CSF (اگر وجود دارد):
rm -fv csf.tgz
- دانلود آخرین نسخه CSF:
wget https://download.configserver.com/csf.tgz
- فایل دانلود شده را از حالت فشرده خارج کنید:
tar -xzf csf.tgz
- به دایرکتوری CSF بروید:
cd csf
- CSF را نصب کنید:
sh install.sh
پیکربندی خودکار CSF:
-
- CSF بهطور پیشفرض برای کار با DirectAdmin و cPanel پیکربندی شده است و پورتهای استاندارد را باز میکند.
- اگر پورت SSH شما غیراستاندارد است، CSF بهطور خودکار آن را تشخیص داده و پیکربندی میکند.
- CSF همچنین آدرس IP فعلی شما را بهطور خودکار به لیست سفید (Allow List) اضافه میکند تا از قفل شدن خارج نشوید.
بررسی ماژولهای مورد نیاز:
پس از نصب، بررسی کنید که آیا ماژولهای لازم برای CSF نصب شدهاند:
-
- اگر اسکریپت خطای FATAL گزارش ندهد، CSF بهدرستی نصب شده است.
- اگر برخی ویژگیها فعال نشدهاند، نگران نباشید. این ویژگیها معمولاً اختیاری هستند و CSF بدون آنها نیز کار میکند.
نکات مهم پس از نصب CSF:
-
- پورتهای مورد استفاده:
- مطمئن شوید که پورتهای انتخابی (مانند پورت جدید DirectAdmin) توسط برنامههای دیگر استفاده نمیشوند.
- پورتهای انتخابی باید خارج از محدوده پورتهای رزرو شده (۰-۱۰۲۳) باشند.
- فایروال ابری (Cloud Firewall):
- اگر از فایروال ابری (مانند AWS Security Groups یا Google Cloud Firewall) استفاده میکنید، مطمئن شوید که پورتهای لازم (مانند ۸۰۸۰ برای DirectAdmin) در تنظیمات فایروال ابری باز شدهاند.
- تنظیمات CSF:
- پس از نصب، فایل پیکربندی CSF را بررسی و تنظیمات لازم را اعمال کنید:
nano /etc/csf/csf.conf
- پس از نصب، فایل پیکربندی CSF را بررسی و تنظیمات لازم را اعمال کنید:
- بهطور مثال، میتوانید محدودیتهای اتصال (Connection Limits)، محافظت از پورتها (Port Flood Protection) و سایر تنظیمات امنیتی را فعال کنید.
- پورتهای مورد استفاده:
- راهاندازی مجدد CSF:
پس از اعمال تغییرات، CSF را مجدداً راهاندازی کنید:csf -r
نصب CSF برای cPanel و DirectAdmin بهطور پیشفرض برای کار بر روی آن سرورها با تمام پورتهای استاندارد باز پیکربندی شده است.
CSF بهطور خودکار پورت SSH شما را در زمان نصب پیکربندی میکند، اگر در پورت غیر استانداردی اجرا شود.
CSF بهطور خودکار آدرس IP متصل شما را در زمان نصب در صورت امکان در لیست سفید قرار میدهد.
سپس، بررسی کنید که آیا ماژولهای iptables مورد نیاز را دارید:
perl /usr/local/csf/bin/csftest.pl
نگران نباشید اگر نتوانستید تمام ویژگیها را فعال کنید، به شرطی که اسکریپت هیچ خطای FATAL گزارش نکند.
۲- باز کردن پورت جدید در فایروال CSF:
- اگر پورت DirectAdmin را تغییر دادهاید (مثلاً به ۸۰۸۰)، باید این پورت را به فایل پیکربندی CSF اضافه کنید:
فایل csf.conf را ویرایش کنید:
nano /etc/csf/csf.conf
-
- پورت جدید را به خط TCP_IN اضافه کنید:
TCP_IN = "20,21,22,25,53,80,110,143,443,465,587,993,995,8080"
-
- تغییرات را ذخیره و CSF را مجدداً راهاندازی کنید:
csf -r
نکته مهم: حتما فقط از یکی از فایروال ها برای امینت هاست خود فعال نمایید، فعال بودن چندین فایروال به صورت همزمان ممکن است باعث تداخل در قوانین فایروالها اختلال در عملکرد صحیح هاست گردد.
۶. ریاستارت کردن دایرکت ادمین
برای اعمال تغییرات، دایرکت ادمین را مجدداً راهاندازی کنید:
service directadmin restart
۷.بستن پورت قدیمی (اختیاری)
اگر همه چیز بهدرستی کار کرد، میتوانید پورت قبلی را ببندید.
-
- بستن پورت قدیمی در CSF (ConfigServer Security & Firewall) (مثلاً ۲۲۲۲)
۱. ویرایش فایل تنظیمات CSF:
۲. پیدا کردن خطی که شامل TCP_IN و TCP_OUT است.
این خطوط شامل پورتهای مجاز ورودی و خروجی هستند.
مثال قبل از تغییر:
۳. پورت قدیمی را از این خطوط حذف کنید.
مثال بعد از تغییر (در صورت تغییر پورت دایرکت ادمین به ۱۲۵۰):
۴. ذخیره تغییرات و خروج از ویرایشگر (Ctrl + X سپس Y و Enter).
۵. بارگذاری مجدد تنظیمات CSF برای اعمال تغییرات:
۶. بررسی اینکه پورت قدیمی مسدود شده است:
اگر خروجی چیزی نشان نداد، یعنی پورت ۲۲۲۲ بسته شده است.
۸.تست اتصال با پورت جدید
حالا سعی کنید با پورت جدید به دایرکت ادمین متصل شوید:
http://your_server_ip:8080
۹.بررسی پورت جدید
مطمئن شوید که دایرکت ادمین روی پورت جدید کار میکند:
netstat -tulnp | grep directadmin
ss -tulnp | grep directadmin
اگر پورت جدید در لیست باشد، تنظیمات با موفقیت اعمال شده است.
مرحله پنجم: پیکربندی شبکه (اختیاری):
- فایل تنظیمات شبکه را بررسی و در صورت نیاز ویرایش کنید:
sudo nano /etc/netplan/00-installer-config.yaml
- تغییرات را ذخیره کرده و تنظیمات را اعمال کنید:
sudo netplan apply
- تست اتصال شبکه: با استفاده از ابزارهایی مانند ping، اتصال شبکه را بررسی کنید:
ping google.com
مرحله ششم: پیکربندی Apache:
- با دستور زیر فایل پیکربندی Apache را باز کنید:
sudo nano /etc/apache2/apache2.conf
- به دنبال خطوط زیر بگردید و آنها را فعال کنید (علامت # را حذف کنید):
Include /etc/apache2/conf.d/directadmin.conf
Include /etc/apache2/conf.d/php.conf
- فایل را ذخیره کرده و از ویرایشگر متن خارج شوید.
مرحله هفتم: ایمنسازی DirectAdmin
برای افزایش امنیت DirectAdmin و کاهش احتمال حملات سایبری، توصیه میشود اقدامات زیر را انجام دهید:
۱. فعالسازی SSL برای DirectAdmin
برای استفاده از اتصال امن (HTTPS)، باید یک گواهینامه SSL نصب کنید. میتوانید از Let’s Encrypt که رایگان است، استفاده کنید.
فعالسازی Let’s Encrypt:
سپس، در فایل تنظیمات DirectAdmin مسیر SSL را اضافه کنید:
مقادیر زیر را تغییر دهید یا اضافه کنید:
بعد از ذخیره تغییرات، DirectAdmin را ریاستارت کنید:
اکنون میتوانید با https://yourdomain.com:8080 به پنل مدیریت دسترسی داشته باشید.
۲. محدود کردن دسترسی به DirectAdmin با فایروال
میتوانید دسترسی به پنل DirectAdmin را فقط به IPهای مشخصی محدود کنید.
ویرایش فایل تنظیمات فایروال CSF:
IPهای مجاز خود را اضافه کنید:
برای مثال: ۱۹۲.۱۶۸.۱.۱۰۰ ۲۰۳.۰.۱۱۳.۵۰
سپس، CSF را ریاستارت کنید:
۳. فعالسازی ورود دو مرحلهای (۲FA)
برای جلوگیری از دسترسی غیرمجاز، ورود دو مرحلهای را فعال کنید:
-
- از پنل مدیریت DirectAdmin، به Admin Settings بروید.
- گزینه Two-Step Authentication را فعال کنید.
- از یک اپلیکیشن احراز هویت مانند Google Authenticator برای دریافت کد ورود استفاده کنید.
مرحله هشتم: پیکربندی نهایی و بررسی عملکرد
۱. بررسی وضعیت سرویسها
پس از نصب و پیکربندی DirectAdmin، بررسی کنید که سرویسهای اصلی بهدرستی اجرا میشوند:
همه سرویسها باید active (running) باشند.
۲. تنظیم DNS و دامنهها
اگر DirectAdmin را روی یک سرور جدید نصب کردهاید، باید DNS را پیکربندی کنید:
-
- در پنل DirectAdmin، به DNS Administration بروید.
- رکوردهای A، CNAME، MX و TXT را تنظیم کنید.
- آدرسهای NameServer را در پنل دامنه خود تنظیم کنید.
۳. بررسی و فعالسازی Cron Jobs
Cron Jobs را برای اجرای وظایف خودکار فعال کنید:
نمونهای از کرانجاب برای بروزرسانی DirectAdmin:
۴. بهینهسازی عملکرد Apache و PHP
برای افزایش سرعت، میتوانید ماژولهای کش و بهینهسازی را نصب کنید:
۵. بررسی و تست اتصال نهایی
در مرورگر خود، به آدرس https://your_server_ip:8080 بروید و با نام کاربری admin وارد شوید.
برای بررسی عملکرد پورت جدید:
اگر خروجی شامل DirectAdmin بود، پیکربندی شما موفقیتآمیز است.
نتیجهگیری
نصب DirectAdmin در Ubuntu22 یک فرآیند دقیق و جامع است که شامل آمادهسازی اولیه، نصب بستههای ضروری و انجام تنظیمات امنیتی میشود. با رعایت این مراحل، شما میتوانید کنترل پنلی قدرتمند برای مدیریت وبسرور خود ایجاد کنید و از قابلیتهای گسترده آن بهره ببرید. اگرچه این فرآیند ممکن است در ابتدا پیچیده به نظر برسد، اما با توجه به راهنمای دقیق ارائهشده، میتوانید بهراحتی آن را انجام دهید.
اگر به دنبال راهحلی سریعتر و بدون دردسر هستید، پیشنهاد میکنیم از خدمات هاستینگ و سرور مجازی زویپ سرور استفاده کنید. زویپ سرور با ارائه سرورهای پرسرعت، پشتیبانی ۲۴ ساعته و امکانات پیشرفته، بهترین گزینه برای میزبانی وبسایتها و برنامههای شماست. همین امروز به زویپ سرور مراجعه کنید و هاست، دامنه یا سرور مجازی مورد نیاز خود را با بهترین قیمت و کیفیت خریداری کنید. مدیریت سرور هرگز به این آسانی نبوده است!
