آموزش کامل امنیت وردپرس (چگونه امنیت سایت وردپرس را بالا ببریم)

آموزش افزایش امنیت سایت وردپرس

آخرین بروزرسانی در تاریخ : 13 اردیبهشت 1402

امنیت وردپرس یکی از مهمترین موارد در کسب‌وکارهای اینترنتی است که سایت خود را با استفاده از سیستم مدیریت محتوای وردپرس راه‌اندازی کرده‌اند، در واقع شما اگر امنیت سایت وردپرسی خود را جدی نگیرید، قطعا دیر یا زود با مشکل جدی روبرو خواهید شد، در این مقاله جامع از سری مقالات آموزش وردپرس، می خواهیم به سوال چگونه امنیت سایت وردپرس را بالا ببریم به صورت کامل پاسخ دهیم، بنابراین اگر کسب‌وکار ارزشمندی را در بستر اینترنت دارید و کلی برای آن زحمت کشیده‌اید، توصیه می‌کنیم که خط به خط این مقاله را با دقت مطالعه کنید، چون ممکن است با اجرای هر یک از این ترفندها سایت خود را از خطر هک شدن نجات دهید.

راهنمای مطالعه:

متخصص امنیت وردپرس شوید!

در این مقاله سعی کردیم که مهمترین فاکتورهایی که نقش مهمی در امنیت وردپرس دارند را مورد بررسی قرار دهیم و راه‌حل‌های جامعی را برای آن‌ها ارائه دهیم. پس حتما حتما هر کدام از فاکتورهای این مقاله را به دقت بررسی کنید و سعی کنید آن‌ها را در سایت خود اجرا کنید تا در نهایت یک وب‌سایت امن داشته باشید.

انتخاب هاست مناسب برای افزایش امنیت وردپرس

فرض کنید شما می‌خواهید یک خانه بخرید، آن را در محله‌ای که پر از دزد و قاتل است می‌خرید یا در محله‌ای که همه دکتر و مهندس هستند؟!‌ انتخاب یک هاست مناسب هم دقیقا مثل خرید یک خانه است، سایت شما قرار است در این هاست باشد و شما هر چقدر هم روی امنیت سایت‌ خود کار کنید وقتی محله شما ناامن است!‌ مطمئن باشید که بالاخره به خانه شما هم حمله می‌شود!

برای اینکه بتوانید یک هاست مناسب انتخاب کنید برای شما لیستی از بهترین هاست‌های ایران را در مقاله بهترین شرکت‌های هاست در ایران معرفی کرده‌ایم که می‌توانید استفاده کنید و یک هاست مناسب و امن را برای سایت‌ خود انتخاب کنید.


بک‌آپ گیری به صورت منظم از سایت

از شما خواهش می‌کنم که موضوع بک‌آپ گیری به صورت منظم از سایت خود را بسیار جدی بگیرید، بسیاری از افراد را می‌شناسم که به دلیل سهل‌انگاری در تهیه نسخه پشتیبان از سایت‌شان تمامی زحمات چندین ساله‌شان بر باد رفته است!‌ شاید با خود بگویید که مگر شرکت‌های هاستینگ معتبر که در مقاله بهترین شرکت‌های هاست در ایران معرفی کرده‌اید از سایت بک‌آپ نمی‌گیرند؟

در پاسخ این سوال باید بگویم که بله، معمولا تمامی شرکت‌های هاست معتبر در دنیا از وب‌سایت شما نسخه‌های پشتیبان تهیه می‌کنند، اما هیچ یک از این شرکت‌ها این موضوع را تضمین نکرده‌اند!

تهیه نسخه پشتیبان از سایت به صورت منظم را شوخی نگیرید!
تهیه نسخه پشتیبان از سایت به صورت منظم را شوخی نگیرید!

حتی اگر برخی از این شرکت‌ها بک‌آپ گیری منظم از سایت شما را ضمانت کنند باز هم عقل حکم می‌کند که شما به عنوان مدیر سایت حداقل هفته‌ای یک بار از تمام فایل‌ها و پرونده‌های سایت خود نسخه پشتیبان تهیه کنید و آن را در یک محل امن نگهداری کنید تا در شرایط اضطراری بتوانید خیلی سریع اطلاعات سایت خود را بازگردانی کنید. برای اطلاعات بیش‌تر در این رابطه آموزش بک‌آپ گیری از وردپرس با افزونه UpdraftPlus را مطالعه کنید.


به روز رسانی منظم وردپرس

مطمئن باشید یکی دیگر از مهمترین فاکتورهای امنیت در وردپرس به روز بودن هسته اصلی وردپرس، قالب و افزونه‌های استفاده شده در وردپرس است. بنابراین شما به عنوان مدیر سایت، باید همیشه حواستان باشد که به محض انتشار یک نسخه جدید از وردپرس، آن را در سریع‌ترین زمان ممکن بروز کنید.

