آموزش ها-هاست نگار

نحوه نصب پشته LEMP در اوبونتو 22.04 (پارت 1)

پشته LEMP گروهی از نرم افزارها است که می تواند برای ارائه صفحات وب پویا و برنامه های کاربردی وب نوشته شده به زبان PHP استفاده شود. این یک مخفف است که یک سیستم عامل لینوکس را با یک وب سرور Nginx توصیف می کند. داده های Backend در پایگاه داده MySQL ذخیره می شوند و پردازش پویا توسط PHP انجام می شود.
این آموزش نحوه نصب پشته LEMP را در سرور اوبونتو 22.04 نشان می دهد. سیستم عامل اوبونتو از بخش لینوکس پشته مراقبت می کند. نحوه راه اندازی و راه اندازی بقیه اجزا را شرح خواهیم داد. جهت خرید سرور مجازی میتوانید کلیک نمایید.
 
پیش نیازها
برای تکمیل این آموزش، باید به یک سرور اوبونتو 22.04 به عنوان یک کاربر sudo معمولی و غیر روت دسترسی داشته باشید و یک فایروال روی سرور خود فعال باشد.
 
مرحله 1 – نصب وب سرور Nginx
برای نمایش صفحات وب برای بازدیدکنندگان سایت، از Nginx، یک وب سرور با کارایی بالا استفاده می کنید. برای دریافت این نرم افزار از مدیر بسته APT استفاده خواهید کرد. از آنجایی که این اولین بار است که از apt برای این جلسه استفاده می کنید، با به روز رسانی فهرست بسته سرور خود شروع کنید:
sudo apt update
پس از آن، apt install را برای نصب Nginx اجرا کنید:
sudo apt install nginx
وقتی از شما خواسته شد، Y و ENTER را فشار دهید تا تأیید کنید که می خواهید Nginx را نصب کنید. پس از اتمام نصب، وب سرور Nginx فعال و در سرور اوبونتو 22.04 شما در حال اجرا خواهد بود.
اگر فایروال ufw را فعال کرده اید، باید به Nginx اجازه اتصال دهید. Nginx پس از نصب، چند تنظیمات مختلف برنامه UFW را ثبت می کند. برای بررسی اینکه کدام نمایه های UFW در دسترس هستند، اجرا کنید:
sudo ufw app list
توصیه می شود محدودترین تنظیماتی را فعال کنید که همچنان به ترافیک مورد نیاز شما اجازه دهد. از آنجایی که در این راهنما SSL را برای سرور خود پیکربندی نکرده اید، فقط باید به ترافیک HTTP معمولی در پورت 80 اجازه دهید. این مورد را با اجرای موارد زیر فعال کنید:
sudo ufw allow 'Nginx HTTP'
با بررسی وضعیت می توانید تغییر را تأیید کنید:
sudo ufw status
این خروجی نشان می دهد که ترافیک HTTP اکنون مجاز است:
 
Output
Status: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
Nginx HTTP ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
Nginx HTTP (v6) ALLOW Anywhere (v6)
 
با اضافه شدن قانون جدید فایروال، می توانید با دسترسی به نام دامنه سرور یا آدرس IP عمومی در مرورگر وب خود، راه اندازی سرور را بررسی کنید. اگر نام دامنه ای به سمت سرور خود ندارید و آدرس IP عمومی سرور خود را نمی دانید، می توانید با اجرای یکی از دستورات زیر آن را پیدا کنید:
ip addr show or hostname -I
با این کار چند آدرس IP چاپ می شود. می توانید هر یک از آنها را به نوبه خود در مرورگر وب خود امتحان کنید. به عنوان یک جایگزین، می توانید بررسی کنید که کدام آدرس IP قابل دسترسی است، همانطور که از مکان های دیگر در اینترنت مشاهده می شود:
curl -4 icanhazip.com
آدرسی را که دریافت می کنید در مرورگر وب خود کپی کنید و شما را به صفحه پیش فرض Nginx می برد:
http://server_domain_or_IP
اگر صفحه پیش فرض را دریافت کردید، به این معنی است که Nginx را با موفقیت نصب کرده اید و ترافیک HTTP را برای وب سرور خود فعال کرده اید.
 
مرحله 2 - نصب MySQL
اکنون که یک وب سرور راه اندازی شده دارید، باید سیستم پایگاه داده را برای ذخیره و مدیریت داده ها برای سایت خود نصب کنید. MySQL یک سیستم مدیریت پایگاه داده محبوب است که در محیط های PHP استفاده می شود. مجدداً از apt برای تهیه و نصب این نرم افزار استفاده کنید:
sudo apt install mysql-server
هنگامی که از شما خواسته شد، نصب را با فشار دادن Y و سپس ENTER تأیید کنید.
هنگامی که نصب به پایان رسید، توصیه می شود یک اسکریپت امنیتی که از قبل با MySQL نصب شده است را اجرا کنید. این اسکریپت برخی از تنظیمات پیش فرض نامطمئن را حذف می کند و دسترسی به سیستم پایگاه داده شما را قفل می کند. اسکریپت تعاملی را با اجرای دستور زیر شروع کنید:
sudo mysql_secure_installation
از شما سوالی پرسیده می شود که آیا می خواهید VALIDATE PASSWORD PLUGIN را پیکربندی کنید. با Y برای بله یا هر چیز دیگری برای خیر (ادامه بدون فعال کردن) پاسخ دهید.
اگر پاسخ «بله» را بدهید، از شما خواسته می‌شود سطحی از اعتبارسنجی رمز عبور را انتخاب کنید. به خاطر داشته باشید که اگر 2 را برای قوی ترین سطح وارد کنید، هنگام تلاش برای تنظیم رمز عبوری که حاوی اعداد، حروف بزرگ و کوچک و کاراکترهای خاص نباشد، خطاهایی دریافت خواهید کرد:
 
