مرکز آموزش

نحوه اعمال محدودیت در دسترسی به صفحه لاگین وردپرس

  • امنیت, لاگین, وردپرس
  • 8

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

جهت دریافت IP اختصاصی، لازم است با سرویس دهنده اینترنت خود تماس و اقدام به خرید IP اختصاصی کنید. با خرید IP اختصاصی، همواره IP شما ثابت بوده و تغییر نخواهد کرد.


1- پس از لاگین به cPanel، به بخش Files > File Manager مراجعه کنید.
2- بر روی دکمه Settings واقع در بالای صفحه سمت راست، کلیک کنید.
3- از بخش Document root نام دامنه متصل به وردپرس را انتخاب و سپس چکباکس Show Hidden Files را فعال کنید. در نهایت بر روی دکمه Save، کلیک نمایید.
4- به مسیر نصب وردپرس مراجعه و فایل htaccess. موجود در آن را جهت ویرایش باز کنید.
5- با جایگزینی IP خود در کدهای زیر، اقدام به درج این کدها در فایل htaccess. نمایید:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_URI} ^(.*)?wp-login\.php(.*)$ [OR]
RewriteCond %{REQUEST_URI} ^(.*)?wp-admin$
RewriteCond %{REMOTE_ADDR} !^192\.168\.1\.1$
RewriteRule ^(.*)$ - [R=403,L]
</IfModule>
در صورتیکه تعداد IPهای شما بیش از یک عدد است، لازم است خط زیر را بنا بر تعداد مورد نیاز با IP مربوطه، تکرار کنید:

RewriteCond %{REMOTE_ADDR} !^192\.168\.1\.1$


اعمال محدودیت بدون IP اختصاصی!

چنانچه از IP اختصاصی استفاده نمی کنید بنابراین باید روشی اتخاذ شود که در عین اعمال محدودیت، دسترسی های مشکوک شناسایی و مسدود شوند. از آنجاییکه که اغلب حملات Brute Force و دسترسی های غیر مجاز با فراخوانی مستقیم فایل wp-login.php اتفاق می افتد بنابراین از این موضوع استفاده و دسترسی ها را تنها به آدرس دامنه محدود می کنیم. به آن معنا که بدون توجه به IP، تنها افرادی مجاز به دسترسی به صفحه لاگین خواهند بود که آدرس را به طور کامل با درج نام دامنه وارد کرده باشند:
مثال: http://domain.com/wp-login.php

به منظور اجرای این روش، کافیست کد زیر را با جایگذاری دامنه خود به جای example.com، در فایل htaccess. واقع در مسیر نصب وردپرس وارد کنید:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{HTTP_REFERER} !^http://(.*)?example\.com [NC]
RewriteCond %{REQUEST_URI} ^(.*)?wp-login\.php(.*)$ [OR]
RewriteCond %{REQUEST_URI} ^(.*)?wp-admin$
RewriteRule ^(.*)$ - [F]
</IfModule>

تمامی حقوق مادی و معنوی این مطلب متعلق به HiSupport است.
کپی برداری از مطالب تنها با ذکر منبع و لینک به وبسایت HiSupport بلامانع است.


آیا این آموزش به شما کمک کرد؟