همچنین قالب‌ و افزونه‌های نصب شده در سایت را باید به روز باشند، می‌دانید چرا باید به روز رسانی‌های وردپرس را بسیار جدی بگیرید؟ چون معمولا در نسخه‌های جدید وردپرس، باگ‌های امنیتی نسخه قبل برطرف می‌شود و در انجمن‌های وردپرسی گفته می‌شود که در نسخه جدید کدام باگ‌های امنیتی برطرف شده‌اند!

بنابراین هکرها با مطالعه این موارد باگ‌های امنیتی نسخه‌های قبلی وردپرس را پیدا می‌کنند و به سایت‌هایی که نسخه وردپرس آن‌ها مخفی نیست و از وردپرس نسخه قدیمی استفاده می‌کنند، حمله می‌کنند و از همین طریق آن سایت‌ها را هک می‌کنند.

بنابراین اگر فعلا به دلایلی نمی‌توانید نسخه وردپرس خود را بروز کنید، حداقل کاری که می‌توانید انجام دهید این است که نسخه وردپرسی که روی سایت‌تان نصب است را در کدهای سایت مخفی کنید، در ادامه مقاله این مورد را نیز آموزش داده‌ایم.


استفاده از SSL در وردپرس

استفاده از SSL در وردپرس برای افزایش امنیت
استفاده از SSL در وردپرس برای افزایش امنیت انتقال اطلاعات

یکی از مهم ترین فاکتورهای امنیتی در سایت‌های فروشگاهی استفاده از پروتکل امن HTTPS است، به صورت خیلی خلاصه اگر بخوام پروتکل HTTPS را توضیح بدم، باید خدمت‌ شما عزیزان عرض کنم که اگر سایت شما فروشگاهی است و اگر هنوز از پروتکل HTTP استفاده می‌کنید، اطلاعات کاربر شما در خطر است و ممکن است که در بین راه انتقال به بانک این دیتا هک شود.

اما به سادگی فقط کافیست گواهی امنیت SSL را روی سایت خود فعال کنید تا اطلاعات کاربران قبل از انتقال ابتدا رمزنگاری شود و سپس انتقال یابد، برای استفاده و فعال‌سازی SSL در وردپرس به آموزش فعال سازی SSL رایگان در وردپرس مراجعه کنید.


انتخاب یک رمز عبور قوی

شاید باورتان نشود ولی سالیانه تعداد بسیار زیادی وب‌سایت فقط به دلیل استفاده از رمزهای عبور سست هک می‌شوند! و باز هم شاید باورتان نشود که این موضوع فقط مربوط به وب‌سایت‌ها نیست و باز هم به صورت سالیانه صدها هزار اکانت مختلف از پلتفرم‌ها و نرم‌افزارهای مختلف فقط به دلیل رمزهای ساده و سست هک می‌شوند!

بنابراین انتخاب یک رمز عبور قوی، یکی از اولین فاکتورهای امنیت است، برای اینکه بدانید رمزی که انتخاب کرده‌اید یک رمزعبور قوی است پیشنهاد می‌کنیم که از ابزار تست قدرت پسورد استفاده کنید، یکی از این ابزارها، ابزار سایت my1login است.

به تصویر زیر دقت کنید، باورتان می‌شود که رمز عبور “1234567890” در عرض 0.02 ثانیه هک می‌شود! یا رمز عبور “565689658” در عرض ۲ دقیقه هک می‌شود؟

حالا مجدد به تصویر زیر دقت کنید! رمز عبور “Nty585&Po!2% 89” دو ترلیون سال طول می‌کشد که هک شود! به نظرتان یک هکر با پسر و نوه‌اش چقدر عمر می‌کند!؟

برای امنیت سایت وردپرسی خود از رمز‌های بسیار قوی استفاده کنید!
برای امنیت سایت وردپرسی خود از رمز‌های بسیار قوی استفاده کنید!

پس انتخاب یک رمز عبور قوی می‌تواند امنیت حساب‌های ما را بسیار افزایش دهد، و توصیه آخر در رابطه با انتخاب پسورد مناسب این است که همیشه سعی کنید از -فاصله- یا همان دکمه Space برای پسوردهای‌ خود استفاده کنید! با همین کار کمر هکر را شکسته‌اید!!!


تعیین سطح دسترسی کاربران

در آکادمی وبکیما افراد مختلف با سطح دسترسی‌های مختلفی هستند که کارهای بخش‌های مختلف را مدیریت می‌کنند، بنابراین ما با استفاده از افزونه User Role Editor سطح دسترسی هر یک از این کاربران را به صورت دقیق تنظیم کرده‌ایم، برای مثال یک نویسنده در سایت وبکیما، فقط باید به بخش نوشتن یک مقاله و ویرایش آن دسترسی داشته باشد، یا یک طراح سایت، دلیلی ندارد که به اطلاعات فروش سایت دسترسی داشته باشد.

افزایش امنیت در وردپرس با تعیین سطح دسترسی کاربران با افزونه User Role Editor
افزایش امنیت در وردپرس با تعیین سطح دسترسی کاربران با افزونه User Role Editor

