آموزش محدود کردن دسترسی ورود به وردپرس با ای پی (IP)
آموزش محدود کردن دسترسی ورود به وردپرس با ای پی (IP)
سلام به تمامی همراهان خوب وبسایت اکادمی ساسان درویش پور 😘😍
محدود کردن دسترسی در وردپرس یک اقدام امنیتی مهم ورود به سیستم است که ما از آن برای کاهش دسترسی غیرمجاز به صفحات یا پستهای وبسایت شما استفاده میکنیم.
چندین دلیل وجود دارد که شما می خواهید این کار را انجام دهید.
هکرها می توانند از افزایش امتیاز برای دسترسی به عملکردهای اصلی سایت مانند نصب پلاگین استفاده کنند.
این امر باعث میشود که محدودیت دسترسی ادمین توسط IPها صورت بگیرد و نه فقط نقشها مهم باشند.
همچنین ممکن است تیم شما رشد کرده باشد و بخواهید اطمینان حاصل کنید که فقط اعضای خاصی به برخی از عملکردهای سایت مانند انتشار محتوا دسترسی دارند.
صرف نظر از اینکه دلیل شما برای محدود کردن دسترسی ادمین در سایت وردپرسی شما چیست، ما اینجا هستیم تا شما را از راه های مختلف برای انجام این کار راهنمایی کنیم.
اگر میخواهید دسترسی سرپرست را به همه افراد به جز گروه خاصی محدود کنید، میتوانید IPها را در لیست سفید (مثلاً رهبران تیم) قرار دهید.
محدود کردن دسترسی به پنل مدیریت وردپرس شما می تواند معانی زیادی در وردپرس داشته باشد.
در سطح ابتدایی تر، وردپرس یک ویژگی پیش فرض برای همه نقش های کاربری دارد.
به عنوان مثال، نقش مدیرکل دسترسی کامل دارد ، اما یک مشترک نمی تواند هیچ تغییری در سایت وردپرس شما ایجاد کند.
این یک راه آسان برای تعیین قوانینی است که به کاربر این اجازه را بدهد که بتواند یا نتواند در داشبورد مدیریت شما اقدامی انجام دهد.
در حالی که مدیریت نقشهای کاربر و امتیازات دسترسی بخش مهمی از امنیت است، حفظ آن در مدت طولانی دشوار است.
راه حل بسیار بهتر، نصب افزونهای برای گزارش فعالیت است.
گزارش فعالیت دقیقاً به شما نشان می دهد که چه اقداماتی در وبسایت شما انجام می شود، چه زمانی و توسط چه کسی.
این نوع افزونه مسئولیت پذیری و امنیت را به وبسایت شما در یک حرکت ساده اضافه می کند و به شما امکان مشاهده کامل سایت خود را در هر مکان می دهد.
بنابراین ، در اینجا روشهای مختلفی برای محدود کردن دسترسی به داشبورد مدیریت وردپرس شما وجود دارد که ما همه آن ها را بررسی خواهیم کرد.
پس با ما همراه باشید 👇
محدود کردن دسترسی در وردپرس توسط نقش های کاربر
تنظیم صحیح نقش های کاربر ، ساده ترین راه برای محدود کردن دسترسی در وردپرس است.
نقشهای مختلف با داشبوردهای خاص خود با سطوح دسترسی متفاوت همراه هستند.
وردپرس مجهز به سیستم نقش کاربری قوی و قدرتمندی است که ابزاری غنی از ویژگیها را برای کنترل دسترسی و مجوزها با سطوح مختلف نقش در اختیار مدیران قرار میدهد.
با اختصاص نقشهای کاربری خاص، میتوانید سطوح دسترسی را متناسب با مسئولیتهای هر یک از اعضای تیم تنظیم کنید.
در اینجا نقشهای اصلی کاربر و امتیازات مرتبط با آنها آمده است:
شماره | نقش | دسترسی کاربر | مسئولیت کاربر |
---|---|---|---|
1 | ادمین / سوپر ادمین | کنترل کامل بر روی همه ویژگیها در یک سایت یا برای Super Admins در یک راهاندازی چند سایتی، در کل شبکه. | مدیریت سایت و شبکه، از جمله امکان نصب افزونه ها و تم ها و مدیریت کاربران. |
2 | ویرایشگر | اختیار انتشار و مدیریت پست ها و صفحات. | می تواند پست های نوشته شده توسط سایر کاربران را ویرایش و منتشر کند و آنها را برای کارهای مدیریت محتوا بدون نیاز به کنترل کامل اداری مناسب کند. |
3 | نویسنده | اجازه انتشار و مدیریت پست های خود را دارند. | کنترل محدود به محتوایی است که آنها نوشته اند. نویسندگان میتوانند پستهای خود را منتشر، ویرایش و حذف کنند، اما اختیار تغییر محتوای ایجاد شده توسط دیگران را ندارند. |
4 | مشارکت کننده | می توانند پست های خود را بنویسند و مدیریت کنند. | مشارکتکنندگان میتوانند پستهای خود را ایجاد و ویرایش کنند، اما فاقد مجوز انتشار آنها هستند. در عوض، محتوای آنها نیاز به تأیید یک ویرایشگر یا مدیر دارد. |
5 | مشترک | امتیازات محدود، عمدتاً بر مدیریت نمایه متمرکز است. | مشترکین حداقل قابلیتها را دارند که عمدتاً حول مدیریت نمایههایشان متمرکز است. آنها فاقد حقوق انتشار یا ویرایش هستند و این نقش را برای کاربرانی مناسب می کند که فقط به محتوای خاصی بدون مسئولیت ویرایشی نیاز دارند. |
برای محدود کردن دسترسی کامل به یک کاربر ، توصیه می کنیم نقش مشترک را به آنها اختصاص دهید.
وردپرس فقط اجازه تغییرات در نمایه خود را می دهد.
مرحله 1: تب کاربران را باز کنید
در منوی سمت چپ داشبورد مدیریت خود، روی کاربران کلیک کنید.
این شما را به جایی می برد که می توانید کاربران موجود را مدیریت کنید و با افزودن جدید یک کاربر جدید ایجاد کنید یا به ویرایش کاربران موجود بپردازید.
اضافه کردن یا ویرایش یک کاربر
مرحله 2: تنظیمات کاربر را ویرایش کنید
پس از کلیک بر روی افزودن جدید یا ویرایش ، شما می توانید نقش یک کاربر را در صفحه جزئیات کاربر سفارشی کنید.
میتوانید نام کاربری ، ایمیل ، شماره تماس ، رمز عبور و… برای کاربر جدید تعیین کنید.
حتی میتوانید این موارد برای کاربرا موجود ویرایش کنید.
ویرایش تنظیمات کاربر
مرحله 3: نقش را انتخاب کنید
در صفحه جزئیات کاربر، به دنبال منوی کشویی نقش بگردید.
این منو نقش فعلی تعیین شده برای کاربر را نمایش می دهد.
برای حفظ امنیت و محدود کردن دسترسی در وردپرس بهتر است نقش مشترک را انتخاب کنید.
انتخاب نقش برای کاربر
مرحله 4: تنظیمات را ذخیره کنید
پس از انتخاب نقش مورد نظر، روی بهروزرسانی کاربر یا افزودن کاربر جدید کلیک کنید.
این دکمه برای ذخیره تغییرات است.
ذخیره تنطیمات کاربر
این مراحل را برای سایر کاربران تکرار کنید و نقش هایی را بر اساس مسئولیت های آنها در تیم اختصاص دهید.
برای ایجاد این تغییرات، نقش شما باید نقش یک مدیر کل باشد.
این یک روش متا برای مشاهده نحوه عملکرد نقش های کاربر در زمان واقعی است.
محدود کردن دسترسی ادمین در وردپرس توسط افزونه
اگر محدود کردن دسترسی با استفاده از نقشهای کاربر آن را کاملاً قطع نمیکند، میتوانید از یک افزونه برای محدود کردن دسترسی کاربر در وردپرس استفاده کنید.
برای این کار از افزونه ای به نام ” Remove Dashboard Access “ استفاده می کنیم.
مدیر کل میتواند سطوح دسترسی را تنظیم دقیق کنند و اجازه ورود را بر اساس نقشهای کاربر یا بر اساس قابلیتهای وردپرس داخلی نقشها بدهند.
علاوه بر این، این افزونه انعطافپذیری را در گزینههای تغییر مسیر فراهم میکند و مدیران را قادر میسازد تا URLهای تغییر مسیر سفارشی را بر اساس نقشهای کاربر انتخاب کنند.
برای مثال، اگر یک سایت عضویت را مدیریت میکنید، میتوانید اعضای مختلف را به داشبورد اعضا هدایت کنید.
همچنین ویژگیهای اختیاری مانند اجازه یا محدود کردن دسترسی به نمایه کاربر و نمایش پیامهای سفارشی در صفحه ورود به سیستم را ارائه میدهد که به طور کلی به یک محیط امن و کاربر پسند کمک میکند.
مرحله 1: یک افزونه جدید اضافه کنید
در داشبورد مدیریت وردپرس خود، به افزونه ها بروید و روی افزودن جدید کلیک کنید. .
افزودن افزونه جدید
مرحله ۲: Remove Dashboard Access را نصب و فعال کنید
Remove Dashboard Access را در نوار جستجو جستجو کنید. سپس، روی نصب و بر روی فعال کردن کلیک کنید.
نصب و فعال کردن Remove Dashboard Access
مرحله 3: تنظیمات افزونه را سفارشی کنید
پس از فعالسازی، منو Remove Dashboard Access را از نوار کناری انتخاب کنید.
تنظیمات دسترسی را با توجه به نیاز خود پیکربندی کنید.
سطوح دسترسی مورد نظر را انتخاب کنید، URL های تغییر مسیر را تنظیم کنید، و ویژگی های اختیاری مانند دسترسی به نمایه کاربر و پیام های ورود سفارشی را فعال یا غیرفعال کنید.
پیکر بندی و سفارسی سازی تنطیمات افزونه
مرحله 4: تنظیمات را ذخیره کنید
پس از پیکربندی تنظیمات، روی دکمه ذخیره تغییرات کلیک کنید تا محدودیت های دسترسی جدید و ویژگی های سفارشی سازی شده اعمال شود.
برای آزمایش پیکربندی ، از حساب مدیریت وردپرس خود خارج شوید و سعی کنید با استفاده از نقش های کاربری مختلف به داشبورد مدیریت دسترسی پیدا کنید و اثرات افزونه را بر اساس تنظیمات پیکربندی شده مشاهده کنید.
ذخیره تنظیمات پیکر بندی
عیب یابی
ممکن است متوجه شوید که کاربران واقعی در حال قفل شدن هستند. ( امکان کار با وبسایت را ندارند.)
در این موارد اطمینان حاصل کنید که کاربر دارای مجوزهای مناسب است.
اگر این کار نکرد، تنها راه حل این است که افزونه را غیرفعال کنید.
اگر به داشبورد خود دسترسی دارید، آن را در صفحه افزونه غیرفعال کنید.
اگر نه، با استفاده از پنل مدیریت هاست خود به سایت وردپرس خود متصل شوید.
سپس، به پوشه پلاگین در مسیر wp-content و سپس plugins بروید.
پوشه plugins در ریشه public_html قرار دارد.
در پوشه پلاگین Restrict Admin Access را پیدا کنید و نام آن را تغییر دهید.
بررسی کنید که آیا کاربر اکنون قادر به ورود به سیستم است یا خیر.
محدود کردن دسترسی
محدود کردن دسترسی با IP
اگر به دنبال راهی برای محدود کردن دسترسی تعداد کمی از کاربران هستید، این روش ممکن است راه حل مناسبی برای باشد.
شما اساساً همه را مسدود میکنید و فقط آدرسهای IP مد نظر را عبور میدهید.
در نظر بگیرید که در یک مهمانی لیستی برای میهمانان به شما داده اند برای ورود جمعیت کمتر به میهمانی.
این راه حلی نیست که برای همه سایت ها کارساز باشد ، صرفاً به این دلیل که اکثر مردم می خواهند سایت هایشان برای جهان قابل مشاهده باشد.
با این حال، برای یک سایت خصوصی ، مانند یک شرکت داخلی ، مناسب خواهد بود.
به طور کلی، این یک روش عالی برای مدیرانی است که خواهان کنترل گرانول هستند.
مرحله 1: آدرس IP خود را پیدا کنید.
عبارت control Panel را سرچ کنید.
سپس آن را باز کنید.
باز کردن control Panel
حالا عبارت network and sharing Center را پیدا کنید.
آن را جستجو کنید.
پیدا کردن network and sharing Center
بعد از باز کردن network and sharing Center در سمت راست روی گزینه Cheng Adapter setting کلیک کنید
پیدا کردن نام اینترنت خود
در صفحه باز شده نام اینترنت (فای وای) خود را پیدا کنید.
روی آن کلیک راست کنید و گزینه Status را بزنید.
ور در قسمت IPv4 میتوانید IP خود را مشاهده کنید.
گاهی ممکن است IP شما توسط مرکز ارائه دهنده اینترنت شما پنهان شده باشد.
در این صورت باید به سایت اصلی مدیریت اینترنت خود مراجعه کنید و IP را پیدا کنید.
مرحله 2 : وارد هاست شوید.
وارد پنل مدیریت هاست خود شوید و فایل htaccess. را از مسیر public-html و wp-admin دانلود کنید.
و کد زیر را در آن کپی کنید.
AuthUserFile /dev/null
AuthGroupFile /dev/null
AuthName "WordPress Admin Access Control"
AuthType Basic
order deny,allow
deny from all
# whitelist user1's IP address
allow from 12.34.56.789
# whitelist user2's IP address
allow from 12.34.56.789
آدرس IP واقعی رایانه خود را جایگزین «12.34.56.789» کنید.
اگر IP داینامیک دارید، آماده باشید که هر زمان که IP شما تغییر کرد، این را به روز کنید، زیرا در غیر این صورت، به سایت خود دسترسی نخواهید داشت.
هر تعداد مجاز از خطوط را که برای سایر اعضای تیم و IP آنها لازم است اضافه کنید. تغییرات را در فایل htaccess. ذخیره کنید.
مرحله 3 :htaccess. را آپلود کنید.
به پنل مدیریت هاست خود برگردید و فایل htaccess. را از مسیر public-html و wp-admin مجدد آپلود کنید.
آیا باید آدرس IP اعضای داخلی تیم را در لیست سفید قرار دهید؟
در حالی که قرار دادن همه IP ها در لیست سیاه و قرار دادن IP های داخلی تیم در لیست سفید ممکن است رویکردی ساده برای افزایش امنیت به نظر برسد ، ملاحظات متعددی وجود دارد که این استراتژی را کمتر موثر و چالش برانگیز می کند، به ویژه هنگامی که هدف آن مقیاس پذیری و سازگاری در یک چشم انداز فناوری پویا است.
- چالش های مقیاس پذیری: اجرای استراتژی متکی بر فهرست سیاه و لیست سفید بر اساس آدرس های IP می تواند برای تیم های کوچک با تنظیمات ثابت مناسب باشد.
با این حال، با رشد تیمها یا توزیع زیرساختها ، حفظ فهرست جامع و بهروز از IPهای مجاز و مسدود شده به یک کار دلهرهآور تبدیل میشود.
مقیاس پذیری لازم برای انطباق با نیازهای در حال تغییر کسب و کار و پیشرفت های فناوری را ندارد.
- تغییرات بالقوه آدرس IP: آدرسهای IP ثابت نیستند ، به خصوص در سناریوهایی که شامل سرویسهای ابری ، دستگاههای تلفن همراه یا کار از راه دور میشوند.
اعضای تیم ممکن است شبکهها را تغییر دهند ، از دستگاههای مختلف استفاده کنند یا از مکانهای مختلف متصل شوند که منجر به تغییرات مکرر آدرس IP شود.
صرفاً اتکا به فهرست مجاز IP های داخلی می تواند منجر به محدودیت های دسترسی ناخواسته به دلیل این تغییرات IP پویا شود.
- پیچیدگی برای IPهای پویا: IPهای پویا که معمولاً در شبکههای مسکونی و تلفن همراه استفاده میشوند، از نظر مدیریت با چالش مواجه هستند.
تلاش برای قرار دادن این IPهای پویا در لیست سفید پیچیده است، زیرا آنها می توانند اغلب تغییر کنند و اغلب به صورت پویا توسط ارائه دهندگان خدمات اینترنت (ISP) اختصاص داده می شوند.
این پیچیدگی باعث ایجاد یک بار اداری و حفره های امنیتی بالقوه می شود.
- به روز رسانی دستی مورد نیاز است: حفظ لیست سفید IP به روز نیاز به مداخله دستی دارد.
افزودن یا حذف IP ها در حالی که اعضای تیم مکان یا دستگاه را تغییر می دهند می تواند منجر به تاخیر و خطا شود.
بهروزرسانی دستی احتمال نظارتها را افزایش میدهد و آسیبپذیریهای امنیتی را برای بهرهبرداری باز میگذارد.
- محافظت محدود در برابر VPN: قرار دادن لیست سیاه و سفید بر اساس آدرسهای IP ممکن است محافظت محدودی در برابر کاربرانی که از شبکههای خصوصی مجازی (VPN) استفاده میکنند، ارائه دهد.
کاربرانی که از VPN استفاده می کنند می توانند به طور موثر آدرس های IP واقعی خود را پنهان کنند و کنترل های دسترسی مبتنی بر IP را کمتر موثر نشان دهند.
این محدودیت، به ویژه در سناریوهایی که استفاده از VPN قانونی است، اما ممکن است به اشتباه به عنوان یک تهدید امنیتی تعبیر شود، خطر ایجاد می کند.
- محدودیتهای دسترسی بالقوه برای کاربران: فقط اتکا به کنترلهای دسترسی مبتنی بر IP میتواند سهواً دسترسی کاربران قانونی را محدود کند.
به عنوان مثال، اگر آدرس IP آنها در لیست سفید قرار نگیرد ، ممکن است کارمندانی که به راه دور سفر می کنند یا از راه دور کار می کنند ، در دسترسی به منابع لازم با مشکل مواجه شوند.
این محدودیت انعطافپذیری و بهرهوری تیم را مختل میکند.
عیب یابی
اگر نمی توانید دسترسی کاربر را به درستی محدود کنید، بررسی کنید که نحو کد صحیح باشد.
مطمئن شوید که آدرس های IP مناسب را اضافه کرده اید. بررسی کنید که فایل htaccess. که آپلود کردید نام مناسبی داشته باشد.
با استفاده از کد سفارشی دسترسی مدیریت وردپرس را محدود کنید
یک راه دیگر برای محدود کردن کامل دسترسی این است که کد را به فایل function.php موضوع خود اضافه کنید.
اگر یک غیر مدیر سعی کند به بخش مدیریت دسترسی پیدا کند، کد آنها را به صفحه اصلی وبسایت هدایت می کند.
مرحله 1 : وارد پنل مدیریت هاست خود شوید
مرحله 2 : از پوشه public-html فایل functions.php را دانلود کنید.
مرحله 3 : فایل را باز کرده و کد زیر را در آن جایگذاری کنید.
add_action( 'init', 'blockusers_init' );
function blockusers_init() {
if ( is_admin() && ! current_user_can( 'administrator' ) && ! ( defined( 'DOING_AJAX' ) && DOING_AJAX ) ) {
wp_redirect( home_url() );
exit;
}
}
مرحله 4 : فایل را ذخیره و آپلود کنید.
عیب یابی
هنگامی که تغییرات ایجاد شده در فایل functions.php وردپرس در سایت منعکس نمی شود، ممکن است عوامل متعددی دخیل باشند.
✅ مکانیسمهای ذخیرهسازی، هم در سطح صفحه و هم در سطح مرورگر، میتوانند نسخه قدیمی صفحه را حفظ کنند و پاک کردن کشها یا غیرفعال کردن موقت افزونههای کش را ضروری میسازد.
✅ فایل functions.php را برای خطاهای نحوی بررسی کنید، زیرا حتی یک اشتباه می تواند پردازش فایل را مختل کند و مانع اعمال تغییرات شود.
✅ تأیید اینکه فایل functions.php صحیح را ویرایش می کنید، به ویژه در زمینه تم های فرزند، بسیار مهم است. در صورت استفاده از طرح زمینه فرزند، مطمئن شوید که هر دو طرح زمینه والدین و فرزند فعال هستند، زیرا در صورت غیرفعال بودن طرح زمینه، ممکن است تغییرات در functions.php طرح زمینه فرزند اعمال نشود.
اقدامات امنیتی دیگر
محدود کردن دسترسی به پنل مدیریت وبسایت راهی برای ایمن سازی سایت شما است، اما به تنهایی محافظت جامعی در برابر تمام تهدیدات احتمالی ایجاد نمی کند.
به طور مرتبط، هکرها را از سوء استفاده از آسیبپذیریهای افزایش امتیاز در فایلهای پلاگین یا تم باز نمیدارد.
همچنین نمی تواند از سایت شما در برابر حساب های در معرض خطر کاربران واقعی محافظت کند. به همین دلیل است که ما اقدامات امنیتی بیشتری را توصیه می کنیم، مانند:
- نصب یک افزونه امنیتی: یک افزونه امنیتی معتبر مانند Wordfence را نصب کنید و از اسکن بدافزار پیشرفته آن استفاده کنید و قابلیت حذف Wordfence به طور مرتب آسیب پذیری ها و بدافزارهای احتمالی را اسکن می کند. اگر هک شده اید، Wordfence را نصب کنید تا بدافزار خود را با یک کلیک حذف کنید.
- اجرای فایروال: یک فایروال قوی برای برنامه وب خود به طور خودکار با Wordfence تنظیم کنید. این اولین خط دفاعی در برابر حملات brute force است.
- افزایش امنیت ورود به سیستم: امنیت ورود به سیستم را با ترکیب ویژگیهایی مانند احراز هویت دو مرحلهای یا ورود بدون رمز عبور تقویت کنید.
- نظارت بر فعالیت کاربر: از یک گزارش فعالیت ، برای نظارت فعال و ردیابی فعالیت کاربر برای افزایش آگاهی امنیتی استفاده کنید.
- غیرفعال کردن ثبت نام کاربر: اگر وبسایت شما نیازی به ثبت نام کاربر ندارد، برای به حداقل رساندن آسیبپذیریهای احتمالی ، اقدام پیشگیرانه برای غیرفعال کردن آن انجام دهید.
در آخر….
ایمن سازی پنل مدیریت وردپرس برای جلوگیری از دسترسی غیرمجاز ضروری است.
تکنیک هایی مانند لیست سفید IP و مدیریت نقش کاربر ، گام های کلیدی برای کاهش میزان عملکردی است که کاربران مختلف دارند.
این از هکرها جلوگیری میکند که قادر به ایجاد تغییرات اصلی در سایت شما، مانند تغییر چهره، با استفاده از داشبورد شما هستند.
با این حال، مهم است بدانید که انجام این کارها ممکن است کافی نباشد.
برای مثال نمی تواند در برابر آسیب پذیری های افزونه ها محافظت کند.
برای اطمینان از محافظت قوی، فایروال پیشرفته وردپرس به شما توصیه میکنیم از خدمات پشتیبانی سایت وردپرسی در این زمینه کمک بگیرید.
امیدوارم این پست به خوبی توانسته باشد به سوالات شما پاسخ دهد و در رفع مشکل شما کمکی کرده باشد..
منتظر نظرات و پیشنهادات سازنده ی شما عزیزان هستیم.
بدرود 👋
درباره نرگس حاجی حسینی
نرگس حاجی حسینی هستم. فارقالتحصیل مهندسی نرم افزار درسال 1402 . در حوزه طراحی وب و تولید محتوا حدود 2سال فعالیت دارم. علاقه مند به طراحی سایت وهمیشه در دنیای تکنولوژی به دنبال اپدیت نگه داشتن خودم هستم.در تیم آکادمی ساسان درویش پور به عنوان نویسنده و تولید کننده محتوا در خدمت شما عزیزان هستم
نوشتههای بیشتر از نرگس حاجی حسینی
دیدگاهتان را بنویسید