افزایش امنیت سایت وردپرسی با افزودن سوال امنیتی به فرم ورود
29/10/2024بررسی کامل ارور های سری 500: دلایل، راهحلها و پیشگیری
29/10/2024محدود کردن دسترسی پوشه uploads/edd در NGINX
وردپرس یکی از محبوبترین سیستمهای مدیریت محتوا است که بهطور گسترده برای ساخت وبسایتها و فروشگاههای آنلاین استفاده میشود. با این حال، افزایش امنیت وردپرس یکی از چالشهای اصلی مدیران سایت است. یکی از بخشهای مهم در هر وبسایت فروشگاهی که از وردپرس و افزونه Easy Digital Downloads (EDD) استفاده میکند، پوشه uploads/edd است. این پوشه حاوی فایلهای دانلودی و محصولات فروشی شما است و اگر بهدرستی محافظت نشود، کاربران میتوانند بهصورت مستقیم به این فایلها دسترسی پیدا کنند و آنها را دانلود کنند. در این مقاله، روش محدود کردن دسترسی پوشهuploads/eddرا در وبسرور NGINX آموزش میدهیم.
اهمیت محافظت از پوشه uploads/edd
پوشه uploads/edd یکی از مهمترین بخشهای سایتهایی است که محصولات دیجیتالی را به فروش میرسانند. فایلهای موجود در این پوشه شامل محصولات دانلودی است که کاربران پس از پرداخت وجه به آنها دسترسی پیدا میکنند. اگر این پوشه بهدرستی محافظت نشود، افراد میتوانند بدون پرداخت، فایلها را دانلود کنند. این مسئله میتواند باعث ضرر مالی برای صاحبین سایت شود و از سوی دیگر به اعتبار سایت نیز آسیب بزند.
وبسرور NGINX، برخلاف Apache، از فایلهای .htaccess پشتیبانی نمیکند. به همین دلیل، محدود کردن دسترسی به پوشهها باید از طریق فایلهای پیکربندی NGINX انجام شود.
مراحل محدود کردن دسترسی پوشهuploads/edd در NGINX
برای محدود کردن دسترسی به پوشه uploads/edd، باید مراحل زیر را طی کنید:
۱. اتصال به سرور از طریق SSH
ابتدا باید از طریق SSH به سرور خود متصل شوید. برای این کار میتوانید از نرمافزارهایی مانند PuTTY یا Terminal در سیستمعاملهای لینوکس و مک استفاده کنید. اگر از هاست اشتراکی استفاده میکنید، ممکن است به این دسترسی نداشته باشید و نیاز باشد با پشتیبانی هاست خود تماس بگیرید.
۲. پیدا کردن فایل پیکربندی NGINX
فایل پیکربندی NGINX معمولاً در پوشه /etc/nginx
قرار دارد. برای دسترسی به این فایل، باید از دستورات لینوکس استفاده کنید. دستور زیر شما را به این پوشه هدایت میکند:
۳. ویرایش فایل nginx.conf
پس از ورود به پوشه NGINX، باید فایل nginx.conf
را ویرایش کنید. برای این کار میتوانید از یک ویرایشگر متن مانند vi
استفاده کنید:
این فایل شامل تنظیمات اصلی NGINX است که برای تمامی وبسایتهای میزبانی شده بر روی این سرور اعمال میشود.
۴. پیدا کردن بخش سرور
در فایل nginx.conf
، باید به دنبال بخشی به نام server
باشید. این بخش شامل تنظیمات مربوط به هر دامنه یا سایت است. برای این که مطمئن شوید در بخش درستی قرار دارید، به دنبال دامنه سایت خود بگردید که معمولاً بعد از server_name
نوشته شده است.
۵. اضافه کردن کد محدودیت دسترسی
حال که بخش مربوط به دامنه سایت خود را پیدا کردید، باید کدی را به آن اضافه کنید تا دسترسی به پوشه uploads/edd
محدود شود. کد زیر را در بلاک server
قرار دهید:
این کد باعث میشود که هر کسی که سعی کند بهصورت مستقیم به فایلهای موجود در این پوشه دسترسی پیدا کند، با خطای 403 (ممنوعیت دسترسی) مواجه شود. در نتیجه فقط سیستم سایت وردپرس شما میتواند به این فایلها دسترسی داشته باشد و کاربران تنها از طریق پرداخت موفق و دسترسی قانونی قادر به دانلود فایلها خواهند بود.
۶. ذخیره و خروج
پس از اضافه کردن کد، فایل را ذخیره کرده و از ویرایشگر خارج شوید. برای ذخیره در ویرایشگر vi
، میتوانید از کلیدهای :wq
استفاده کنید.
۷. ریستارت کردن وبسرور NGINX
پس از ویرایش و ذخیره فایل پیکربندی، باید وبسرور NGINX را ریستارت کنید تا تغییرات اعمال شوند. برای این کار از دستور زیر استفاده کنید:
با اجرای این دستور، وبسرور شما ریستارت شده و تنظیمات جدید اعمال میشود.
تست امنیت پوشه uploads/edd
پس از انجام این مراحل، وقت آن است که تست کنید آیا تنظیمات بهدرستی اعمال شدهاند یا خیر. برای این کار، یک فایل از محصولات دیجیتالی خود را انتخاب کنید و آدرس آن را در مرورگر وارد کنید. بهعنوان مثال:
به جای yoursite.ir
آدرس سایت خود و به جای downloadname.zip
نام فایل خود را وارد کنید. اگر پس از وارد کردن آدرس، خطای 403 را دریافت کردید، به این معناست که دسترسی به فایلها محدود شده است. در غیر این صورت، باید دوباره فایل پیکربندی را بررسی کنید و مطمئن شوید که تنظیمات بهدرستی انجام شدهاند.
رفع مشکلات احتمالی
ممکن است در برخی موارد، پس از اعمال این تنظیمات با مشکلاتی مواجه شوید. برخی از مشکلات رایج و راهحلهای آنها به شرح زیر است:
- خطای 500 سرور: اگر پس از ویرایش فایل پیکربندی با خطای 500 مواجه شدید، به این معناست که یک اشتباه در کدهای فایل پیکربندی وجود دارد. به فایل
nginx.conf
بازگشته و مطمئن شوید که تمام براکتها و دستورات بهدرستی وارد شدهاند. - عدم دسترسی کاربران به فایلهای قانونی: در صورتی که کاربران پس از پرداخت نتوانند فایلها را دانلود کنند، باید بررسی کنید که آیا پلاگین EDD بهدرستی پیکربندی شده است یا خیر. همچنین، اطمینان حاصل کنید که فایلها بهدرستی محافظت شده و تنها از طریق سایت قابلدسترسی هستند.
نتیجهگیری
محدود کردن دسترسی پوشه uploads/edd در NGINX یک گام مهم برای افزایش امنیت سایتهای وردپرسی است که از افزونه EDD برای فروش محصولات دیجیتالی استفاده میکنند. با اعمال تنظیمات صحیح در فایل پیکربندی NGINX، میتوانید از دانلود غیرمجاز فایلهای فروشی جلوگیری کرده و از سایت خود در برابر سوءاستفادههای احتمالی محافظت کنید.
مطمئن شوید که پس از اعمال تنظیمات، آنها را تست کنید و بهطور منظم وبسایت خود را از نظر امنیتی بررسی کنید تا هر گونه مشکلی را بهسرعت شناسایی و رفع کنید. در این مقاله چونگی محدود کردن دسترسی پوشهuploads/edd به شما آموزش دادیم امیدواریم اطلاعات مورد نیازتان را دریافت کرده باشید.