بنده خودم بسیاری از سایت‌ها را دیده‌ام که به تمامی کاربرانی که باید بخشی از کار را در یک سایت انجام دهند، اکانت مدیریت داده‌اند! خب این از نظر امنیتی بسیار مشکل دارد، بنابراین حتما سعی کنید با استفاده از افزونه‌ای که در بالا معرفی کردیم، سطح دسترسی هر یک از کاربران را با دقت بررسی و تنظیم کنید.


نام کاربری پیش‌فرض “admin” را تغییر دهید

در سال‌های قبل و در زمانی که وردپرس را نصب می‌کردید، نام کاربری مدیر در وردپرس به صورت پیش فرض “admin” بود. و همان‌طور که می‌دانید یک هکر فقط به نام‌کاربری و رمز عبور شما برای ورود به سایتتان نیاز دارد، بنابراین این موضوع برای هکرها عالی است چون در بسیاری از سایت‌ها نام کاربری مدیر admin بود و فقط آن‌ها نیاز بود که پسورد را پیدا کنند!

اما خوشبختانه هم‌اکنون وردپرس در زمان نصب از شما یک نام کاربری می‌گیرد که این خودش یک گام مهم در بحث امنیت سایت‌های وردپرسی محسوب می‌شود.

اما همچنان بسیاری از وب‌سایت‌های فروش قالب وردپرس، یک بسته نصب آسان وردپرس تهیه می‌کنند تا شما بتوانید سایت موردنظر خود را با تمامی دموهای موردنیاز نصب کنید، بنابراین هنوز هم ممکن است که بعد از نصب بسته آسان قالب در وردپرس، نام کاربری مدیر در سایت شما admin باشد، که باید بررسی کنید و اگر این موضوع وجود داشت، باید نام کاربری مدیر را تغییر دهید.

اما وردپرس به صورت پیش‌فرض، اجازه تغییر نام کاربری را به شما نمی‌دهد، بنابراین شما می‌توانید با ۳ روش زیر نام کاربری مدیر را در وردپرس تغییر دهید:

  1. یک مدیر جدید با نام کاربری دلخواه (به غیر از admin) انتخاب کنید و اکانت قبل را حذف کنید.
  2. می‌توانید از افزونه‌های تغییر نام کاربری استفاده کنید.
  3. نام کاربری مدیر را از phpMyAdmin تغییر دهید.

یک کاربر با نام کاربری admin ایجاد کنید!

در بخش بالا، گفتیم که شما باید، اگر نام کاربری مدیر در سایتتان admin است، حتماً آن را تغییر دهید، اما در این بخش گفته‌ایم که یک کاربر با نام کاربری admin‌ بسازید! آیا این تناقض نیست!؟ خیر به‌هیچ‌عنوان! می‌دانید چرا؟ چون این کاربری که می‌خواهیم نام کاربری آن را admin قرار دهیم، در حقیقت یک کاربر ساده است که هر شخصی می‌تواند در وب‌سایت ما آن را بسازد!

پس ما خودمان یک کاربر با نقش مشترک (یا مشتری در ووکامرس) می‌سازیم و نام کاربری آن را admin قرار می‌دهیم، با این کار هکر محترم! با کمی بررسی متوجه می‌شود که بله در این وب‌سایت نام کاربری مدیر admin است! در صورتی که ما از او زرنگ‌تر بوده‌ایم و در حقیقت هکر محترم! را سر کار گذاشته‌ایم!

با این کار هکر وقت خود را برای هک کردن اکانتی گذاشته است که در حقیقت خودش می‌توانست در عرض ۲ دقیقه در سایت ما بسازد! جالب نبود؟!


ویرایش کدها در وردپرس را غیرفعال کنید

وردپرس یک ویرایشگر کد داخلی دارد که با استفاده از آن می‌توانید قالب و افزونه‌های نصب شده در وردپرس را از بخش مدیریت ویرایش کنید، این قابلیت وردپرس می‌تواند ریسک امنیتی داشته باشد، اگر از این قابلیت استفاده نمی‌کنید یا خیلی کم و به ندرت از آن استفاده می‌کنید، بهتر است که آن را غیرفعال کنید.

غیرفعال کردن ویرایشگر قالب و افزونه وردپرس
غیرفعال کردن ویرایشگر قالب و افزونه وردپرس

برای غیرفعال کردن ویرایش کدها در وردپرس باید قطعه کد زیر را داخل فایل wp-config.php قرار دهید.

// Disallow file edit
define( 'DISALLOW_FILE_EDIT', true );

همچنین افزونه‌های بسیاری هستند که به سادگی می‌توانید آن‌ها را نصب کنید و قابلیت ویرایش کدها در وردپرس را غیرفعال کنید، یکی از این افزونه‌ها، افزونه Sucuri است.


غیرفعال کردن فایل‌های اجرایی PHP در دایرکتوری‌های وردپرس

یکی دیگر از موارد مهم برای افزایش امنیت در وردپرس، غیرفعال کردن اجرای فایل‌های PHP در دایرکتورهایی که نیازی به اجرای فایل‌ PHP نیست، مثل پوشه‌: / uploads /.

