آذرسیس

نحوه نصب LEMP در Rocky Linux
5/5 - (2 امتیاز)

راکی لینوکس توزیعی رایگان از لینوکس و سیستم عاملی متن باز است که به سرعت در محیط های سازمانی و محاسباتی با کارایی بالا (HPC) مورد استفاده قرار گرفته است. راکی لینوکس امنیت، پایداری و مقیاس پذیری را در بین برنامه های سازمانی و حیاتی تامین می کند. اصطلاح LEMP مخفف (Linux، Nginx، MariaDB یا MySQL و PHP) است. پشته LEMP در واقع مجموعه نرم افزاری است که متن باز می باشد و در مجموع میزبانی بسیاری از برنامه ها و وب سایت های پرترافیک را می پذیرد. همچنین برای ارائه برنامه های کاربردی وب، چه در مرحله تولید و چه در مراحل چرخه توسعه، قابل استفاده است.

آموزش نصب LEMP در راکی لینوکس 

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

نصب LEMP در راکی لینوکس

پیش نیازهای نصب LEMP

پشته LEMP با زبان PHP برای برنامه های کاربردی وب نوشته شده که به ارائه صفحات PHP کمک می کند، سرورهای Ngnix به عنوان وب سرور عمل می کنند، سیستم عامل لینوکس و همچنین MariaDB یا MySQL پایگاه داده ای برای وب سایت را ارائه می کنند. قبل از شروع نصب پشته LEMP، مطمئن شوید که پیش نیازهای زیر را دارید:

  • یک نمونه از Rocky Linux 8 با یک کاربر sudo پیکربندی شده
  • داشتن دسترسی SSH به نمونه راکی لینوکس

اکنون، بیایید نحوه نصب را قدم به قدم با هم دنبال کنیم:

3 مرحله نصب LEMP در راکی لینوکس

مراحل نصب پشته LEMP در راکی لینوکس در این قسمت به صورت زیر توضیح داده شده است. همچنین، نحوه پیکربندی بلوک سرور Nginx برای میزبانی دامنه شما هم در این مقاله مورد بررسی قرار گرفته.

مرحله 1: نصب وب سرور Nginx

Nginx یک وب سرور رایگان، متن باز و با کارایی بالا می باشد. پشته LEMP از Nginx برای ارائه ترافیک HTTP استفاده می کند.

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

sudo dnf upgrade

یا

sudo dnf update -y

نکته: به روز رسانی dnf یک نام مستعار منسوخ شده است.

اکنون، Nginx را در راکی لینوکس نصب کنید:

sudo dnf install nginx

به محض نصب Nginx، آن را فعال کنید تا در زمان بوت استارت شود و سپس سرویس Nginx را راه اندازی کنید:

sudo systemctl enable nginx
sudo systemctl start nginx

برای تأیید اینکه آیا وب سرور در حال اجرا است یا خیر، دستور زیر را اجرا کنید:

$ sudo systemctl status nginx

برای بررسی نسخه Nginx که نصب شده است، از نمونه زیر استفاده کنید:

nginx -v

برای اینکه روی فایروال ترافیک HTTP و HTTPS را مجاز کنید، دستور زیر را اجرا کنید: (البته در صورتی که می خواهید وب سرور را با SSL رمزگذاری کنید)

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https

برای اینکه تغییراتی که انجام دادید موثر باشد، سرویس فایروال را دوباره بارگیری کنید:

sudo firewall-cmd --reload

برای تایید تغییراتتان می توانید تنظیمات فایروال فعلی را فهرست کنید:

sudo firewall-cmd --permanent --list-all

browser را باز کنید و IP سرور یا نام دامنه را وارد کنید تا صفحه پیش فرض Nginx را در راکی لینوکس ببینید. در راکی لینوکس، صفحه پیش فرض وب Nginx در usr/share/nginx/html/ قرار دارد.

مرحله 2: نصب پایگاه داده MariaDB 

MariaDB پایگاه داده fork MySQL از Oracle است. این پایگاه داده عملکرد بهبود یافته ای را نسبت به MySQL نشان می دهد و موتورهای ذخیره سازی بهتری را ارائه می دهد. در اینجا ما نصب MariaDB را برای ذخیره داده های وب سایت شما آموزش می دهیم.

 

نصب LEMP در راکی لینوکس

 

