
وقتی با صاحبان وبسایتهای جدید صحبت میکنیم، همیشه توصیه میکنیم که در اسرع وقت یک راهکار امنیتی استاندارد و عالی را برای سایت خود درنظر بگیرید. با این اوصاف، ایمن و مطمئن نگه داشتن وبسایت وردپرس برای هر صاحب وبسایتی مهم است. درست همانطور که از خانه یا محل کار خود محافظت میکنید، باید از وبسایت خود در برابر تهدیدات آنلاین نیز محافظت کنید. اگر اقدامات صحیحی را برای ایمنسازی وبسایت خود انجام ندهید، میتواند در معرض خطر قرار گیرد. هر روز، گوگل هزاران وبسایت را به دلیل بدافزار و سایر مشکلات امنیتی مسدود میکند. در این راهنما، نکات برتر و روش های افزایش امنیت در وردپرس را برای کمک به شما در محافظت از وبسایت خود در برابر هکرها و بدافزارها به اشتراک خواهیم گذاشت.
روش های افزایش امنیت در وردپرس
اگرچه وردپرس بطور پیشفرض بسیار ایمن است و مرتباً توسط صدها توسعهدهنده بررسی میشود، اما هنوز کارهای زیادی برای ایمن نگه داشتن سایت شما باید انجام شود. معتقدیم که امنیت فقط به معنای حذف ریسک نیست؛ بلکه به معنای کاهش ریسک نیز هست. به عنوان صاحب یک وبسایت، کارهای زیادی میتوانید برای بهبود امنیت وردپرس خود انجام دهید، حتی اگر در زمینه فناوری اطلاعات مهارت کافی نداشته باشید. به همین دلیل است که ما یک چک لیست امنیتی وردپرس از اقدامات عملی که میتوانید برای محافظت از وبسایت خود در برابر آسیبپذیریهای امنیتی انجام دهید، تهیه کردهایم.
چرا امنیت سایت از اهمین بالایی برخوردار است؟
یک وبسایت وردپرس هکشده میتواند آسیب جدی به درآمد و اعتبار کسبوکار شما وارد کند. هکرها میتوانند اطلاعات و رمزهای عبور کاربران را سرقت کنند، نرمافزارهای مخرب نصب کنند و حتی بدافزار را بین کاربران شما توزیع کنند. بدترین حالت، ممکن است خودتان را در حال پرداخت باجافزار به هکرها ببینید، فقط برای اینکه دوباره به وبسایت خود دسترسی پیدا کنید.
هر روز، گوگل به ۱۲ تا ۱۴ میلیون کاربر هشدار میدهد که وبسایتی که سعی در بازدید از آن دارند، ممکن است حاوی بدافزار یا سرقت اطلاعات باشد. علاوه بر این، گوگل روزانه حدود ۱۰،۰۰۰+ وبسایت را به دلیل بدافزار یا فیشینگ در لیست سیاه قرار میدهد. همانطور که صاحبان مشاغل دارای موقعیت مکانی فیزیکی مسئول حفاظت از دارایی خود هستند، صاحبان مشاغل آنلاین نیز باید به امنیت وردپرس خود توجه بیشتری داشته باشند.
روش های متداول برای افزایش امنیت وردپرس
یک سری روش برای افزایش ایمنی وردپرس وجود دارد که به راحتی میتوان آنها را اجرایی کرد. در واقع برای انجام این امور نیاز به اقدام سختی نیست و کافیست کمی دقت کنید. این روش های افزایش امنیت در وردپرس را در ادامه با هم بررسی میکنیم.
1. بروز نگه داشتن وردپرس
وردپرس یک نرمافزار متنباز است و مرتباً بهروزرسانی و نگهداری میشود. بهطور پیشفرض، وردپرس بهطور خودکار بهروزرسانیهای جزئی را انجام میدهد. برای انتشار نسخههای اصلی، باید بهروزرسانی را بهصورت دستی انجام دهید. وردپرس همچنین دارای هزاران افزونه و قالب است که میتوانید در وبسایت خود نصب کنید. این افزونهها و قالبها توسط توسعهدهندگان نگهداری میشوند که بهطور منظم بهروزرسانیهایی را نیز منتشر میکنند. این بهروزرسانیهای وردپرس برای امنیت و پایداری سایت وردپرس شما بسیار مهم هستند. باید مطمئن شوید که هسته، افزونهها و قالب وردپرس شما بهروز هستند.
حتما بخوانید: 15 اقدام ضروری برای افزایش امنیت وردپرس
2. از رمزهای عبور و مجوزهای کاربری قوی استفاده کنید
رایجترین تلاشهای هک وردپرس از رمزهای عبور دزدیده شده استفاده میکنند. با این حال، میتوانید با استفاده از رمزهای عبور قویتر و منحصر به فرد برای وبسایت خود، این کار را دشوار کنید. ما فقط در مورد ناحیه مدیریت وردپرس صحبت نمیکنیم. به یاد داشته باشید که برای حسابهای FTP، پایگاههای داده، حسابهای میزبانی وردپرس و آدرسهای ایمیل سفارشی که از نام دامنه سایت شما استفاده میکنند، رمزهای عبور قوی ایجاد کنید.
بسیاری از مبتدیان دوست ندارند از رمزهای عبور قوی استفاده کنند زیرا به خاطر سپردن آنها دشوار است. نکته مهم این است که دیگر نیازی به به خاطر سپردن رمزهای عبور ندارید زیرا میتوانید از یک مدیریت و ذخیرهساز رمز عبور استفاده کنید. راه دیگر برای کاهش خطر، این است که به هیچ کس اجازه دسترسی به حساب مدیریت وردپرس خود را ندهید، مگر اینکه مجبور باشید. اگر تیم بزرگی دارید یا نویسندگان مهمان دارید، قبل از اضافه کردن حسابهای کاربری و نویسندگان جدید به سایت وردپرس خود، مطمئن شوید که نقشها و قابلیتهای کاربر در وردپرس را درک میکنید.
3. هاست وردپرس ایمن انتخاب کنید
سرویس میزبانی وردپرس شما مهمترین نقش را در امنیت سایت وردپرس شما ایفا میکند. بهترین هاست وردپرس اقدامات بیشتری را برای محافظت از سرورهای خود در برابر تهدیدات رایج انجام میدهد. در اینجا تنها چند روش وجود دارد که شرکتهای میزبانی وب خوب برای محافظت از وبسایتها و دادههای شما انجام میدهند:
- آنها به طور مداوم شبکه خود را برای فعالیتهای مشکوک رصد میکنند.
- همه شرکتهای میزبانی خوب، ابزارهایی برای جلوگیری از حملات DDoS در مقیاس بزرگ دارند.
- آنها نرمافزار سرور، نسخههای PHP و سختافزار خود را بهروز نگه میدارند تا از سوءاستفاده هکرها از یک آسیبپذیری امنیتی شناخته شده در نسخه قدیمی جلوگیری کنند.
- آنها برنامههای بازیابی فاجعه و تصادف آماده برای استقرار دارند که به آنها امکان میدهد در صورت بروز یک حادثه بزرگ از دادههای شما محافظت کنند.
در یک برنامه میزبانی مشترک، منابع سرور را با بسیاری از مشتریان دیگر به اشتراک میگذارید. خطر آلودگی بین سایتی وجود دارد که در آن یک هکر میتواند از یک سایت همسایه برای حمله به وبسایت شما استفاده کند. در مقابل، استفاده از یک سرویس میزبانی وردپرس مدیریت شده، پلتفرم امنتری را برای وبسایت شما فراهم میکند. شرکتهای هاستینگ وردپرس مدیریتشده، پشتیبانگیری خودکار، بهروزرسانی خودکار وردپرس و پیکربندیهای امنیتی پیشرفتهتری را برای محافظت از وبسایت شما ارائه میدهند.
روش های پیشرفته برای افزایش امنیت وردپرس
روشهایی که در بالا گفته شد موارد مبتدی هستند که به راحتی میتوانید آنها را اجرا کنید و درنظر داشته باشید. اما در ادامه برای افزایش امنیت بیشتر و رسیدن به یک امنیت عالی، نیاز به روشهای پیشرفتهتری دارید.
4. نصب یک افزونه پشتیبانگیری وردپرس
پشتیبانگیری اولین دفاع شما در برابر هرگونه حمله وردپرس است. به یاد داشته باشید، هیچ چیز ۱۰۰٪ امن نیست. اگر وبسایتهای دولتی قابل هک شدن باشند، وبسایت شما نیز میتواند هک شود. پشتیبانگیری به شما این امکان را میدهد که در صورت وقوع اتفاق بد، سایت وردپرس خود را به سرعت بازیابی کنید.
افزونههای پشتیبانگیری وردپرس رایگان و پولی زیادی وجود دارد که میتوانید از آنها استفاده کنید. مهمترین چیزی که باید در مورد پشتیبانگیری بدانید این است که باید مرتباً پشتیبانگیری کامل سایت را در یک مکان دور (نه حساب میزبانی خود) ذخیره کنید.
بر اساس اینکه چند وقت یکبار وبسایت خود را بهروزرسانی میکنید، تنظیم ایدهآل میتواند یک بار در روز یا پشتیبانگیری در زمان واقعی باشد. خوشبختانه این کار را میتوان به راحتی با استفاده از افزونههایی مانند Duplicator، UpdraftPlus و… انجام داد.
5. یک افزونه امنیتی معتبر وردپرس نصب کنید
پس از پشتیبانگیری، کار بعدی که باید انجام دهیم، راهاندازی یک سیستم حسابرسی و نظارت است که هر اتفاقی را که در وبسایت شما میافتد، پیگیری کند. این شامل نظارت بر یکپارچگی فایلها، تلاشهای ناموفق برای ورود به سیستم، اسکن بدافزار و موارد دیگر میشود. خوشبختانه، میتوانید با نصب یکی از بهترین افزونههای امنیتی وردپرس، مانند Sucuri، به راحتی از این امر مراقبت کنید. شما باید افزونه رایگان Sucuri Security را نصب و فعال کنید. اکنون، میتوانید به داشبورد Sucuri Security » بروید تا ببینید آیا افزونه مشکلی فوری با کد وردپرس شما پیدا کرده است یا خیر.
6. فعال کردن فایروال برنامه وب
استفاده از یک فایروال برنامه وب (WAF) سادهترین راه برای محافظت از سایت شما و اطمینان از امنیت وردپرس شماست. فایروال وبسایت، تمام ترافیک مخرب را قبل از رسیدن به وبسایت شما مسدود میکند.
- فایروال وبسایت در سطح DNS، ترافیک وبسایت شما را از طریق سرورهای پروکسی ابری خود هدایت میکند. این امر به آن اجازه میدهد تا فقط ترافیک واقعی را به سرور وب شما ارسال کند.
- فایروال برنامه، ترافیک را پس از رسیدن به سرور شما، اما قبل از بارگیری اکثر اسکریپتهای وردپرس، بررسی میکند. این روش به اندازه فایروال سطح DNS در کاهش بار سرور کارآمد نیست.
7. استفاده از گواهینامه SSL
SSL (لایه سوکتهای امن) پروتکلی است که انتقال دادهها بین وبسایت شما و مرورگر کاربر را رمزگذاری میکند. این رمزگذاری، سرقت اطلاعات را برای افراد ناشناس دشوارتر میکند. پس از فعال کردن SSL، آدرس وبسایت شما به جای HTTP از HTTPS استفاده خواهد کرد. همچنین یک علامت قفل یا نماد مشابه در کنار آدرس وبسایت خود در مرورگر مشاهده خواهید کرد.
استفاده از SSL برای همه وبسایتهای وردپرس شما آسانتر از همیشه است. بسیاری از شرکتهای هاستینگ اکنون یک گواهینامه SSL رایگان برای وبسایت وردپرس شما ارائه میدهند. اگر شرکت هاستینگ شما چنین گواهینامهای ارائه نمیدهد، میتوانید یک گواهینامه SSL از مرجع دیگری خریداری کنید.
8. تغییر نام کاربری پیشفرض ادمین
در گذشته، نام کاربری پیشفرض مدیر وردپرس «admin» بود. از آنجایی که نامهای کاربری نیمی از اعتبارنامههای ورود به سیستم را تشکیل میدهند، این امر انجام حملات جستجوی فراگیر را برای هکرها آسانتر میکرد. خوشبختانه، وردپرس از آن زمان این را تغییر داده و اکنون از شما میخواهد که در زمان نصب وردپرس، یک نام کاربری سفارشی انتخاب کنید. با این حال، برخی از نصبکنندههای وردپرس با یک کلیک هنوز نام کاربری پیشفرض مدیر را «admin» قرار میدهند. اگر متوجه شدید که این مورد وجود دارد، احتمالاً ایده خوبی است که میزبانی وب خود را تغییر دهید. از آنجایی که وردپرس به طور پیشفرض به شما اجازه تغییر نام کاربری را نمیدهد، سه روش برای تغییر نام کاربری وجود دارد.
- یک نام کاربری مدیر جدید ایجاد کنید و نام کاربری قدیمی را حذف کنید.
- از افزونه تغییر نام کاربری استفاده کنید
- نام کاربری را از phpMyAdmin بهروزرسانی کنید
حتما بخوانید: حفظ امنیت فرمهای وردپرسی با No CAPTCHA reCAPTCHA
9. غیرفعال کردن ویرایشگر فایل
وردپرس دارای یک ویرایشگر کد داخلی است که به شما امکان میدهد فایلهای قالب و افزونه خود را مستقیماً از ناحیه مدیریت وردپرس خود ویرایش کنید. اگر این ویژگی در دست افراد نامناسب قرار گیرد، میتواند یک خطر امنیتی باشد، به همین دلیل توصیه میکنیم آن را غیرفعال کنید. شما میتوانید به راحتی این کار را با اضافه کردن کد زیر به فایل wp-config.php یا با استفاده از یک افزونهی قطعه کد مانند WPCode (توصیه میشود) انجام دهید:
// Disallow file edit define( 'DISALLOW_FILE_EDIT', true );
10. غیرفعال کردن اجرای فایل PHP در برخی از دایرکتوریهای وردپرس
راه دیگر برای افزایش امنیت وردپرس، غیرفعال کردن اجرای فایل PHP در دایرکتوریهایی است که نیازی به آن نیست، مانند /wp-content/uploads/. میتوانید این کار را با باز کردن یک ویرایشگر متن مانند Notepad و قرار دادن این کد انجام دهید:
<Files *.php> deny from all </Files>
در مرحله بعد، باید این فایل را با نام htaccess. ذخیره کنید و آن را با استفاده از یک سرویس گیرنده FTP در پوشه /wp-content/uploads/ در وبسایت خود آپلود کنید. همچنین، میتوانید این کار را با یک کلیک و با استفاده از ویژگی Hardening در افزونه رایگان Sucuri که در بالا به آن اشاره کردیم، انجام دهید.
11. محدود کردن تلاشهای ورود به سیستم
وردپرس به طور پیشفرض به کاربران اجازه میدهد هر چند بار که میخواهند برای ورود به سیستم تلاش کنند. این امر سایت وردپرس شما را در برابر حملات جستجوی فراگیر آسیبپذیر میکند. اینجاست که هکرها سعی میکنند با تلاش برای ورود با ترکیبهای مختلف، رمزهای عبور را بشکنند. این مشکل را میتوان به راحتی با محدود کردن تلاشهای ناموفق ورود کاربر برطرف کرد. اگر از فایروال برنامه وب که قبلاً ذکر شد استفاده میکنید، این مشکل به طور خودکار برطرف میشود. با این حال، اگر فایروال را تنظیم نکردهاید، میتوانید با استفاده از مراحل زیر پیش بروید.
ابتدا باید افزونه رایگان Limit Login Attempts Reloaded را نصب و فعال کنید. پس از فعالسازی، افزونه شروع به محدود کردن تعداد تلاشهای ورود کاربران میکند. تنظیمات پیشفرض برای اکثر وبسایتها کار میکند. با این حال، میتوانید با مراجعه به صفحه تنظیمات » محدود کردن تلاشهای ورود و کلیک روی برگه «تنظیمات» در بالا، آنها را سفارشی کنید. برای مثال، برای رعایت قوانین GDPR، میتوانید روی کادر «رعایت GDPR» کلیک کنید.
12. اضافه کردن احراز هویت دو مرحلهای (2FA)
روش احراز هویت دو مرحلهای برای ورود کاربران به دو مرحله مختلف نیاز دارد:
- مرحله اول نام کاربری و رمز عبور است.
- مرحله دوم مستلزم استفاده از کدی از دستگاه یا برنامهای است که در اختیار دارید و هکرها نمیتوانند به آن دسترسی پیدا کنند، مانند تلفن هوشمند شما.
بیشتر وبسایتهای برتر آنلاین مانند گوگل، فیسبوک و توییتر به شما اجازه میدهند آن را برای حسابهای خود فعال کنید. همچنین میتوانید همین قابلیت را به سایت وردپرس خود اضافه کنید. ابتدا باید افزونه WP 2FA – Two-factor Authentication را نصب و فعال کنید و عملیات را از بخش تنظیمات آن انجام دهید.
13. تغییر پیشوند پایگاه داده وردپرس
به طور پیشفرض، وردپرس از wp_ به عنوان پیشوند برای همه جداول در پایگاه داده وردپرس شما استفاده میکند. اگر سایت وردپرس شما از پیشوند پیشفرض پایگاه داده استفاده میکند، حدس زدن نام جدول شما برای هکرها آسانتر میشود. به همین دلیل توصیه میکنیم آن را تغییر دهید.
14. محافظت از صفحه مدیریت و ورود وردپرس با رمز عبور
معمولاً هکرها میتوانند بدون هیچ محدودیتی پوشه wp-admin و صفحه ورود شما را درخواست کنند. این به آنها اجازه میدهد تا ترفندهای هک خود را امتحان کنند یا حملات DDoS انجام دهند. شما میتوانید محافظت از رمز عبور اضافی را در سطح سرور اضافه کنید که به طور مؤثر این درخواستها را مسدود میکند. وقتی آدرس یکی از پوشههای وبسایت خود را در مرورگر وب تایپ میکنید، در صورت وجود، صفحه وبی به نام index.html به شما نشان داده میشود. اگر وجود نداشته باشد، به جای آن لیستی از فایلهای موجود در آن پوشه به شما نشان داده میشود. این کار به عنوان مرور دایرکتوری شناخته میشود.
مرور دایرکتوری میتواند توسط هکرها برای فهمیدن اینکه آیا فایلهایی با آسیبپذیریهای شناخته شده دارید یا خیر، استفاده شود، بنابراین میتوانند از این فایلها برای دسترسی به سایت شما استفاده کنند. مرور دایرکتوری همچنین میتواند توسط افراد دیگر برای بررسی فایلهای شما، کپی کردن تصاویر، یافتن ساختار دایرکتوری شما و سایر اطلاعات استفاده شود. به همین دلیل اکیداً توصیه میشود که فهرستبندی و مرور دایرکتوری را خاموش کنید. شما باید با استفاده از FTP یا مدیر فایل ارائه دهنده هاست خود به وبسایت خود متصل شوید. سپس، فایل htaccess. را در دایرکتوری ریشه وبسایت خود پیدا کنید. اگر نمیتوانید آن را در آنجا ببینید، به راهنمای ما در مورد اینکه چرا نمیتوانید فایل htaccess. را در وردپرس ببینید، مراجعه کنید. پس از آن، باید خط زیر را در انتهای فایل .htaccess اضافه کنید:
Options -Indexes
15. غیرفعال کردن XML-RPC در وردپرس
XML-RPC یک API اصلی وردپرس است که به اتصال سایت وردپرس شما به برنامههای وب و موبایل کمک میکند. این API به طور پیشفرض از وردپرس ۳.۵ فعال شده است. با این حال، به دلیل ماهیت قدرتمندش، XML-RPC میتواند حملات جستجوی فراگیر را به طور قابل توجهی تقویت کند. به عنوان مثال، اگر یک هکر به طور سنتی میخواست ۵۰۰ رمز عبور مختلف را در وبسایت شما امتحان کند، باید ۵۰۰ تلاش ورود جداگانه انجام میداد. افزونه Limit Login Attempts Reloaded میتواند این را تشخیص داده و مسدود کند.
اما با XML-RPC، یک هکر میتواند از تابع system.multicall برای امتحان کردن هزاران رمز عبور با مثلاً ۲۰ یا ۵۰ درخواست استفاده کند. به همین دلیل است که اگر از XML-RPC استفاده نمیکنید، توصیه میکنیم آن را غیرفعال کنید.
16. خروج خودکار کاربران غیرفعال در وردپرس
کاربران وارد شده گاهی اوقات میتوانند از صفحه نمایش دور شوند و این یک خطر امنیتی محسوب میشود. شخصی میتواند جلسه کاربری آنها را بدزدد، رمزهای عبور را تغییر دهد یا در حساب کاربری آنها تغییراتی ایجاد کند. به همین دلیل است که بسیاری از سایتهای بانکی و مالی به طور خودکار یک کاربر غیرفعال را از سیستم خارج میکنند. شما میتوانید عملکرد مشابهی را در سایت وردپرس خود نیز تنظیم کنید. شما باید افزونه Inactive Logout را نصب و فعال کنید. پس از فعالسازی، برای سفارشیسازی تنظیمات خروج، به صفحه تنظیمات » Inactive Logout مراجعه کنید.
17. اضافه کردن سوالات امنیتی به صفحه ورود وردپرس
اضافه کردن یک سوال امنیتی به صفحه ورود وردپرس، دسترسی غیرمجاز را برای افراد دشوارتر میکند. شما میتوانید با نصب افزونه Two Factor Authentication سوالات امنیتی اضافه کنید. پس از فعالسازی، برای پیکربندی تنظیمات افزونه، باید به صفحه Multi-factor Authentication » Two Factor مراجعه کنید.
این به شما امکان میدهد انواع مختلفی از احراز هویت دو عاملی، از جمله سوالات امنیتی، را به سایت خود اضافه کنید.
18. اسکن وردپرس برای بدافزارها و آسیبپذیریها
اگر یک افزونه امنیتی وردپرس نصب کرده باشید، به طور مرتب بدافزار و نشانههای نقض امنیتی را بررسی میکند. با این حال، اگر شاهد افت ناگهانی در ترافیک وبسایت یا رتبهبندی جستجو هستید، ممکن است بخواهید به صورت دستی بدافزار را اسکن کنید. میتوانید این کار را با استفاده از افزونه امنیتی وردپرس یا یکی از بهترین اسکنرهای بدافزار و امنیت انجام دهید. اجرای این اسکنهای آنلاین کاملاً ساده است. شما فقط URL وبسایت خود را وارد میکنید و خزندههای آنها وبسایت شما را برای یافتن بدافزارها و کدهای مخرب شناخته شده بررسی میکنند.
حال، به خاطر داشته باشید که اکثر اسکنرهای امنیتی وردپرس فقط میتوانند در صورت وجود بدافزار در سایت شما به شما هشدار دهند. آنها نمیتوانند بدافزار را حذف کنند یا یک سایت وردپرس هک شده را پاکسازی کنند. این ما را به بخش بعدی، پاکسازی بدافزارها و سایتهای وردپرس هک شده، میرساند.
رفع مشکل هک شدن سایت وردپرس
بسیاری از کاربران وردپرس تا زمانی که وبسایتشان هک نشود، اهمیت پشتیبانگیری و امنیت وبسایت را درک نمیکنند. هکرها در سایتهای آسیبدیده، بکدور نصب میکنند و اگر این بکدورها به درستی برطرف نشوند، احتمالاً وبسایت شما دوباره هک خواهد شد. برای کاربران ماجراجو و خودآموز، ما یک راهنمای گام به گام برای رفع مشکل هک شدن سایت وردپرس گردآوری کردهایم. با این حال، پاکسازی یک سایت وردپرس میتواند بسیار دشوار و زمانبر باشد. توصیه ما این است که به یک متخصص اجازه دهید این کار را انجام دهد. اگر برای استفاده از افزونه امنیتی Sucuri که در بالا به آن اشاره کردیم، هزینه پرداخت میکنید، تعمیر سایت هک شده در هزینه آن لحاظ شده است.
جمع بندی
امنیت مسئله بسیار مهم و حیاتی برای هر سایتی است که باید قطعا صاحبین سایتها بطور قطع به یقین به آن توجه ویژه داشته باشند. برای حفظ ایمنی کامل سایتهای وردپرسی یک سری اقدامات امنیتی مبتدی وجود دارد که هر کسی میتواند آنها را اجرایی کند و روش های افزایش امنیت در وردپرس پیشرفتهای نیز هست که اگر آنها اجرایی شوند دیگر یک سایت کاملا ایمن و مطمئن خواهید داشت.