برای این کار ابتدا در کامپیوتر خود یک فایل Notepad ایجاد کنید و قطعه کد زیر را در آن قرار دهید:

<Files *.php>
deny from all
</Files>

در مرحله بعدی، باید این فایل را به نام .htaccess ذخیره کنید و در پوشه uploads سایت خود آن را آپلود کنید. همچنین اگر می‌خواهید از افزونه برای این کار استفاده کنید می‌توانید از افزونه رایگان Sucuri استفاده کنید.


محافظت از فایل wp-config.php

فایل wp-config.php یکی از مهمترین فایل‌های سایت‌های وردپرسی است که باید حتما موارد حفاظت از آن را با دقت انجام دهید، برای مثال اطلاعات اتصال وردپرس به دیتابیس در این فایل ذخیره شده است و اگر هکر بتواند به این اطلاعات دست پیدا کند قطعا می‌تواند به تمامی اطلاعات مهم شما دسترسی پیدا کند.

اطلاعاتی مهم فایل wp-config.php | محافظت از فایل wp-config.php
اطلاعاتی مهم فایل wp-config.php

برای حافظت از این فایل مهم فقط کافیست آن را به یک پوشه عقب‌تر جابه‌جا کنید! یعنی باید فایل wp-config را از پوشه public_html به یک پوشه بالاتر منتقل کنید. شاید با خود فکر کنید با این کار ممکن است سایت با مشکل مواجه شود! در صورتی‌که به هیچ عنوان مشکلی پیش نخواهد آمد، بنابراین همین الان این کار را انجام دهید، برای اطلاعات بیش‌تر به مقاله جلوگیری از هک وردپرس با حفاظت از فایل wp-config مراجعه کنید.


دسترسی به پیشخوان وردپرس فقط برای مدیر اصلی سایت

برخی سایت‌ها هستند که علاوه بر مدیر اصلی، چند نویسنده در آن فعالیت می‌کنند که کارشان قرار دادن محتوا و مقاله در وب‌سایت است، برای افزایش امنیت در این سایت‌ها بهتر است که فقط مدیر اصلی سایت به پیشخوان وردپرس دسترسی داشته باشد و افراد با نقش‌های کاربری دیگر نتوانند به پیشخوان وردپرس دسترسی داشته باشند.

برای این‌که دسترسی به پیشخوان وردپرس را فقط برای مدیر اصلی سایت در نظر بگیرید، قطعه کد زیر را در فایل functions.php قالب سایت خود قرار دهید:

<?php
 add_action ( 'init' , 'blockusers_mw_init');
 function blockusers_mw_init()
 {
 if (is_user_logged_in())
 {
 $user_info = get_userdata($userid);
 $user_role = implode(',' , $user_info->roles);
 if($user_role != 'administrator')
 {
 wp_redirect(home_url());
 exit; } } }?>

با افزودن این قطعه کد به فایل فانکشن، اگر کاربری که نقش آن مدیر نیست بخواهد وارد پیشخوان وردپرس شود، به صورت خودکار به صفحه اصلی سایت ریدایرکت خواهد شد، برای اطلاعات بیش‌تر در این رابطه مقاله دسترسی به پیشخوان وردپرس فقط توسط مدیر اصلی سایت را مطالعه نمایید.


مخفی کردن نام کاربری وردپرس

همان‌طور که در بخش‌های قبلی این مقاله به آن اشاره کردیم، یک هکر برای هک یک وب‌سایت به ۲ گزینه اصلی نیاز دارد: گزینه اول نام کاربری، گزینه دوم پسورد ورود، بنابراین اگر نام کاربری را داشته باشد در حقیقت 50 درصد کار به همین سادگی انجام شده است!

برای این‌که اجازه ندهید هکر به سادگی بتواند به نام‌های کاربری در وردپرس دسترسی داشته باشد، قطعه کد زیر را در فایل htaccess. سایت قرار دهید:

# BEGIN block author scans
RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} (author=\d+) [NC]
RewriteRule .* - [F]
# END block author scans

با قراردادن قطعه کد بالا، تمامی صفحات مربوط به نویسنده که در وردپرس ایجاد شده‌اند به صفحه اصلی هدایت می‌شوند، برای اطلاعات بیش‌تر به مقاله مخفی کردن نام کاربری وردپرس مراجعه کنید.

توجه: اگر شما از نویسنده‌های مختلف در سایت خود استفاده می‌کنید و می‌خواهید که هر یک از نویسنده‌ها آرشیو مقالاتشان نمایش داده شود، از این گزینه استفاه نکنید.


حذف نسخه وردپرس

اگر همین الان کدهای وب‌سایت خود را بررسی کنید، می‌توانید از داخل کدهای سایت متوجه شوید که کدام نسخه از وردپرس روی سایت شما نصب است و معمولا این موضوع اصلا جالب نیست و برای افزایش امنیت وردپرس باید حتما نسخه وردپرس را از کدهای آن حذف کنید.

نمایش نسخه وردپرس در کدهای سایت که برای افزایش امنیت باید آن را حذف کنید
نمایش نسخه وردپرس در کدهای سایت که برای افزایش امنیت باید آن را حذف کنید