برای نصب MariaDB در راکی لینوکس، دستور زیر را اجرا کنید:

sudo dnf install mariadb-server mariadb

برای راه اندازی سرویس MariaDB، به صورت زیر عمل کنید:

sudo systemctl start mariadb

اکنون وضعیت MariaDB را تایید کنید:

sudo systemctl status mariadb

در نهایت، MariaDB باید راه اندازی شود. برای فعال کردن MariaDB در بوت سیستم دستور زیر را اجرا کنید:

sudo systemctl enable mariadb

MariaDB که تازه نصب شده هنوز ایمن نیست. بسته نصب آن دارای یک اسکریپت از پیش نصب شده است که به بهبود امنیت سرور پایگاه داده شما کمک می کند.

برای شروع اسکریپت، مانند دستور زیر عمل کنید:

sudo mysql_secure_installation

رمز عبور روت در نصب MariaDB خالی است. این اسکریپت اجازه می دهد تا یک رمز عبور جدید را تنظیم کنید، کاربران ناشناس را حذف کنید، ورود روت به صورت راه دور را ممنوع کنید و پایگاه داده آزمایشی را حذف کنید.

اکنون می توانید با استفاده از رمز عبور حساب روتی که به تازگی تنظیم کرده اید، به سرور MariaDB وارد شوید.

sudo mysql -u root -p

مرحله 3: نصب زبان برنامه نویسی PHP 

PHP عمدتا برای تولید محتوای داینامیک برای وب سرور استفاده می شود. AppStream راکی لینوکس از PHP نسخه 7.2، 7.3، و 7.4 استفاده می کند. نسخه پیش فرض ما PHP 7.2 است. برای نصب آخرین نسخه PHP، می توانید مخزن رایگان Remi را فعال کنید.

نصب زبان برنامه نویسی PHP 

برای فهرست کردن نسخه PHP موجود به صورت زیر عمل کنید:

sudo dnf module list php

برای فعال کردن نمونه PHP 7.4، دستور زیر را اجرا کنید:

sudo dnf module enable php:7.4

Nginx به PHP-FPM (مدیر فرآیند PHP fastCGI) نیاز دارد که برای عملکردی بهتر، مترجمی بین PHP و وب سرور است. اکنون می توانیم PHP، PHP-FPM و رایج ترین پسوندهای PHP را نصب کنیم.

sudo dnf install php php-fpm php-cli php-gd php-curl php-zip php-mbstring php-opcache php-intl php-mysqlnd

برای تأیید، نسخه PHP را با دستور زیر بررسی کنید:

php -v

بیایید اکنون نحوه پیکربندی Nginx برای اجرای PHP با استفاده از PHP-FPM را بررسی کنیم. برای این کار، باید چند تغییر در پیکربندی PHP-FPM در etc/php-fpm.d/www.conf/ ایجاد کنیم. فایل پیکربندی PHP-FPM را در ویرایشگر مورد علاقه خود باز کنید:

sudo vi /etc/php-fpm.d/www.conf

دو متغیر user و group را از apache به nginx تغییر دهید:

user = nginx
group = nginx

اکنون PHP-FPM را با دستور زیر شروع کنید:

sudo systemctl start php-fpm

PHP-FPM را در راه اندازی مجدد سیستم فعال کنید، دستور زیر را اجرا کنید:

sudo systemctl enable php-fpm

اکنون می توانید وضعیت آن را بررسی کنید، دستور زیر را اعمال کنید:

sudo systemctl status php-fpm

در پایان، Nginx را دوباره راه اندازی کنید تا تغییرات پیکربندی ایجاد شده توسط php-fpm بارگیری شود:

sudo systemctl restart nginx

اکنون می توانیم PHP، افزونه‌ها و FPM را با افزودن اسکریپت info.php به فهرست پیش فرض webroot تایید کنیم:

sudo vi /usr/share/nginx/html/info.php

محتوای زیر را به فایل info.php اضافه کنید:

<?php

phpinfo();

?>

Nginx را مجددا راه اندازی کنید تا تغییراتی که انجام دادید موثر باشد.

sudo systemctl restart nginx

یک مرورگر باز کنید و نام دامنه یا IP سرور و سپس info.php را ببینید:

http://server-ip-or-domain-name.com/info.php