Output
There are three levels of password validation policy:
LOW Length >= 8
MEDIUM Length >= 8, numeric, mixed case, and special characters
STRONG Length >= 8, numeric, mixed case, special characters and dictionary file
Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 1
 
صرف نظر از اینکه که VALIDATE PASSWORD PLUGIN را انتخاب کرده اید یا خیر، سرور از شما می خواهد که یک رمز عبور برای کاربر روت MySQL انتخاب و تأیید کنید. این را با روت سیستم اشتباه نگیرید. کاربر روت پایگاه داده یک کاربر اداری با امتیازات کامل بر روی سیستم پایگاه داده است.
اگر تأیید رمز عبور را فعال کرده باشید، قدرت رمز عبوری که برای روت خود وارد کرده اید به شما نشان داده می شود و سرور شما از شما می پرسد که آیا می خواهید با آن رمز عبور ادامه دهید یا خیر. اگر از رمز عبور فعلی خود راضی هستید، Y را برای "بله" در اعلان فشار دهید.
 
برای بقیه سوالات نیز، Y را فشار دهید و در هر اعلان کلید ENTER را فشار دهید. با این کار برخی از کاربران ناشناس و پایگاه داده آزمایشی حذف می شوند، ورود به سیستم روت از راه ریموت غیرفعال می شود و این قوانین جدید بارگیری می شود تا MySQL بلافاصله تغییراتی که ایجاد کرده اید را اعمال کند. وقتی کارتان تمام شد، تست کنید که آیا می‌توانید به کنسول MySQL وارد شوید:
sudo mysql
این کد شما را به سرور MySQL به عنوان کاربر روت پایگاه داده متصل می شود که با استفاده از sudo هنگام اجرای این دستور استنباط می شود. شما باید خروجی زیر را دریافت کنید:
 
Output
.Welcome to the MySQL monitor. Commands end with ; or \g
Your MySQL connection id is 10
Server version: 8.0.28-0ubuntu4 (Ubuntu)
.Copyright (c) 2000, 2023, Oracle and/or its affiliates
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
.owners
.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement
<mysql
 
برای خروج از کنسول MySQL، موارد زیر را بنویسید:
exit
توجه داشته باشید که برای اتصال به عنوان کاربر اصلی نیازی به ارائه رمز عبور ندارید، حتی اگر هنگام اجرای اسکریپت mysql_secure_installation رمز عبور را تعریف کرده باشید. این کار به این دلیل است که وقتی روی اوبونتو نصب می‌شود، روش احراز هویت پیش‌فرض برای کاربر ادمین، MySQL auth_socket است، نه با روشی که از رمز عبور استفاده می‌کند.
برای افزایش امنیت، بهتر است حساب‌های کاربری اختصاصی کمتر با امتیازات گسترده‌تر برای هر پایگاه داده تنظیم شده باشد، به خصوص اگر قصد دارید چندین پایگاه داده روی سرور خود میزبانی کنید.
سرور MySQL شما اکنون نصب و ایمن شده است. در مرحله بعد، PHP، رکن نهایی در پشته LEMP را نصب خواهید کرد.
 
مرحله 3 – نصب PHP
شما Nginx را برای ارائه محتوای خود و MySQL را برای ذخیره و مدیریت داده های خود نصب کرده اید. اکنون می توانید PHP را برای پردازش کد و تولید محتوای پویا برای وب سرور نصب کنید.
در حالی که Apache مفسر PHP را در هر درخواست تعبیه می کند، Nginx به یک برنامه خارجی نیاز دارد تا پردازش PHP را مدیریت کند و به عنوان پلی بین خود مفسر PHP و وب سرور عمل کند.
این کار عملکرد کلی بهتر را در اکثر وب سایت های مبتنی بر PHP فراهم می کند، اما به پیکربندی اضافی نیاز دارد. شما باید php8.1-fpm را نصب کنید که مخفف "PHP fastCGI process manager" است و از نسخه فعلی PHP استفاده می کند تا به Nginx بگویید درخواست های PHP را برای پردازش به این نرم افزار ارسال کند. علاوه بر این، شما به php-mysql نیاز دارید، یک ماژول PHP که به PHP اجازه می دهد با پایگاه های داده مبتنی بر MySQL ارتباط برقرار کند.
برای نصب بسته های php8.1-fpm و php-mysql، اجرا کنید:
sudo apt install php8.1-fpm php-mysql
وقتی از شما خواسته شد، Y و ENTER را فشار دهید تا نصب تایید شود. اکنون اجزای PHP خود را نصب کرده اید. در مرحله بعد، Nginx را برای استفاده از آنها پیکربندی خواهید کرد. که در پارت 2 این آموزش آمده است.
امیدواریم تا اینجا از این مقاله آموزشی برای شما مفید بوده باشد، برای دیدن باقی آموزش ها میتوانید وارد منوی پشتیبانی بخش آموزش ها شوید، در صورتی که درباره این آموزش به مشکل یا سوالی برخورد کردید، میتوانید آن را در بخش دیدگاه بیان کنید.

 

 

 

نوشتن دیدگاه


تصویر امنیتی
تصویر امنیتی جدید

خرید هاست

 

آموزش های مرتبط