سلام عزیزان؛
در جلسه ی قبلی مدرسه، یاد گرفتیم که چطوری فایل های قالب رو قفل کنیم تا ایمنی لازم برقرار بشه. اما امروز میخوایم راجع به مبحث دیگه ای در وردپرس صحبت کنیم که به یک صفحه ی خالی و در نگاه اول برای هر کاربری بی ارزش برمیگرده.
مطمئنا بارها به فایل htaccess. برخورد کردید و یا شایدم مشکلاتی براتون ایجاد کرده. فایل htaccess. یک فایل معمولا خالی هستش مه ارتباط مستقیمی با پیوندهای یکتا برقرار میکنه ولی گاهی در موارد خاصی داخلش کدهایی افزوده میشه.مثلا بعضی از این کدها مربوط به امنیت هم میشه که امروز قراره در موردش ۵ دقیقه ای با هم صحبت کنیم.
حفاظت از وردپرس با htaccess.
فایل htaccess. در عین سادگی یک فایل بسیار قدرتمندی است که عملکرد سرور رو تحت نظارت قرار میده و اثر گذاری اون بالاست و همچنین ارتباط مستقیمی با پیوندهای یکتا داره.این موضوع در بحث امنیت وردپرس بسیار اهمیت داره!
وجود قایل htaccess. و مواظبت از اون به منظور تقویت وبسایت وردپرسی بسیار مهمه. پس دقت کنید هر نوشته ای که داخل این فایل می نویسید به حالت تگ با Begin wordpress# شروع و با End wordpress خاتمه یابد.
مطمئنا با کلیک کردن بر روی تنظیمات، این فایل رو نمی بینید زیرا همیشه به حالت پنهان هستش. به عبارت دیگه، فایل htaccess. به صورت یک فایل غیر قابل رویت است.
فایل wp-config.php یکی از مهمترین فایل هاست که شامل اتصالات به پایگاه داده و تنظیمات آن، جداول پیشوندی، کلیدهای امنیتی و دیگر اطلاعات حساس است.برای حفاظت از این فایل کد زیر رو درون htaccess. وارد کنید:
<files wp-config.php> order allow,deny deny from all </files>
البته میتونید فایل wp-config.php رو از محل نصب جا به جا کنید، با این حال بحث امنیت دیتابیس هم مطرحه.
محدود کردن دسترسی به ناحیه مدیریتی وردپرس با استفاده از آدرس آی پی از قطعه کد زیر امکان پذیره.بعلاوه شما احتیاج به ایجاد یک فایل htaccess. جداگانه دارید که از اون رو میتونید در شاخه ی wp-admin ذخیره کنید.دقت کنید که برای دسترسی به پنل مدیریتی با یک شناسه ی آی پی دیگه احتیاج به تغییر فایل htaccess. هستش.
order deny,allow allow from 192.168.5.1 deny from all
افزودن شناسه ی آی پی میتونه به راحتی انجام بشه و هر چند تا که بخواین رو پوشش بده. برای مثال کد زیر رو ببینید:
order deny,allow allow from 192.168.5.1 allow from 123.456.7.8 deny from all
فایل wp-login.php در ریشه ی وردپرس و در بخش نصب پیدا میشه که میتونه شناسه های آی پی مخصوصی رو محدود کنه! صفحه ی wp-login در نهایت برای هر کاربری که در مسیر wp-admin قرار گرفته باشه باز میشه،بنابراین اگر هر کس غیر از افراد قابل قبول باشند امکان باز شدن آن حتی با داشتن نام کاربری و رمز عبور امکان پذیر نیست!
برای ایجاد چنین سدی در wp-login.php کد زیر رو وارد نمایید:
<Files wp-login.php> order deny,allow Deny from all # allow access from my IP address allow from 192.168.5.1 </Files>
اگه متوجه شدید که فردی تلاش میکنه تا به ناحیه ی مدیریتی وارد بشه با قطعه کد زیر به راحتی میتونین اون رو سرکوب کنید:
order allow,deny deny from 456.123.8.9 allow from all
شاخه ی wp-includes شامل تعداد زیادی فایل های مهم هست که برای اجرای وردپرس استفاده میشن.این پوشه احتیاجی به دیده شدن توسط افراد نداره. برای حفاظت از آن کد زیر رو داخل htaccess. جدیدی وارد کنید:
# Block the include-only files <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^wp-admin/includes/ - [F,L] RewriteRule !^wp-includes/ - [S=3] RewriteRule ^wp-includes/[^/]+.php$ - [F,L] RewriteRule ^wp-includes/js/tinymce/langs/.+.php - [F,L] RewriteRule ^wp-includes/theme-compat/ - [F,L] </IfModule>
برای جلوگیری از جستجوی افراد برای این محتواها کد زیر رو نیز در فایل htaccess. وارد کنید:
Options All -Indexes
حال برای حفاظت از خود فایل htaccess. که شامل این همه کد مهم و امنیتی شده کد زیر رو داخلش به کار ببرید:
<Files .htaccess> order allow,deny deny from all </Files>
پوشه ی wp-content نیز توسط فایل htaccess. قابل حفاظته! برای این کار درباره فایل htaccess. جداگانه ای ایجاد کنید و در پوشه ی wp-content بارگذاری کنید.سپس کد زیر رو درون آن اضافه کنید.
order deny,allow deny from all <files ~ ".(xml|css|jpe?g|png|gif|js)$"> allow from all
همونطور که ملاحظه می کنید تکنیک بالا هم برای حفاظت از wp-content به کار میره! اما به XML ، CSS،Java script و تصاویر پرداخته نمیشه!
دقت کنید این کدها طوری نوشته شدند که به هیچ وجه به کدهای پی اچ پی موجود در قالب و افزونه ها ضرری وارد نمیکنند.
گاهی اوقات کاربران عزیز احساس می کنند فایل htaccess. بی ارزشه و وجودش هیچ سودی نداره اما دقیقا برعکس اگه این فایل حذف بشه باعث خرابی های زیادی میشه و حتی ممکنه خیلی از افزونه های شما نصب نشه. پس در حفظ آن کوشا باشید و اگه زمانی این فایل حذف شد نگران نباشید چون نحوه ی ساختش بسیار ساده است!
فقط دوستای عزیزم یادتون باشه قبل از انجام کارهایی که گفته شد حتما از سایت نسخه ی پشتیبان تهیه کنید.
موفق باشید
سعید
هیچ کدوم از دستورات بالا عمل نمیکنن نمونه: من آی پی خودم رو عوض کردم ولی تونستم وارد پیشخوان بشم
حیدر
بهتر نبود این جمله رو ابتدای جلسه امروز میگفتین؟؟؟
فقط دوستای عزیزم یادتون باشه قبل از انجام کارهایی که گفته شد حتما از سایت نسخه ی پشتیبان تهیه کنید.
سلام
Bahar 11 سال عضو همیار وردپرس
سلام
یعنی شما بعد از این همه تکرار هنوز نمیدونید ؟!
delshad
wp-config.php فایل htccess رو که ساخته بودم پاک کردم درست شد نمیدونم چرا اینجوری شده بود
delshad
چhttp://up.dailymobile.ir/uploads/15_14www-dailymobile-ir-2014-09-15-10-51-59.pngرا اینجوری شد چیکار کنم
Bahar 11 سال عضو همیار وردپرس
سلام
این مشکل چه ارتباطی با بحث مطرح شده داره ؟
با جایگذاری کدها به این حالت رسیدید؟ امکان نداره، این مطلب فقط ایمن سازی میکنه و کاری با بخش نوشتاری نداره
delshad
بازم معذرت میشه تایید کرد فقط کادرش کوچکتر شده این مشکلی داره یا نه ؟
delshad
ببخشید من الان بعضی از این کارا رو انجام دادم ولی دیگه نمیتونم نظرات رو تایید کنم کادرش کوچک شده وقتی رو پاسخ کلیک میکنم فقط لغو داره نه تایید
delshad
سلام ببخشید من یه قسمت رو متوجه نشدم اینکه یعنی وقتی فایل .htaccess ساختم بعد باید ترای اینکه کدی داخلش قرار بدیم باید بنویسم #شروع وردپرس بعد کد رو قرار بدیم و بعد پایان وردپرس ؟ و دوباره اینکه اگه بخوام کدی تو همون فایل قرار بدم باید وسط همون دو فایل قرار بدم یا باید کد شروع و پایان جدید بسازیم و وسط اون دو قرار بدیم ؟
Bahar 11 سال عضو همیار وردپرس
سلام
خیر فقط داخل wp-config.php قرار بدید
محمد
خیلی خیلی ممنون.
خیلی خوب بود.
مسعود
ممنون عالی بود.
مهیار منتظر
بسیار کاربردی بود؛
با تشکر.