برای این‌کار کافیست قطعه کد زیر را داخل فایل  functions.php قالب وردپرس خود قرار دهید:

remove_action('wp_head', 'wp_generator');

با قراردادن قطعه کد بالا، ورژن وردپرس از داخل کدهای سایت حذف می‌شود، برای اطلاعات بیش‌تر در این رابطه مقاله حذف نسخه وردپرس را مطالعه کنید.


تغییر آدرس صفحه ورود به وردپرس

تمام سایت‌های وردپرسی در جهان یک آدرس مشخص برای صفحه ورود دارند که این موضوع هم برای امنیت وردپرس زیاد جالب نیست و باید آدرس پیش‌فرض صفحه ورود به وردپرس را که wp-login.php و wp-admin است را تغییر دهید.

تغییر آدرس صفحه ورود به وردپرس با افزونه WPS Hide Login
تغییر آدرس صفحه ورود به وردپرس با افزونه WPS Hide Login

برای این کار می‌توانید از افزونه WPS Hide Login استفاده کنید، استفاده از این افزونه برای تغییر آدرس صفحه ورود بسیار ساده است، بعد از نصب و فعال‌سازی افزونه، از پیشخوان وردپرس گزینه تنظیمات > WPS Hide Login را انتخاب کنید تا به صفحه تنظیمات این افزونه هدایت شوید.

پیکربندی افزونه WPS Hide Login برای تغییر آدرس ورود به پیشخوان وردپرس
پیکربندی افزونه WPS Hide Login برای تغییر آدرس ورود به پیشخوان وردپرس

حال در قسمت آدرس ورود می‌توانید، یک آدرس دلخواه برای صفحه ورود به پیشخوان وردپرس را انتخاب کنید، البته سعی کنید، این آدرس را به گونه‌ای انتخاب کنید که قابل حدس زدن نباشد.


محدود کردن تعداد تلاش‌های ورود به سایت

به‌صورت پیش فرض، در وب‌سایت‌های وردپرسی شما می‌توانید هر تعداد بار که بخواهید یک نام کاربری و رمز عبور را تست کنید تا زمانیکه بتوانید وارد سایت شوید، که این موضوع باعث آسیب پذیر شدن سایت در برابر حملات brute force می‌شود. هکرها با تلاش برای ورود به سیستم با ترکیبات مختلف سعی می‌کنند رمزهای عبور را بشکنند.

محدود کردن تعداد دفعات ورود اشتباه به سایت وردپرس با افزونه Login LockDown
محدود کردن تعداد دفعات ورود اشتباه به سایت وردپرس با افزونه Login LockDown

برای محدود کردن تعداد تلاش‌های ورود به سایت برای افزایش امنیت وردپرس می‌توانید از افزونه Login LockDown استفاده کنید.بنابراین کافی است که افزونه را نصب کنید و تنظیمات آن را انجام دهید. برای جزئیات بیشتر، به راهنمای قدم به قدم آموزش نصب افزونه وردپرس مراجعه کنید.

پس از فعال سازی، برای پیکربندی افزونه به بخش تنظیمات » Login LockDown از پیشخوان وردپرس مراجعه کنید و در صفحه باز شده، گزینه Max Login Retries را روی ۱۰ تنظیم کنید و باقی تنظیمات را نیازی روی همان پیش‌فرض افزونه قرار دهید و ذخیره را کلیک کنید.

انتخاب تعداد دفعات ورود اشتباه به سایت وردپرس در افزونه Login LockDown
انتخاب تعداد دفعات ورود اشتباه به سایت وردپرس در افزونه Login LockDown

هم‌اکنون اگر فردی بیشتر از 10بار نام‌ کاربری یا رمز عبور را اشتباه وارد کند، این افزونه به مدت 60 دقیقه حساب آن فرد را مسدود می‌کند و به این صورت می‌توانید از حملات brute force جلوگیری کنید.


ورود دو مرحله‌ای در وردپرس را فعال کنید

شما می‌توانید با استفاده از تایید هویت دو عاملی، امنیت وردپرس را بسیار بالا ببرید، به احتمال بسیار زیاد تا به حال احراز هویت حساب جیمیل یا اینستاگرام خود را فعال کرده‌اید، اگر نمی‌دانید ورود ۲ مرحله‌ای یا احراز هویت ۲ عاملی چیست، اجازه بدید تا بسیار کوتاه این مورد را برایتان شرح دهم.

شما با فعال کردن احراز هویت ۲ مرحله‌ای علاوه بر نام کاربری و رمز عبور به یک گزینه سوم نیاز دارید که این گزینه می‌تواند تایید از طریق موبایل یا ایمیل باشد، در این بخش می‌خواهیم برای افزایش امنیت در وردپرس، احراز هویت ۲ عاملی با استفاده از یک اپ موبایل را آموزش دهیم.

برای این کار ابتدا افزونه Google Authenticator را از مخزن وردپرس روی سایت خود نصب کنید. بعد از دانلود و نصب افزونه از منوی پیشخوان گزینه کاربران > شناسنامه شما را انتخاب کنید.