برای حفظ امنیت اطلاعات PHP شما توصیه می شود پس از تأیید، صفحه php.info را حذف کنید. اکنون کار ما با نصب پشته LEMP در راکی لینوکس به پایان رسید. حال بیایید نحوه پیکربندی بلوک سرور Nginx را برای میزبانی یک وب سایت مانند زیر بررسی کنیم.

 پیکربندی بلوک سرور Nginx در راکی لینوکس

در یک دامنه خاص، Nginx بلوک سرور تنظیمات را مشخص می کند. هر وب سایت باید یک Document Root داشته باشد که حاوی فایل های وب سایت باشد. شما می توانید در هر جایی که بخواهید آن را ایجاد کنید. ما می خواهیم آن را برای یک وب سایت فرضی به نام example.com در var/www/example.com/public_html/ ایجاد کنیم.

ابتدا برای ایجاد دایرکتوری Document Root دستور زیر را اجرا کنید:

sudo mkdir -p /var/www/example.com/public_html

یک فایل index.html در Document Root ایجاد کرده و محتوای اصلی HTML زیر را اضافه کنید:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Welcome</title>
</head>
<body>
<h1>Congratulations! The example.com website is working</h1>
</body>
</html>

مالکیت دایرکتوری Document Root و همه فایل های داخل آن را به کاربر Nginx یعنی www-data تغییر دهید.

sudo chown -R nginx: /var/www/example.com

حال بیایید بلوک سرور Nginx را که به طور پیش فرض در دایرکتوری /etc/nginx/conf.d قرار دارد، بوجود آوریم. با استفاده از ویرایشگر مورد علاقه خود یک فایل بلوک سرور ایجاد کنید:

sudo vi /etc/nginx/conf.d/example.com.conf

محتوای زیر را به فایل ایجاد شده اضافه کنید، example.com را با نام دامنه خود جایگزین کنید:

server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com/public_html;
index index.html;
access_log /var/log/nginx/example.com.access.log;
error_log /var/log/nginx/example.com.error.log;
}

پیکربندی nginx را برای هر گونه خطای syntax بررسی کنید:

sudo nginx -t

برای اینکه تغییرات ایجاد شده موثر باشد، سرویس Nginx را دوباره راه اندازی کنید:

sudo systemctl restart nginx

مرورگر خود را باز کنید و به http://example.com بروید تا صفحه وبی را که ایجاد کرده اید، ببینید.

تا به اینجا، شما یاد گرفتید که چگونه پشته LEMP را در سیستم عامل راکی لینوکس نصب کنید. اگر می خواهید سیستم عامل های دیگر یا راکی لینوکس را در اختیار داشته باشید، می توانید از سایت آذرسیس به تمام این سیستم ها دسترسی پیدا کنید و سرورهای مجازی و سرور اختصاصی را نیز از سایت ما مهیا کنید. کارشناسان ما نیز در صورت نیاز می توانند شما را در این مسیر و نصب سرورها یاری کنند. پس با فرستادن تیکت با ما در ارتباط باشید.

نتیجه گیری

در این آموزش ابتدا تعریف مختصری از LEMP ارائه دادیم و سپس نحوه نصب پشته LEMP را در راکی لینوکس به صورت سه مرحله اصلی و مهم به شما کاربران عزیز آموزش دادیم. نحوه پیکربندی بلوک سرور Nginx برای دامنه تان یک مرحله بسیار مهم است. همچنین، قبل از اقدام به نصب مطمئن شوید که پیش نیازهای لازم را دارید. امیدوارم این آموزش برای شما مفید بوده باشد.

سوالات متداول:

1. تفاوت میان LEMP و LAMP چیست؟

lamp و lemp پشته های وب متن بازی هستند. البته LAMP وب سرور آپاچی 2 را پشتیبانی می کند، در حالی که LEMP از وب سرور Nginx برای انتقال داده ها از طریق http پشتیبانی می کند

2. چطور می توان پشته LEMP را ایمن کرد؟

ابتدا باید بروز رسانی خودکار را فعال کنید.
سپس فایروال را پیکربندی کنید.
خدمات استفاده نشده را غیرفعال کنید.
Fail2ban را نصب کنید.
اطلاعات حساس آپاچی را مخفی کنید.
mod-security را نصب و فعال کنید.
mod-evacive را نصب و فعال کنید.
استقرار در سرور mySQL را ایمن کنید.

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

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