در آموزش امنیت وردپرسی به صورت رایگان سعی ما بر این بوده است که بهترین آموزش مربوط به امنیت در سایت های وردپرسی را برای شما تهیه کنیم تا بتوانید در مدت زمان بسیار کوتاهی امنیت سایت خودتان را بر عهده بگیرید.
بیایید با یک آمار شروع کنیم: بیش از ۴۳ درصد وبسایتهای جهان از سیستم مدیریت محتوای وردپرس استفاده میکنند. این عدد در سال ۲۰۲۴ چیزی نزدیک به ۸۱۰ میلیون سایت است و هر روز هم به آن اضافه میشود!
ناآگاهی کاربران از امنیت وردپرس خطرساز شده و هکرها از آن سو استفاده کرده و همواره برای حمله به سایت های وردپرسی مشتاقاند. بنابراین یادگیری روشهای بهبود و افزایش امنیت وردپرس موضوع بسیار مهمی است که هر صاحب وبسایت باید برای آن اقدام کند.
اگر امنیت وبسایتتان را جدی نگیرید خسارتهای مالی، زمانی و روانی منتظر شماست. اما جای نگرانی نیست، در این بخش از سایت تاپ وردپرس بهترین شیوهها و روشهای بهبود امنیت وردپرس و محافظت از سایت در برابر حملات سایبری را آموزش دادهایم.
پس حتماً از محتوای این صفحه استفاده کنید و امنیت را به وبسایتتان هدیه دهید.
شما بهعنوان صاحب یک کسبوکار مسئولیت تمام جوانب کارتان را باید برعهده بگیرید. به این آمار گوگل فکر کنید: “هر هفته حدود ۲۰۰۰۰ وبسایت بهخاطر بدافزار و حدود ۵۰۰۰۰ وبسایت به دلیل فیشینگ در لیست سیاه قرار میگیرند.”
این آمار نشان میدهد که حملات سایبری و نفوذ هکرها به اطلاعات کسبوکارها هر لحظه در کمین وبسایتهای وردپرسی باشد. آنها با این اطلاعات به راحتی میتوانند کلاهبرداری کنند و این به جایگاه کسبوکار در بین مشتریانش ضربه مهلکی میزند.
اما نگران نباشید، تا زمانی که امنیت سایت برایتان مهم باشد و برای آن اقدامات لازم را انجام دهید خطری وبسایت شما را تهدید نخواهد کرد. ما در این مطلب اقدامات لازم برای بهبود و افزایش امینت وردپرس را با شما در میان گذاشتهایم. میتوانید این صفحه را به عنوان چکلیست امنیت وردپرس ذخیره کنید و در مواقع لازم به آن سر بزنید.
در مورد اهمیت بهروزرسانی وردپرس در یک کلام باید بگوییم “آپدیت باش تا در امان باشی! “
اگر اهل وردپرس باشید میدانید که این سیستم مدیریت محتوا، متنباز بوده و پیوسته در حال بهروزرسانی است.
اگر چه آپدیت وردپرس روی بهبود عملکرد، تجربه کاربری و رفع مشکلات آن مؤثر بوده؛ اما عمده دلیل این بهروزرسانیها بهبود باگها و مشکلات امنیتی آن است.
جالب است بدانید حتی اگر هیچ مشکل یا باگی هم در وردپرس نباشد این CMS به طور منظم آپدیت شده و سازگاری آن با افزونهها و قالبها بهتر میشود.
برای هکرها نفوذ به نسخههای قدیمی وردپرس راحتتر است، پس با بهروزرسانی وردپرس راه حمله هکرها را میبندید. این اولین و ابتداییترین قدم برای بهبود و افزایش امنیت سایت وردپرسی است.
قبل از آپدیت وردپرس حتماً به نکات زیر توجه کنید:
۱. به کمک افزونههای بکاپگیری یا پشتیبان هاست از سایتتان فول بکاپ بگیرید.
۲. اگر از افزونههای ذخیرهسازی کش استفاده میکنید، قبل از بهروزرسانی وردپرس حتماً آنها را غیرفعال کنید.
۳. افزونهها و قالبتان را آپدیت کنید. اگر چه آپدیت وردپرس در موارد بسیار کمی روی عملکرد افزونهها و قالب سایت اثر میگذارد؛ اما این نکته را هم باید در نظر بگیرید.
نکته: یادتان باشد که بعد از بهروزرسانی وردپرس، افزونههای کش غیرفعال شده را دوباره فعال کنید.
برای بررسی اینکه وردپرس نسخه جدیدی منتشر کرده یا نه باید در پیشخوان وردپرس وارد بخش بهروزرسانی شوید، اگر با این جمله روبرو شدید ” بهروزرسانی به نسخه… ” یعنی باید وردپرس را آپدیت کنید.
در ادامه صفحه بهروزرسانی، با لیستی از افزونهها روبرو میشوید که نیاز به آپدیت دارند. این افزونهها را میتوانید تکبهتک یا با هم آپدیت کنید.
نکته مهم: پیشنهاد میکنیم بهروزرسانی خودکار وردپرس را فعال نکنید. اگر این گزینه فعال باشد امکان دارد بدون اینکه از سایت بکاپ گرفته باشید، وردپرس آپدیت شود و در صورت بروز خطا و از دست رفتن اطلاعات دستتان به جایی بند نباشد!
استفاده از رمزهای عبور ساده به هکرها اجازه میدهد به راحتی آنها را پیدا و به سایتتان نفوذ کنند. حتماً دقت کنید که رمزهای عبور ورود به حساب وردپرس سایتتان قوی باشد.
شکستن پسوردهای قوی حتی با قویترین برنامههای حدس پسورد هم زمان بر است. معمولاً رمزهایی که طولانی و پیچیده باشند، رمز عبور قوی به حساب میآیند.
برای افزایش امینت وردپرس با پسوردهای قوی حتماً نکات زیر را در نظر بگیرید:
رمز عبور طولانی انتخاب کنید.
کاراکترهای متنوع در پسوردتان به کار ببرید.
از عبارتها و کلمات معنیدار استفاده نکنید.
از احراز هویت دو عاملی استفاده کنید.
هرگز برای چند حساب کاربری رمز عبور یکسان انتخاب نکنید.
تمام کاربرانی که دسترسی به سایتتان دارند باید از رمز عبور قوی استفاده کنند.
نکته ۱: علاوه بر نکاتی که در مورد رمزهای عبور گفتیم، برای بهبود و افزایش امنیت وردپرس حتماً صفحه ورود به مدیریت که به صورت پیشفرض wp-login.php است را با افزونههای امنیتی مثل Lockdown WP Admin تغییر دهید.
نکته ۲: با استفاده از ۲ ابزار آنلاین LastPass و 1Password میتوانید علاوه بر ساخت پسوردهای قوی، رمزهای عبور خودتان را هم بهصورت امن ذخیره و مدیریت کنید.
اگر قصد دارید یک کاربر جدید به بخش مدیریت سایتتان اضافه کنید، مراحل زیر را انجام دهید:
در پیشخوان وردپرس وارد بخش کاربران شوید و روی گزینه افزودن کاربر تازه کلیک کنید.
یک کاربر جدید اضافه و نقش و سطوح دسترسی او را تعیین کرده و یک پسورد قوی برایش مشخص و افزودن کاربر را کلیک کنید.
اگر یادتان باشد در بخشهای قبلی این مقاله اشاره کردیم که قبل از بهروزرسانی وردپرس از سایتتان نسخه پشتیبان تهیه کنید. علاوه بر زمانی که وردپرس را آپدیت میکنید، با بهروزرسانی یک افزونه یا قالب هم امکان دارد که کل سایتتان بههمریخته یا بخشی از اطلاعات از دسترس خارج شود.
حتی اگر از امنیت سایت وردپرسیتان اطمینان کامل دارید و تمام نکاتی که تا اینجا گفتیم را رعایت کردهاید، باز هم نیاز است که همواره یک نسخه پشتیبان و بهروز از سایتتان داشته باشید؛ بنابراین حتماً از هاستینگهایی استفاده کنید که امکان بکاپ گیری روزانه، هفتگی و ماهانه به شما بدهند. در این صورت خیالتان از هر اتفاق پیشبینی نشده راحت است.
علاوه بر اینکه هاست شما باید امکان بکاپ گیری مداوم به شما بدهد، باید از راهکارهای امنیتی برای تشخیص و پیشگیری از نفوذ، آنتیویروسها و فایروالهای شبکه برای محافظت از سایت شما در برابر حملات سایبری استفاده کند. پس در انتخاب هاستینگ مناسب وسواس زیادی داشته باشید.
یکی دیگر از روشهای بکاپ گیری از سایت، استفاده از افزونه داپلیکیتور است. ما قبلاً در مقاله آموزش افزونه داپلیکیتور این پلاگین را به شما معرفی کردیم. مهم نیست که چه نوع سایتی دارید، با استفاده از داپلیکیتور میتوانید با یک برنامه منظم زمانی از سایتتان بکاپ گرفته و فایل نصب آسان آن را در محل دلخواهتان ذخیره کنید.
افزونههای وردپرسی همواره به کمک وبمستر ها آمده اند. این ابزارها حکم روغنکاری چرخدندههای سایت شما را دارند و امکانات متنوعی برای سایت شما فراهم و عملکرد آن را بهینه میکنند.
پلاگینهای امنیتی یکی از مهمترین ابزارهای وردپرسی هستند که هر سایت وردپرسی حداقل یکی از آنها را باید داشته باشد. در ادامه با چند تا از این افزونهها آشنا میشوید:
اگر سایت فروشگاهی دارید، دیجیتس یکی از بهترین افزونهها برای احراز هویت و جلوگیری از حملات فیشینگ است.
این افزونه روش عضویت و ورود امن کاربر مثل استفاده از رمز یکبار مصرف (OTP)، Social Login، Email Login و Two-Factor Authentication و… را برای سایت شما فراهم میکند.
با استفاده از این افزونه که نسخه رایگانش هم در دسترس است، سایت خود را در برابر حملات Brute Force
اسپمها محافظت کرده و امنیت فایلهای موجود در وردپرس و حساب کاربری را تأمین کنید.
امکاناتی که این افزونه به شما میدهد:
مانیتورینگ ورودهای ناموفق به همراه اطلاعات آی پی کاربر
مانیتورینگ فعالیتهای کاربران
اضافهکردن گوگل reCaptcha به صفحه ورود
مسدودکردن IPهای مشکوک
وردفنس یکی از پرکاربردترین افزونههای امنیتی وردپرس است. با استفاده از این افزونه میتوانید:
آیپیهای مشکوک را بلاک کنید.
از تعیین رمزهای ساده جلوگیری کنید.
از حملات DDOS و Brute Force جلوگیری کنید.
تلاشهای مکرر برای ورود به سایت را مسدود کنید.
نسخه وردپرس سایت را مخفی کنید.
از تأیید هویت ۲ عاملی استفاده کنید.
سایتتان را از لحاظ اسپم و بدافزار اسکن کنید.
یکی از خاصترین افزونههای امنیتی وردپرس آیتم سکوریتی است. این افزونه در دو نسخه رایگان و پولی در دسترس بوده و به عنوان یک لایه امنیتی برای سایت شما عمل میکند.
امکانات امنیتی که این افزونه برای سایت شما ایجاد میکند شامل موارد زیر است:
احراز هویت دومرحلهای
Google reCAPTCHA
تولید رمزهای قوی
اسکن روزانه بدافزارها
جلوگیری از حملات Brute Force
مسدودکردن IPهای مشکوک
بکاپ گیری از دیتابیس
مخفیکردن و تغییر آدرس صفحه ورود و wp-admin
و…
این افزونه با استفاده از هدرهای امنیتی مثل HSTS – X-Content-Type – X-XSS-Protectio – X-Frame و قابلیت اسکن کل وبسایت و گزارش اقدامات مهم (Mixed content) امنیت وبسایت شما را افزایش میدهد.
در واقع این افزونه تمام اطلاعاتی که کاربر هنگام لاگینکردن، خریدکردن و… تایپ میکند را رمزنگاری کرده و امکان دسترسی هکرها به این اطلاعات را میبندد.
در ادامه آموزش امنیت وردپرس میرسیم به بخشهای امنیتی و تنظیماتی که خودتان باید اعمال کنید.
از پروتکل امنیتی ssl استفاده کنید
سایتی که روی پروتکل http سوار باشد مثل خانهای است که درب ورودی آن باز است! در این حالت هر گونه اطلاعاتی که در سایت ردوبدل میشود قابل نفوذ و ردیابی است. اما اگر از ssl و پروتکل https استفاده کنید، محیط سایت را برای خودتان و کاربرانتان امن میکنید.
با استفاده از گواهی ssl علاوه بر اینکه امینت اطلاعات سایتتان را تضمین میکنید، به سئوی سایت و بهتر دیدهشدن آن در گوگل هم کمک کردهاید.
این گواهی بهصورت رایگان از طرف شرکتهای هاستینگ ارائه میشود، برای فعالسازی آن کافی است به پشتیبانی هاستینگ پیام دهید تا این کار را برایتان انجام دهند.
نام کاربری پیشفرض “admin” را تغییر دهید
نام کاربری شما نیمی از اعتبار ورود به سیستم وردپرس است؛ اگر با سهلانگاری از نام کاربری پیشفرض admin برای ورود استفاده کنید، در واقع کلید را روی در جای گذاشتهاید و این لطف بزرگی به هکرهای نسبتاً محترم است! استفاده از admin برای نام کاربری امکان انجام حملات brute-force را برای هکرها آسانتر میکند.
اگر میخواهید نام کاربری پیشفرض وردپرس را تغییر دهید از این ۳ روش استفاده کنید:
یک حساب جدید بسازید و حساب قبلی را حذف کنید.
از افزونههای Username Changer یا easy Username Updater استفاده کنید.
نام کاربری را از phpMyAdmin بهروز کنید.
ما در مقاله آموزش تغییر نام کاربری در وردپرس مراحل این کار را قدمبهقدم برایتان توضیح دادهایم.
امکان ویرایش قالب و افزونه را غیرفعال کنید
همانطور که میدانید در وردپرس بخشی وجود دارد که به کمک آن میتوانید کدهای قالب یا افزونهها را ویرایش کنید. اغلب سایت های وردپرسی خیلی به این بخش نیاز ندارند، بنابراین برای اینکه این بخش حساس به دست هکرها نیفتد و فاجعه به بار نیاید آن را غیرفعال و خیالتان را راحت کنید.
از ۲ روش میتوانید ویراشگر قالب و افزونه وردپرس را غیرفعال کنید:
روش اول
کد زیر را در فایل wp-config.php اضافه کنید.
// Disallow file edit
define(‘DISALLOW_FILE_EDIT’, true) ;
هر زمان که به بخش ویرایشگر نیاز داشتید، میتوانید این کد را موقتاً برداشته و تغییرات موردنظر را انجام دهید.
روش دوم
بهراحتی و با یک کلیک از ویژگی Hardening در افزونه رایگان Sucuri استفاده کنید.
نکته: پیشنهاد میکنیم حتماً مقاله غیرفعالسازی ویرایش فایل از وردپرس را مطالعه کنید.
اجرای فایل PHP در سایت را غیرفعال کنید
هاستهایی که سایت های وردپرسی را میزبانی میکنند، امکان اجراکردن فایل های php را دارند. فایل های php مثل اکسیر جادویی هر کاری میتوانند انجام دهند!
پیشنهاد میکنیم در بخشهایی از سیستم مدیریت محتوای وردپرس که به اجرای کدهای php نیازی نیست، امکان اجرای آنها را غیرفعال کنید. برای مثال اگر به فردی دسترسی بارگذاری در بخش رسانهها را بدهید و او یک فایل php در آنجا آپلود و اجرا کند، اتفاقات ناگواری برای سایتتان میفتد. پس سری را که درد نمیکند دستمال نمیبندند! از همان اول جلویش را بگیرید!
برای غیرفعالسازی اجرای فایل php از مسیر زیر استفاده کنید:
یک فایل به نام .htaccess در مسیرهای /wp-includes/ و /wp-content/uploads/ ایجاد کرده و کد زیر را درون آن قرار دهید:
<Files *.php>
deny from all
</Files>
با این کار از اجراشدن فایلهای php در مسیرهایی که فایل htaccess ایجاد شده جلوگیری میشود.
علاوه بر روش بالا، برای غیرفعالکردن اجرای فایل PHP میتوانید از ویژگی Hardening در افزونه رایگان Sucuri استفاده کنید.
تعداد دفعات تلاش برای ورود به وردپرس را محدود کنید
وردپرس به شکل پیشفرض محدودیتی برای تعداد دفعات ورود ندارد. این ویژگی باعث میشود که هکرها بتوانند بهراحتی با رباتهایشان هزاران پسورد را امتحان کنند تا به رمز عبور اصلی برسند.
با محدودکردن تعداد تلاش برای ورود به وردپرس بهراحتی دست هکرها را برای شکستن پسورد میبندید.
در صورت راهاندازی فایروال این کار بهراحتی و به شکل خودکار انجام میشود. اگر فایروال را راهاندازی نکردهاید میتوانید از افزونه Login LockDown استفاده کنید. پس از نصب و فعالسازی افزونه به صفحه تنظیمات آن بروید و تعداد دفعات مجاز ورود و زمان محدودیت را تنظیم کنید.
برای اینکه بیشتر و کاملتر در این مورد اطلاعات داشته باشید، حتماً مقاله محدودسازی تلاش برای ورود ناموفق در وردپرس مطالعه کنید.
از احراز هویت دومرحلهای استفاده کنید
همیشه گفتهاند کار از محکمکاری عیب نمیکند! استفاده از احراز هویت دوعاملی یکی دیگر از روشهای افزایش امنیت وردپرس بوده و نوعی محکمکاری برای ورود کاربر است.
در این روش کاربر برای ورود علاوه بر نام کاربری و رمز ورود، نیاز به رمز دوم دارد. این رمز به شکلهای مختلفی مثل ارسال پیامک، ایمیل یا استفاده از نرمافزارهای احراز هویت مثل Google Authenticator، Authy و LastPass Authenticator به کاربر داده میشود.
چطور احراز هویت دومرحلهای را برای ورود به وردپرس فعال کنیم؟
اولین قدم نصب و فعالسازی افزونه Two Factor Authentication است. پس از فعالسازی، در پیشخوان وردپرس یک بخش با نام Two Factor Auth ایجاد میشود که باید روی آن کلیک کنید.
در قدم دوم باید یکی از نرمافزارهای احراز هویت مثل Google Authenticator، Authy و LastPass Authenticator را روی گوشیتان نصب و اجرا کرده و روی دکمه اضافهکردن یک رمز بزنید.
در قدم بعدی باید QRcode صفحه تنظیمات افزونه را اسکن کنید.
در این مرحله روش دومرحلهای برای شما فعال شده و برای هر بار ورود به سایت باید از کدی که نرمافزار برای شما میسازد استفاده کنید.
نکته: پیشنهاد میکنیم که با استفاده از افزونه دیجیتس احراز هویت دومرحلهای سایتتان را بهسادگی و با امنیت بالا فعال کنید.
پیشوند دیتابیس وردپرس را تغییر دهید
دیتابیس قلب هر وبسایتی است. هر اطلاعاتی که چشم هکرها را بگیرد در دیتابیس پیدا میشود. اما یک مشکل وجود دارد! استفاده از پیشوند پیشفرض wp_ امنیت پایگاهدادهها را کم و حدسزدن نام جداول را برای هکرها راحت کرده است. برای افزایش امنیت دیتابیس وردپرس میتوانید پیشوند پیشفرض آن را تغییر دهید.
این کار اگر درست و اصولی انجام شود، آسیبی به سایت نمیزند. پیشنهاد میکنیم قبل از هر اقدامی برای تغییر پیشوند وردپرس، حتماً از دستورالعملی که در مقاله تغییر پیشوند جداول دیتابیس در وردپرس توضیح دادهایم استفاده کنید.
نکته: تنها درصورتیکه در کد نویسی ماهر هستید این کار را انجام دهید. در غیر این صورت امکان آسیبدیدن سایت وجود دارد.
امنیت صفحه ورود به وردپرس را افزایش دهید
صفحه ورود به مدیریت وردپرس خوراک هک و حملات DDOS توسط هکرهاست! حتماً امنیت صفحه ورود بخش مدیریت وردپرس را بالا ببرید. ما در این مقاله روشهای متعددی برای این کار به شما معرفی کردیم که در ادامه دوباره به آنها اشاره میکنیم:
استفادهنکردن از نام کاربری admin
استفاده از رمز عبور قوی
استفاده از کد کپچا، رمز دومرحلهای، رمز یکبارمصرف و…
تغییر آدرس صفحه ورود
محدودکردن تعداد تلاش برای ورود
فعالبودن ssl
directory browsing وردپرس را غیرفعال کنید
شاید شما هم دیده باشید که در مواقعی بهجای نمایش یک وبسایت، لیستی از فایلها و محتواهای هاست نمایش داده میشود. به این که اتفاق به دلیل یک باگ امنیتی در وردپرس رخداده directory browsing گفته میشود.
directory browsing اطلاعات زیادی در مورد قالب، افزونهها و… سایت شما به هکرها داده و یک حفره امنیتی برای نفوذ آنها ایجاد میکند؛ بنابراین غیرفعالکردن آن یکی از مهمترین اقدامات بهبود و افزایش امنیت هر سایت وردپرسی است.
برای بررسی اینکه آیا directory browsing سایت شما فعال است یا نه باید آدرس domain.com/wp-content در مرورگر وارد کنید. اگر با خطای ۴۰۳ روبرو شدید؛ یعنی غیرفعال است، در غیر این صورت ممکن است محتواهای هاست شما را به نمایش گذاشته باشد.
غیرفعالکردن directory browsing در کنترل پنل cpanel
در قسمت advanced گزینه indexes را بزنید.
در صفحهای که برایتان باز شده public_html را انتخاب کرده، edit و سپس no indexing را بزنید.
در نهایت تغییرات را save کنید.
غیرفعالکردن directory browsing در دایرکت ادمین
وارد public_html در file manager شوید.
به صفحه ویرایش فایل .htaccess بروید.
در انتهای فایل، کد Options -Indexe اضافه کنید.
تنظیمات را ذخیره کنید.
XML-RPC را غیرفعال کنید
XML-RPC یکی از قابلیتهای وردپرس است که به شما این امکان را میدهد از طریق اپلیکیشنهای موبایل یا تحت وب وردپرس را مدیریت کنید. اما این قابلیت بهشدت دست هکرها را برای حملات brute-force باز میگذارد.
اگر روشهای افزایش امنیت صفحه ورود وردپرس را (که در قسمتهای قبلی به آن اشاره کردیم) رعایت کنید، در حالت عادی هکرها با چند بار تلاش ناموفق برای ورود مسدود میشوند.
اما اگر XML-RPC فعال باشد، هکرها با استفاده از تابع system.multicall میتوانند درخواستهای زیادی را برای ورود به سایت ارسال کنند و در نهایت موفق به شکستن رمز عبور خواهند شد.
بنابراین استفاده از قابلیت XML-RPC و مدیریت وردپرس با اپلیکیشنهای جانبی اصلاً توصیه نمیشود. اگر این قابلیت برای سایت شما فعال است حتماً آن را غیرفعال کنید.
ما در مقاله آموزش غیرفعالکردن XML-RPC روشهای مختلفی به شما آموزش دادهایم. در اینجا میخواهیم یکی از بهترین روشها یعنی ویرایش کد htaccess برایتان توضیح دهیم. اگر در کد نویسی تا حدی حرفهای هستید کد زیر را در فایل htaccess وارد و آن را ذخیره کنید:
# Block WordPress xmlrpc.php requests
<Files xmlrpc.php>
order deny,allow
deny from all
allow from 123.123.123.123
</Files>
در این مقاله تلاش کردیم به سادهترین شکل بهترین راهکارهای بهبود و افزایش امنیت وردپرس را با شما در میان بگذاریم. هر کدام از این راهکارها دنیای خودشان را دارند و ما در ابتدای این صفحه آموزشهای موردنیاز این راهکارها را برایتان آماده کردهایم. اگر علاقه دارید به یک متخصص امنیت وردپرس تبدیل شوید، دوره امنیت سایت وردپرسی میتواند شما را در این مسیر همراهی کند.
تاپ وردپرس در بهار 1400 با هدف ارائه آموزش های رایگان در حوزه وردپرس ، ووکامرس و المنتور راه اندازی شد و رسالت ما ارائه آموزش ها با بهترین کیفیت جهت افزایش سطح مهارت کاربران در زمینه طراحی سایت می باشد