همان‌طور که مشاهده می‌کنید هم اکنون می‌توانید احراز هویت دو عاملی را در سایت خود فعال کنید، برای این کار باید تیک گزینه Active را بزنید، حال در بخش Secret باید تایید دو مرحله ای گوگل را به وردپرس متصل کنید.

برای اتصال Google Authenticator به وردپرس ابتدا گزینه Show/Hide QR code را کلیک کنید تا کد QR مخصوص وب‌سایت شما تولید شود، قدم بعدی نصب اپلیکیشن Google Authenticator است، بنابراین با توجه به سیستم عامل موبایل خود یکی از گزینه‌های زیر را انتخاب و روی موبایل خود نصب کنید:

بعد از نصب اپلیکیشن مورد نظر، با اکانت جیمیل خود وارد اپلیکیشین شوید و روی آیکون + بزنید و گزینه Scan a barcode را انتخاب کنید و سپس کد QR تولید شده در قسمت کاربران در پیشخوان وردپرس را اسکن کنید، در انتها روی دکمه ذخیره در وردپرس کلیک کنید.

حالا برای تست این مورد کافی است که یک تب ناشناس در مرورگر باز کنید و مثل همیشه سعی کنید تا وارد پیشخوان سایت خود شوید، همان‌طور که مشاهده می‌کنید، علاوه بر نام کاربری و رمز عبور یک گزینه احراز هویت ۲ عاملی هم اضافه شده است که باید این کد را از اپلیکیشن خود برداشته و در این بخش قرار دهید، تا بتوانید وارد حساب کاربری خود در وردپرس شوید.

توجه داشته باشید که از این به بعد برای ورود به حساب کاربری خود در سایت باید همیشه علاوه بر نام کاربری و رمز عبور، کد تایید ۲ مرحله‌ای را هم از اپلیکیشن Google Authenticator وارد کنید.

راهنمای جامع فعال کردن احراز هویت دو مرحله‌ای با افزونه Google Authenticator
راهنمای جامع فعال کردن احراز هویت دو مرحله‌ای با افزونه Google Authenticator

محدودیت ورود با ایمیل در وردپرس

هم‌اکنون در سایت‌های وردپرسی شما می‌توانید علاوه بر نام کاربری با ایمیل هم وارد حساب خود شوید، بنابراین ممکن است شما با ایمیل خود موارد مختلفی را انجام دهید، و هکر به آدرس این ایمیل دسترسی پیدا کند، بنابراین یکی از راه‌حل‌ها این است که یک ایمیل مخصوص فقط برای سایت وردپرسی خود داشته باشید و از آن در هیچ کجای دیگر استفاده نکنید.

همچنین می‌توانید گزینه ورود با ایمیل در وردپرس را مسدود کنید، با این کار، افراد فقط می‌توانند با نام کاربری خود وارد حساب شوند و دیگر با ایمیل نخواهند توانست وارد حساب کاربری خود در سایت شما شوند، برای فعال سازی این قابلیت قطعه کد زیر را در فایل (functions.php) قالب وردپرس خود قرار دهید:

remove_filter( 'authenticate', 'wp_authenticate_email_password', 20 );

البته با این کار ممکن است که باعث شوید کاربران شما تجربه خوبی از سایت شما نداشته باشند، چون بالاخره هر فردی که نام کاربری‌اش در سایت شما را یادش نمی‌ماند، بنابراین تا حد امکان سعی کنید از این گزینه استفاده نکنید.


استفاده از کد کپچا وردپرس

اضافه کردن کد کپچا در وردپرس یکی از فاکتورهای مهم برای افزایش امنیت در سایت‌های وردپرسی است، گاهی اوقات ممکن است که فردی بخواهد به سایت شما آسیب بزند، فقط کافیست یک ربات روی بخش دیدگاه‌های سایت شما تنظیم کند و هزاران دیدگاه اسپم را روانه سایت‌تان کند، اگر کد کپچا روی سایت تان نصب نکرده باشید، به احتمال بسیار زیاد با تعداد درخواست‌های بالا سایت شما Down‌ و از دسترس خارج خواهد شد.

استفاده از کد کپچا وردپرس با استفاده از افزونه reCaptcha by BestWebSoft
استفاده از کد کپچا وردپرس با استفاده از افزونه reCaptcha by BestWebSoft

برای جلوگیری از نوع حملات و مخصوصا حملات بورت فورث می‌توانید کد کپچای گوگل را به سایت خود اضافه کنید، برای این کار کافیست که افزونه reCaptcha by BestWebSoft را نصب کنید و با جیمیل خود از سایت recaptcha گوگل API خود را دریافت کنید و در نهایت کد کپچا را در سایت خود فعال کنید.


تغییر پیشوند جداول دیتابیس در وردپرس

یکی از راه‌های افزایش امنیت در وردپرس این است که پیشوند جدول پیشفرض وردپرس را تغییر دهیم، به صورت پیش‌فرض در زمان نصب وردپرس، اگر پیشوند جدول را تغییر نداده باشید، پیشوند جدول دیتابیس شما _wp خواهد بود، توجه داشته باشید که در تمامی سایت‌های وردپرسی این موضوع یکسان است، بنابراین یکی از موارد امنیتی تغییر همین پیشوند جدول است.

