محدود کردن دسترسی به مدیریت وردپرس (wp-admin) بر اساس آدرس IP

فهرست مطالب
تأمین امنیت بخش مدیریت وردپرس با چند کلیک؛ محدود کردن دسترسی با IP!
بسیاری از افراد تا زمانی که با یک حمله سایبری مواجه نشوند، به فکر تأمین امنیت بخش مدیریت وردپرس خود نمیافتند. ما تجربه کمک به کاربران بسیاری را داشتهایم که وبسایتهایشان به دلیل باز گذاشتن کامل ناحیه مدیریت، مورد حمله قرار گرفته بودند.
به همین دلیل، یکی از مؤثرترین روشها برای افزایش امنیت، محدود کردن دسترسی به بخش مدیریت بر اساس آدرس IP است. این تکنیکی است که ما به صورت موفقیتآمیز در وبسایتهای مشتریانی به کار گرفتهایم که تنها چند کاربر مشخص از شبکههای شناخته شده نیاز به دسترسی دارند.
در این مقاله، به شما آموزش خواهیم داد که چگونه به راحتی و با یک تغییر کوچک در فایل .htaccess، دسترسی به ناحیه مدیریت وردپرس را مسدود کنید. این روشی ساده اما بسیار کارآمد برای محافظت از وبسایت شما در برابر تهدیدات رایج امنیتی است.
چرا دسترسی به مدیریت وردپرس را از طریق آدرس IP محدود کنیم؟
اگر وبسایت وردپرسی دارید، امنیت آن را جدی بگیرید. هرچند هسته وردپرس به خودی خود بسیار امن است، اما همیشه اقدامات بیشتری برای محافظت در برابر هکرها و حملات Brute-Force وجود دارد.
حملات سایبری میتوانند وبسایت شما را مختل کرده و به اعتبار و درآمدتان آسیب بزنند. هکرها میتوانند اطلاعات را سرقت کنند، بدافزار توزیع کنند و حتی باعث قرار گرفتن دامنه شما در لیست سیاه موتورهای جستجو مانند گوگل شوند.
یکی از بهترین روشها برای مسدود کردن دسترسی هکرها و افزایش امنیت وردپرس، محافظت از بخش مدیریت سایت در برابر دسترسیهای غیرمجاز است.
اگر تنها شما یا چند کاربر مورد اعتماد به پنل مدیریت نیاز دارید، یک راهکار هوشمندانه محدود کردن دسترسی به پوشه wp-admin
و صفحه ورود به آدرسهای IP ثابت تیم شماست.
هر عضو تیم از طریق یک آدرس IP مشخص به سایت متصل میشود. با مسدود کردن تمام آدرسهای IP دیگر، حتی اگر هکرها نام کاربری و رمز عبور شما را به دست آورند، نمیتوانند وارد سایت شوند. در این حالت، آنها با پیام خطای «ممنوع. شما اجازه دسترسی به این منبع را ندارید» مواجه خواهند شد.
در ادامه، به بررسی نحوه محدود کردن دسترسی مدیریت وردپرس بر اساس آدرس IP میپردازیم.
نحوه محدود کردن دسترسی به مدیریت وردپرس بر اساس آدرس IP
برای افزایش امنیت سایت، میتوانید دسترسی به بخش مدیریت وردپرس را تنها به آدرسهای IP مشخصی محدود کنید. اولین قدم برای این کار، تهیه لیستی از آدرسهای IP تمام افرادی است که باید به این بخش دسترسی داشته باشند.
از اعضای تیم خود بخواهید که آدرس IP خود را از تمام مکانهایی که معمولاً از آنجا کار میکنند، برای شما بفرستند. اگر فردی از چندین محل مختلف کار میکند، باید آدرس IP مربوط به هر مکان را در لیست خود وارد کنید. همچنین، فراموش نکنید که آدرس IP خودتان را نیز به این لیست اضافه کنید.
چگونه آدرس IP خود را پیدا کنیم؟
پیدا کردن آدرس IP بسیار ساده است. کافیست به یکی از سایتهای زیر مراجعه کنید:
با باز کردن این سایتها، آدرس IP شما به صورت خودکار نمایش داده میشود.
برای جمعآوری آدرسهای IP، میتوانید از وبسایتهای نمایش IP استفاده کنید. از اعضای تیم خود نیز بخواهید که به همین شیوه آدرس IP خود را پیدا کرده و آن را به شما اعلام کنند تا یک لیست کامل از IPهای مجاز تهیه کنید.
با در اختیار داشتن این لیست، میتوانید دسترسی به بخشهای مختلف سایت را بر اساس آدرسهای IP محدود کنید. در ادامه، دو روش اصلی برای این کار را به شما آموزش میدهیم تا بتوانید متناسب با نیازهای خود عمل کنید.
🚨 هشدار جدی و مهم: در بخشهای پیش رو، شما با نحوه ویرایش مستقیم فایلهای اصلی سایت برای محدود کردن دسترسی مدیر آشنا خواهید شد. این عملیات بسیار حساس بوده و کوچکترین خطا میتواند به از کار افتادن یا اختلال جدی در عملکرد وبسایت منجر شود. به همین خاطر، پیش از شروع، تهیه یک نسخه پشتیبان (Backup) کامل از سایت کاملاً ضروری است.
1. محدود کردن دسترسی بر اساس آدرس IP با استفاده از فایل .htaccess
این روش به شما امکان میدهد تا با استفاده از فایل .htaccess، دسترسی به بخشهای خاصی از وبسایت خود را محدود کنید. فایل .htaccess یک فایل پیکربندی مهم در سطح سرور است که پیش از بارگذاری کامل وبسایت وردپرسی شما اجرا میشود. به همین دلیل، اضافه کردن دستورالعملهای امنیتی به آن، سطح حفاظت بالاتری را برای سایت شما فراهم میکند.
برای اعمال این تغییرات، شما به یک کلاینت FTP (مانند FileZilla) یا برنامه مدیریت فایل ارائه شده توسط شرکت میزبان خود نیاز دارید. اگر با استفاده از FTP آشنا نیستید، میتوانید به راهنمای ما در مورد نحوه استفاده از FTP برای مدیریت فایلها در وردپرس مراجعه کنید.
پس از ورود به پنل FTP یا مدیریت فایل، به پوشه wp-admin/ وبسایت خود بروید. در این پوشه، به دنبال فایل .htaccess بگردید. توجه داشته باشید که این فایل معمولاً پنهان است، بنابراین اگر آن را پیدا نکردید، لازم است گزینه نمایش فایلهای پنهان را در نرمافزار خود فعال کنید.
اگر فایل .htaccess در پوشه wp-admin/ شما وجود ندارد، باید یک فایل جدید با همین نام ایجاد کرده و آن را در این پوشه ذخیره کنید.
⚠️ هشدار مهم: هرگز فایل .htaccess اصلی (ریشه) وبسایت خود را ویرایش نکنید. ویرایش این فایل ممکن است باعث از دسترس خارج شدن وبسایت شما برای بازدیدکنندگان شود. حتماً اطمینان حاصل کنید که فایل .htaccess واقع در مسیر wp-admin/ را ویرایش میکنید.
مراحل ویرایش:
- تهیه نسخه پشتیبان: پیش از هر تغییری، یک نسخه پشتیبان از فایل .htaccess فعلی تهیه کرده و آن را در کامپیوتر خود ذخیره کنید. این کار به شما کمک میکند در صورت بروز مشکل، به سادگی به حالت قبل بازگردید.
- ویرایش فایل: پس از تهیه نسخه پشتیبان، فایل .htaccess را باز کرده و کد مورد نظر را به آن اضافه کنید.
ابتدا فایل را با نام اعضای تیم خود ویرایش کنید. سپس، در جایی که عبارت xx.xx.xx.xxx نوشته شده، آدرسهای IP که قبلاً جمعآوری کردهاید را جایگذاری کنید. پس از ذخیره فایل، فقط این آدرسهای IP قادر به دسترسی به بخش مدیریت وردپرس خواهند بود.
به یاد داشته باشید که اگر آدرس IP شما تغییر کند یا از مکانی جدید قصد ورود به سایت را داشته باشید، از ناحیه مدیریت وردپرس خود خارج خواهید شد. در این صورت، لازم است آدرس IP جدید را به فایل wp-admin/.htaccess/ اضافه کنید.
محتوای ارائه شده رو بازنویسی کردم تا برای مقالات سایت شما واضحتر و جذابتر باشه. در این نسخه، سعی کردم لحن رو کمی رسمیتر کنم و با جملات روانتر، خوانایی متن رو افزایش بدم. همچنین با اضافه کردن جزئیات بیشتر، نکات مهم رو برجستهتر کردم.
2. محدود کردن دسترسی با استفاده از wp-config.php
(روش جایگزین)
اگر سرور شما از قوانین htaccess.
پشتیبانی نمیکنه یا از سرورهای غیرآپاجی مثل NGINX یا LiteSpeed استفاده میکنید، فایل wp-config.php
یه راهکار جایگزین و مطمئن برای محدود کردن دسترسی به سایت شماست.
استفاده از wp-config.php
میتونه از جهاتی امنتر از تغییر htaccess.
باشه. چون احتمال بروز خطاهای سیستمی و سرور کمتره و در صورت نیاز، به راحتی میشه تغییرات رو برگردوند. با این حال، باید حواستون باشه که هر گونه اشتباه کوچک در کدنویسی میتونه باعث از کار افتادن سایت بشه، پس حتماً با دقت این کار رو انجام بدید.
این فایل خیلی زود در فرآیند راهاندازی وردپرس بارگذاری میشه، به همین خاطر یک مکان ایدهآل برای اعمال محدودیتهاست. این روش به ویژه برای توسعهدهندگان و کاربران حرفهای که سایتهای مختلف رو روی سرورهای متنوع مدیریت میکنن، بسیار کاربردی و مفیده.
برای استفاده از این روش، کافیه با استفاده از یک کلاینت FTP یا مدیر فایل در پنل هاستینگ خودتون، فایل wp-config.php
رو باز کنید. سپس، دقیقاً بالای خطی که به صورت زیر نوشته شده:
/* That’s all, stop editing! Happy blogging. */
کد مورد نظر رو اضافه کنید.
برای محدود کردن دسترسی به صفحات مدیریت و ورود وردپرس، کد زیر را با آدرس IP فعلی خود جایگزین کنید (به جای ۱۲۳.۴۵۶.۷۸.۹۰
). این کار باعث میشود تمام تلاشها برای دسترسی به این صفحات، به جز از طریق IP مجاز شما، مسدود شوند.
افزودن چندین آدرس IP:
اگر میخواهید به اعضای تیم خود نیز اجازه دسترسی بدهید، باید از کد متفاوتی استفاده کنید. در این کد، یک آرایه از آدرسهای IP مختلف را که با کاما از هم جدا شدهاند، وارد خواهید کرد. نمونه این کد به این شکل است:
نکته مهم: اگر آدرس IP شما به صورت مکرر تغییر میکند یا از چندین شبکه برای دسترسی استفاده میکنید، این روش ممکن است باعث قفل شدن حساب کاربری شما شود. قبل از اعمال هرگونه تغییر در فایل
wp-config.php
، حتماً از آن یک نسخه پشتیبان تهیه کنید تا در صورت بروز مشکل، بتوانید به راحتی آن را بازگردانید.
مدیریت IP های پویا یا تیمهای چندگانه
اگر آدرس IP شما به طور مکرر تغییر میکند یا اعضای تیم شما از مکانهای مختلفی کار میکنند، محدودیتهای مبتنی بر IP در فایلهای .htaccess یا wp-config.php ممکن است راهکار مناسبی نباشد. این روشها زمانی بهترین عملکرد را دارند که دسترسی به یک IP یا موقعیت مکانی ثابت محدود شود.
برای امنیت انعطافپذیرتر، میتوانید از رویکردهای جایگزین زیر استفاده کنید:
1. احراز هویت دو مرحلهای (2FA) را فعال کنید
فعالسازی احراز هویت دو مرحلهای (2FA) به این معنی است که کاربران برای ورود به سیستم، علاوه بر رمز عبور خود، به یک کد یکبار مصرف که از طریق تلفن همراه دریافت میکنند، نیاز دارند. این کار از ورود مهاجمان به سایت شما، حتی در صورت لو رفتن رمز عبور، جلوگیری میکند.
2. محافظت از پوشه مدیریت (wp-admin) با رمز عبور
این رویکرد یک لایه امنیتی اضافی، حتی پیش از دسترسی به صفحه ورود وردپرس، ایجاد میکند. با این کار، هر کسی که قصد بازدید از مسیر /wp-admin/
را داشته باشد، ابتدا باید نام کاربری و رمز عبور سطح سرور که توسط شما تنظیم شده است را وارد کند.
این اقدام به جلوگیری از حملات brute-force و تلاشهای رباتها برای حدس زدن اطلاعات ورود به پنل مدیریت وردپرس شما کمک میکند. برای راهنمایی دقیقتر، میتوانید به مقاله ما با عنوان نحوه رمزگذاری روی پوشه مدیریت وردپرس مراجعه کنید.
منبع: wpbeginner