محتوای کامل
نصب و پیکربندی cPanel روی سرورهای ایران به دلیل تحریمها و همچنین نیاز به بهینهسازی خاص برای یک تکسایت، نیازمند دقت بالایی است.
نکته مهم اگر هنگام نصب سی پنل در سرور ایران پکیج دانلود نکرد و مشکل خورد به انتهای اموزش مراجعه سپس از ابتدا شروع کنید!
در مورد CSF: این یک تصور غلط است. cPanel همچنان به طور کامل از CSF پشتیبانی میکند و CSF استانداردترین و محبوبترین فایروال برای سیپنل است. جایگزینهای دیگر (مثل APF) قدیمی شدهاند یا (مثل Imunify360) هزینه جداگانه دارند (هرچند Imunify360 فایروال قدرتمندی دارد). من پیکربندی حرفهای CSF را به شما آموزش میدهم چون برای کار شما بهترین است.
در ادامه، راهنمای گامبهگام از صفر تا صد (نصب، امنیت، لایتاسپید، CXS و اختصاص کل منابع) آورده شده است.
بخش اول: پیشنیازها و آمادهسازی سیستم عامل (AlmaLinux ۸)
قبل از نصب سیپنل، باید سرور را آماده کنید.
۱. تنظیم Hostname: نام هاست باید یک FQDN معتبر باشد (مثلاً server.negarnovin.com).
سرور مجازی ایران
Bash
hostnamectl set-hostname server.negarnovin.com
۲. آپدیت سیستم و نصب ابزارهای پایه:
Bash
dnf update -y
dnf install perl curl wget screen -y
۳. غیرفعال کردن Network Manager: سیپنل با NetworkManager تداخل دارد.
Bash
systemctl stop NetworkManager
systemctl disable NetworkManager
بخش دوم: نصب cPanel/WHM (نکته بسیار مهم ایران)
نصب و کانفیگ cPanel در سرور ایرانهشدار تحریم: سیپنل آیپیهای ایران را مسدود کرده است. شما دو راه دارید:
لایسنس اورجینال با تانل: باید کل ترافیک سرور را قبل از نصب از طریق تانل به خارج بفرستید (پیچیده).
لایسنسهای اشتراکی (سیستمی): در ایران اکثر دیتاسنترها و هاستینگها از لایسنسهای “سیستمی” استفاده میکنند. اگر لایسنس اشتراکی خریدهاید، نباید دستور رسمی نصب سیپنل را بزنید. باید دستوری که فروشنده لایسنس به شما داده را اجرا کنید.
اما اگر روش دور زدن تحریم را دارید، دستور نصب رسمی این است:
Bash
cd /home
screen
curl -o latest -L https://securedownloads.cpanel.net/latest
sh latest
(دستور screen باعث میشود اگر اینترنت شما قطع شد، نصب متوقف نشود. نصب حدود ۳۰ تا ۶۰ دقیقه زمان میبرد).
بخش سوم: نصب و کانفیگ فایروال (CSF)
همانطور که گفتم، CSF بهترین گزینه است.
۱. نصب CSF:
Bash
cd /usr/src
rm -fv csf.tgz
wget https://download.configserver.com/csf.tgz
tar -xzf csf.tgz
cd csf
sh install.sh
۲. پیکربندی حرفهای CSF (برای امنیت و ایران): فایل کانفیگ را باز کنید: nano /etc/csf/csf.conf
تغییرات زیر را اعمال کنید:
TESTING = "0" (خروج از حالت تست)
RESTRICT_SYSLOG = "3" (جلوگیری از دسترسی یوزرها به لاگها)
تغییر پورت SSH: (پیشنهاد میشود پورت SSH را در فایل /etc/ssh/sshd_config عوض کنید و سپس اینجا در بخش TCP_IN آن پورت جدید را اضافه کنید).
Country Code: برای امنیت بیشتر، میتوانید دسترسی به پورت SSH را فقط به IP ایران (IR) محدود کنید (بخش CC_ALLOW_FILTER).
ذخیره کنید و فایروال را ریستارت کنید:
Bash
csf -r
بخش چهارم: نصب وبسرور لایتاسپید (LiteSpeed)
لایتاسپید برای سرعت عالی است. شما نیاز به لایسنس لایتاسپید دارید (یا تریال ۱۵ روزه).
۱. نصب پلاگین رسمی:
Bash
cd /usr/src
wget http://www.litespeedtech.com/packages/cpanel/lsws_whm_plugin_install.sh
sh lsws_whm_plugin_install.sh
rm -f lsws_whm_plugin_install.sh
۲. فعالسازی:
وارد WHM شوید.
به منوی LiteSpeed Web Server بروید.
گزینه Install LiteSpeed Web Server را بزنید.
لایسنس خود را وارد کنید (یا Trial را انتخاب کنید).
در تنظیمات، Port Offset را روی 0 بگذارید (تا جایگزین آپاچی شود).
تیک Enable PHP SuEXEC را بزنید.
روی Install کلیک کنید.
۳. سوئیچ به لایتاسپید: بعد از نصب، در همان پلاگین گزینه Switch to LiteSpeed را بزنید تا وبسرور فعال شود.
بخش پنجم: نصب و کانفیگ PHP (برای بالاترین سرعت)
۱. نصب نسخههای PHP: در WHM به بخش EasyApache 4 بروید. روی Customize کلیک کنید.
در بخش PHP Versions، نسخههای ۸.۱، ۸.۲ و ۸.۳ را انتخاب کنید (نسخههای قدیمی را حذف کنید مگر اینکه اسکریپت شما نیاز داشته باشد).
در بخش PHP Extensions برای همه نسخهها، اکستنشنهای زیر را حتما نصب کنید: opcache, mbstring, zip, gd, curl, mysqlnd, xml, bcmath, intl, imagick.
۲. بهینهسازی PHP (MultiPHP INI Editor): چون کل سرور برای یک سایت است، دستمان باز است. مقادیر زیر را برای نسخه PHP فعال سایت اعمال کنید:
memory_limit: 512M یا 1024M (بسته به رم سرور)
max_execution_time: 300
max_input_vars: 5000
post_max_size: 128M
upload_max_filesize: 128M
opcache.enable: On (بسیار مهم برای سرعت)
بخش ششم: امنیت پیشرفته (CXS و تنظیمات سیستمی)
۱. نصب CXS (ConfigServer eXploit Scanner): این افزونه پولی است و نیاز به لایسنس دارد.
Bash
cd /usr/src
wget https://download.configserver.com/cxsinstaller.tgz
tar -xzf cxsinstaller.tgz
perl cxsinstaller.pl ipv4
(بعد از نصب باید در WHM ویزارد آن را طی کنید و پیشنهاد میشود قابلیت Realtime Scanning یا WatchUpload را فعال کنید تا فایلهای مخرب حین آپلود حذف شوند).
سرور مجازی فرانسه
۲. ایمنسازی پوشه tmp:
Bash
/scripts/securetmp
۳. غیرفعال کردن کامپایلرها (برای جلوگیری از نفوذ): در WHM به بخش Compiler Access بروید و آن را غیرفعال کنید (Disable).
بخش هفتم: اختصاص کل منابع به negarnovin
چون میخواهید فقط یک سایت داشته باشید و کل قدرت سرور روی آن باشد:
۱. ساخت اکانت: در WHM به Create a New Account بروید.
Domain: negarnovin.com
Username: (مثلا negar)
۲. عدم استفاده از CloudLinux (یا تنظیم نامحدود): اگر CloudLinux نصب نکردهاید، به طور پیشفرض هیچ محدودیتی روی اکانت نیست. اگر CloudLinux نصب است (که برای تک سایت توصیه نمیشود چون سربار دارد)، باید در LVE Manager لیمیتهای این اکانت را روی Unlimited بگذارید.
۳. بهینهسازی دیتابیس (MariaDB/MySQL) برای تک سایت: فایل /etc/my.cnf را ویرایش کنید. مهمترین پارامتر innodb_buffer_pool_size است.
اگر سرور فقط دیتابیس و وب است، حدود ۶۰٪ تا ۷۰٪ کل RAM سرور را به این عدد اختصاص دهید.
مثال (اگر سرور ۱۰ گیگ رم دارد): innodb_buffer_pool_size=6G
سپس سرویس را ریستارت کنید: systemctl restart mysql.
بخش هشتم: تنظیمات نهایی کش (LSCache)
چون لایتاسپید نصب کردید، حتماً روی سایت وردپرسی خود (اگر وردپرس است) افزونه LiteSpeed Cache را نصب کنید.
در تنظیمات پلاگین وردپرس، Guest Mode و Object Cache (با استفاده از Redis یا Memcached) را فعال کنید.
برای نصب Redis در سیپنل:
Bash
dnf install epel-release -y
dnf install redis -y
systemctl enable redis
systemctl start redis
و سپس اکستنشن php-redis را از طریق EasyApache ۴ نصب کنید.
خلاصه چکلیست:
[ ] تغییر Hostname
[ ] نصب cPanel (با لایسنس مناسب ایران)
[ ] نصب و کانفیگ فایروال CSF (پورتها و محدودیتها)
[ ] نصب LiteSpeed و فعالسازی روی پورت ۸۰/۴۴۳
[ ] نصب CXS و فعالسازی اسکن آنی
[ ] بهینهسازی my.cnf (اختصاص ۷۰٪ رم به دیتابیس)
[ ] نصب Redis و اتصال به سایت برای کشینگ.
آیا مایل هستید مقادیر دقیق فایل my.cnf را بر اساس میزان رم سرورتان برای شما محاسبه و آماده کنم؟ (لطفاً مقدار رم سرور را بفرمایید).