اما توجه داشته باشید که تغییر پیشوند جدول در وردپرس ممکن است باعث بروز مشکلات جدی در سایت شما شود، بنابراین حتما قبل از انجام این کار یک نسخه پشتیبان از کل سایت‌ خود بگیرید.

برای تغییر پیشوند جداول در وردپرس ۲ راه‌حل وجود دارد، راه اول استفاده از افزونه و راه دوم به صورت دستی است، هر ۲ این موارد را به زودی در یک مقاله جامع آموزش خواهیم داد، اما تا آن موقع می‌توانید از افزونه Change Table Prefix برای این کار استفاده کنید.

همان‌طور که در تصویر زیر مشاهده می‌کنید، تغییر پیشوند جداول در وردپرس با استفاده از این افزونه کار بسیار ساده‌ای است:

تغییر پیشوند جداول دیتابیس در وردپرس با افزونه Change Table Prefix
تغییر پیشوند جداول دیتابیس در وردپرس با افزونه Change Table Prefix

فقط کافیست که پیشوند جدول جدید را در باکس مربوطه وارد کنید و تیک گزینه‌های Enable site as maintenance mode و Would you like to your own custom prefix را فعال کنید، در نهایت گزینه Click to change Table Prefix را کلیک کنید تا پیشوند جداول در سایت وردپرسی شما به گزینه‌ای که در این بخش انتخاب کردید، تغییر یابد.


افزایش امنیت پوشه wp-admin و صفحه ورود به پیشخوان وردپرس

معمولا صفحه ورود به پیشخوان وردپرس مورد علاقه هکرها است، شما می‌توانید علاوه بر مواردی که تا اینجا گفته شد، از طریق خود هاست هم روی پوشه wp-admin یک پسورد قرار دهید، برای این کار کافیست به هاست خود مراجعه کنید و روی پوشه wp-admin راست کلیک کرده و گزینه Password Protect را انتخاب کنید و در صفحه باز شده، تیک گزینه Password protect this directory را زده و گزینه save را انتخاب کنید.

مراحل قراردادن پسورد در دایرکتوری‌های مختلف از طریق هاست سی‌پنل
مراحل قراردادن پسورد در دایرکتوری‌های مختلف از طریق هاست سی‌پنل

حال در بخش جدید می‌توانید یک یوزرنیم و پسورد برای این پوشه انتخاب کنید، با این کار در زمان ورود به صفحه پیشخوان، علاوه بر نام کاربری و رمز عبور خود وردپرس، حال باید یوزرنیم، پسوردی که برای پوشه انتخاب کرده‌اید را نیز وارد کنید.


افزایش امنیت فایل htaccess.

یکی دیگر از فایل‌های بسیار مهم که باید از دسترسی دیگر افراد در امان باشد، فایل htaccess. است، برای محافظت از این فایل ارزشمند می‌توانید قطعه کد زیر را در خود این فایل قرار دهید:

<files ".htaccess">
order allow,deny
deny from all
</files>

حواستان باشد که همیشه قبل از ویرایش و قراردادن قطعه کد در فایل htaccess. از آن یک نسخه پشتیبان تهیه کنید، چون ممکن است که با یک تغییر کوچک در این فایل، سایت شما دچار مشکلات متنوعی شود.

افزایش امنیت وردپرس با بلاک کردن IPهای مشکوک

گاهی اوقات است که متوجه می‌شوید از یک یا چند آی‌پی خاص درخواست‌های بسیار زیاد و مشکوکی به سایت و سرور شما ارسال می‌شود، در این مواقع ساده‌ترین و عاقلانه‌ترین کار این است که این IPهای مشکوم را بلاک کنید، برای این‌کار کافی است که قطعه کد زیر را داخل فایل htaccess. خود قرار دهید:

order allow,deny
deny from xxx.xxx.xx.x
allow from all

حال به جای x شما باید آی‌پی فرد خاطی را قرار دهید، اگر تعداد IPها بیشتر از یکی است به صورت زیر آن‌ها را قرار دهید:

order allow,deny
deny from xxx.xxx.xx.x
deny from yyy.yyy.yy.y
deny from zzz.zzz.zz.z
allow from all

و خلاصه با همین ترفند می‌توانید هر تعداد IP را که می‌خواهید به سایت شما دسترسی نداشته باشند را بلاک کنید.


غیرفعال کردن XML-RPC

با استفاده از قابلیت XML-RPC می‌توانید سایت وردپرسی خود را از راه دور مدیریت کنید، برای مثال می‌توانید با استفاده از نرم‌افزار اندروید وردپرس، نرم افزار ویندوزی وردپرس و حتی ابزار IFTTT، برخی از بخش‌های وردپرس را از راه دور مدیریت کنید، این ویژگی هم می‌تواند مفید باشد و هم به ضرر ما تمام شود و می‌توان گفت یک جورایی چوب دو سر طلا است!

برای غیرفعال کردن این ویژگی کافیست قطعه کد زیر را در فایل htaccess. خود قرار دهید:

# Prevent Access to xmlrpc.php File
<Files xmlrpc.php>
order deny,allow
deny from all
allow from 123.123.123.123
</Files>

در قسمت allow from 123.123.123.123 می‌توانید آی‌پی خود را قرار دهید، تا این ویژگی فقط برای خودتان کار کند و از دیگر IPها در دسترس نباشد.


استفاده از افزونه امنیت وردپرس

یکی از راه‌حل‌های جامع برای افزایش و بهبود امنیت در وردپرس، استفاده از افزونه‌های امنیتی حرفه‌ای در وردپرس است، در مقاله‌های بهترین افزونه های امنیت وردپرس و Wordfence یا Sucuri کدام بهتر است؟ سعی کرده‌ایم تا بهترین افزونه‌های امنیت در وردپرس را معرفی کنیم. بنابراین با مطالعه این ۲ مقاله سعی کنید یکی از این افزونه‌ها را برای افزایش امنیت در سایت خود انتخاب کنید.

البته حتما سعی کنید که اگر می‌خواهید یک افزونه را تست کنید ابتدا در یک سایت تستی این کار را انجام دهید، و همیشه سعی نکنید افزونه‌های مختلف را روی سایت اصلی خودتان تست کنید، چون با این کار به دیتابیس سایت خود صدمات جدی وارد می‌کنید و در مواردی حتی ممکن است که سایت‌ تان به صورت کامل مشکل دار شود و مجبور شوید تمامی کارها را از اول انجام دهید!

دوره جامع آموزش امنیت وردپرس | متخصص امنیت وردپرس شوید!

دوره جامع امنیت وردپرس وبکیما | متخصص امنیت وردپرس شوید!

اگر کسب‌وکار اینترنتی‌ تان برایتان ارزشمند است باید به فکر امنیت و کانفیگ امنیتی سایت ‌تان باشید در غیر این صورت خیلی زودتر از آنچه که فکرش را می‌کنید سایت‌تان مورد حمله هکرها قرار خواهد گرفت، به قول معروف پیش‌گیری بهتر از درمان است… در دوره امنیت وردپرس به صورت کاملا اصولی و قدم به قدم امنیت حرفه‌ای در وردپرس را یاد می‌گیرید، همچنین یاد می‌گیرید که چگونه متخصص امنیت شوید و از آن به کسب درآمد بپردازید.


جمع بندی

در انتها امیدواریم که بحث امنیت در وردپرس را جدی بگیرید و اگر کسب‌وکار ارزشمندی را در بستر اینترنت راه‌اندازی کرده‌اید باید حتما آن را از حملات احتمالی محافظت کنید، همچنین امیدواریم که ترفندهای امنیت وردپرس این مقاله مورد پسند شما قرار گرفته باشد و با استفاده از آن‌ها بتوانید امنیت در سایت وردپرسی تان را بهبود دهید.

هر گونه سوالی در رابطه با افزایش امنیت در وردپرس دارید در پایین همین مقاله و در بخش نظرات سایت مطرح کنید تا تیم پشتیبانی وبکیما در سریع‌ترین زمان ممکن پاسخگوی شما عزیزان باشند.

4.1/5 - (9 امتیاز)

نظرات در “آموزش افزایش امنیت سایت وردپرس

  1. سارا میگوید:

    سلام
    بعد اموزش وردپرس والمنتور
    گام سوم تامین امنیت است
    میشه برای این مقاله ویدیو منتشر کنید (برای وردپرسی ها این مقاله حاوی کد یکم گنگه )

  2. بهرام میگوید:

    سلام ممنون از مقاله.سوالی از خدمت شما داشتم بهترین راه اسکن و مطمئن شدن از سلامت افزونه های وردپرس خصوصا افزونه های نال شده چیست؟ اسکن با سایت ویروس توتال چقدر میتونه مفید باشه؟

    • پشتیبانی میگوید:

      باسلام، متاسفانه در این رابطه هیچ گونه راه‌حل کاملی وجود ندارد، سایت ویروس توتال هم به صورت نسبی عمل می‌کند و 100 درصد مطمئن نیست، بهترین راه این است که قالب‌ها و افزونه‌های موردنیاز خود را از منابع معتبر تهیه کنید.

  3. syro میگوید:

    استاد من برای پوشه wp-admin هم پسورد گذاشتم ک اول برای ورود به صفحه مدیریت اول یوسر پسورد wp-admin زده بشه و بعد تازه ورودی wp-login بیاد ک مجدد یوزر پسورد و تیک ربات گوگل رو زد
    بحث اینجاست ک وقتی اولی میخوای بزنی گزینه کنسل داره و با زدنش مستقیم میاد رو ورودی wp-login
    ایا راهی هست این مشکل رفع بشود؟

دیدگاهتان را بنویسید

آموزش‌های ویدیویی جدید فقط در یوتیوب منتشر می‌شود!

بزن بریــم!