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

توسط حمیدرضا عباسی
در این مقاله از سری مقاله های سئو و طراحی سایت گروه وب شهر به بررسی و آموزش بهبود امنیت در وردپرس و عوامل مرتبط با آن خواهیم پرداخت.
امروزه امنیت به یکی از ارکان اصلی وب سایت ها تبدیل شده، با توجه به اینکه مدیریت محتوای وردپرس محبوب ترین سیستم مدیریت محتوای دنیاست و تعداد زیادی از کاربران ایرانی از آن استفاده می کنند، امروز امنیت در وردپرس را بررسی خواهیم کرد و بهبود آن را به شما آموزش می دهیم.
۱- میزبان امن برای سایت خود انتخاب کنید
همه ی ارائه دهندگان خدمات میزبانی وب همسان ایجاد نشده اند و در واقع، اکانتهای آسیب پذیر میزبانی در درصد زیادی از سایت های وردپرس که از آنها استفاده کرده اند، هک شده اند.
در هنگام انتخاب ارائه دهندگان میزبانی وب، به سادگی به سراغ ارزانترین آنها نروید. تحقیقات خود راانجام دهید و مطمئن شوید که از شرکتی که به خوبی تثبیت شده و رکورد خوبی از اقدامات امنیتی قوی دارد، خرید کنید.
این کار همیشه ارزش پرداخت کمی هزینه ی اضافه تر برای آرامش ذهن شما را دارد، زیرا که می دانید سایت شما ایمن است.
پیشنهاد ما به شما : میزبان شهر
۲- حواستان به بروز رسانی ها باشد!
هر نسخه جدید وردپرس شامل وصله ها و تعمیراتی است که آسیب پذیری های واقعی یا بالقوه را نشان می دهد.اگر شما وب سایت خود را با آخرین نسخه وردپرس به روز رسانی نکنید، می توانید وب سایت خود را در معرض حملات قرار دهید.
بسیاری از هکرها عمدا نسخه های قدیمی تر وردپرس که مشکلات امنیتی شناخته شده تری دارند را هدف قرار می دهند، بنابراین همیشه حواستان به اخطارهای داشبوردتان باشد و از پیام های “لطفا به روز رسانی کنید” چشم پوشی نکنید.
همین امر درباره ی تم ها و پلاگین ها هم صدق می کند. اطمینان حاصل کنید که به محض انتشار آخرین نسخه سایت خود را به روز رسانی کنید. اگر همه چیز را به روز رسانی شده نگه دارید، کمتر امکان دارد که سایت شما هک شود.
۳- استفاده کردن از رمز عبور قوی
*** تا حد امکان سعی کنید در رمز عبور خود از حروف نامتعارف و کاراکترهای جانبی استفاده کنید.
همیشه از پسورد قوی برای تمام اکانت های آنلاین از جمله سایت وردپرس استفاده کنید بهتر است ترکیبی از حروف و اعداد،کاراکترهای خاص برای پسورد خود استفاده کنید.این امر باعث میشود هکرها به سختی رمز عبور شما را حدس بزنند.همچنین میتوانید نرم افزار مدیریت پسورد در کامپیوتر یا تلفن همراه خود نصب کنید، اینگونه دیگر نگران فراموش کردن پسوردهای اکانت های مختلف در سایت های گوناگون نخواهید شد.
۴- هرگز ازکلمه ی “admin” به عنوان نام کاربری خود استفاده نکنید
از نام های هم چون “admin” یا “administrator ” یا “modir” و… جهت نام کاربری مدیر استفاده نکنید.
سعی کنید نام کاربری مدیر را چیزی انتخاب کنید که براحتی قابل حدس زدن نباشد.
اوایل سال جاری، موجی از حملات brute-force بر روی وب سایت های وردپرس در سراسر وب راه اندازی شده بود، که شامل تلاش های مکرر برای ورود با استفاده از نام کاربری ‘admin’ همراه با یک سری کلمات عبور مشترک، می شد.
اگر از کلمه ی “admin” به عنوان نام کاربری خود استفاده می کنید، و رمز عبور شما به اندازه کافی قوی نیست (#۳ را ببینید) پس سایت شما در برابر حمله های مخرب، بسیار آسیب پذیر است. به شدت توصیه می شود که نام کاربری خود را به چیزی که کمتر آشکار است تغییر دهید.
تا قبل از نسخه ی ۳٫۰، نصب خودکار وردپرس، کاربری ایجاد می کرد که نام کاربری آن “admin” بود. در نسخه ۳٫۰ این بخش به روز رسانی شد، بنابراین در حال حاضر می توانید نام کاربری خود را انتخاب کنید. بسیاری از کاربرها هنوز هم از “admin” به عنوان نام کاربری استفاده می کنند زیرا که به یک نوع استاندارد تبدیل شده، و به خاطر داشتن آن آسان است. برخی از وب سایت های میزبان از اسکریپت های auto-install که هنوز هم نام کاربری ‘admin’ را به طور پیش فرض تنظیم می کنند، استفاده می کنند.
برای رفع کردن این مشکل، به سادگی یک حساب کاربری مدیر جدید برای خودتان با استفاده از یک نام کاربری مختلف، ایجاد کنید، با نام کاربری جدید وارد شوید و و حساب “admin” اصلی را حذف کنید.
اگر پست هایی دارید که توسط حساب “admin” منتشر شده اند، بعد از حذف کردن، می توانید تمام پست های قبلی را به حساب کاربری جدید خود اختصاص دهید.
۵- نام کاربری خود را از URL بایگانی نویسنده پنهان کنید
راه دیگری که مهاجم به طور بالقوه می تواند نام کاربری شما را به دست آورد، از طریق صفحات آرشیو نویسنده در سایت شما است.
وردپرس به طور پیش فرض نام کاربری شما را درURL صفحه آرشیو نویسنده نمایش می دهد. به عنوان مثال، اگر نام کاربری شما joebloggs است، صفحه آرشیو نویسنده شما چیزی شبیه به http://yoursite.com/author/joebloggs خواهد بود.
به همان دلایلی که در بالا برای نام کاربری “admin” توضیح داده شد، این امر خیلی هم ایده آل نیست. بنابراین ایده ی خوبی است که با استفاده از تغییر ورودی user_nicename خود در پایگاه داده ها، که در اینخا شرح داده شده است، کلمه ی کاربری خود را مخفی کنید.
حتما بخوانید : الگوریتم رنک برین چیست؟
۶- ساختن ورود به سیستم سفارشی و صفحات ثبت نام
در بسیاری از سایت های وردپرس نیاز است کاربران ثبت نام کنند. به عنوان مثال،عضویت در سایت، یادگیری سایت های مدیریت، و یا فروشگاه های آنلاین که کاربران یک حساب کاربری ایجاد میکنند.
به هر حال این کاربران میتوانند از اکانت خود برای ورود به پنل مدیریت وردپرس استفاده کنند،تنها قادر خواهند بود دسترسی به مواردی داشته باشند که توسط سطوح کاربری برای آنها تعیین شده است و دسترسی به صفحات ثبت نام و ورود کاربری محدود میکند.از این رو احتیاج دارید به صفحاتی برای کاربران که بتوانند ثبت نام کنند، پروفایل خود را مدیریت کرده و وارد محیط کاربری شوند.
۷- ویرایش فایل ها از طریق داشبورد را غیر فعال کنید
در یک نصب وردپرس به طور پیش فرض، شما می توانید به نمایش / ویرایشگر رفته و هر یک از فایل های تم خود را دقیقا در داخل داشبورد ویرایش کنید.
مشکل این است که اگر یک هکر موفق به دسترسی به پنل مدیریت شما شد، آنها نیز می تواند فایل های شما را به این ترتیب ویرایش کنند، و هر کدی را که می خواهند اجرا کنند.
پس ایده ی خوبی است که این روش ویرایش فایل ها را با اضافه کردن موارد زیر به فایل wp-config.php خود، غیر فعال کنید:
;(define( ‘DISALLOW_FILE_EDIT’, true
۸- آموزش در مورد سطوح دسترسی کاربران و مجوز آنها در وردپرس
وردپرس با یک سیستم مدیریت کاربر قدرتمند با قابلیت ها و سطوح کاربری مختلف عرضه میشود. وقتی یک کاربر جدید به سایت وردپرس خود اضافه میکنید میتوانید برای آن سطوح کاربری انتخاب کنید،این سطح کاربری تعیین میکند چه کارهایی میتوانند در سایت شما انجام دهند.
تخصیص سطوح کاربری نادرست میتواند به افراد دسترسی هایی که به آنها نیاز ندارند بدهد.
– محدودیت دسترسی پیشخوان
برخی از سایت های وردپرس دارای کاربران خاص که نیاز دارند دسترسی به پیشخوان داشته باشند و برخی از کاربران نیاز نخواهند داشت. با این حال، به طور پیش فرض همه کاربران می توانند به پنل مدیریت وردپرس دسترسی داشته باشند.با نصب وفعال سازی افزونه Remove Dashboard Access میتوانید مشخص کنید چه کاربری به پنل مدیریت سایت شما دسترسی داشته باشد.
۹- سعی کنید از تم های رایگان استفاده نکنید
ما به کیفیت و امنیت تم های رایگان خود اعتماد داریم. اما به عنوان یک قاعده کلی، در صورت امکان، بهتر است از تم های رایگان استفاده نکنید، به خصوص اگر که آنها توسط یک توسعه دهنده ی معتبر هم ساخته نشده باشند.
دلیل اصلی برای انجام ندادن این کار است که تم های رایگان اغلب می تواند شامل چیزهایی مانند رمز گذاری base64 باشند، که ممکن است به شکل نا محسوسی برای وارد کردن لینک های اسپم در سایت شما، و یا کدهای مخرب دیگری که می تواند همه نوع مشکلی ایجاد کند، مورد استفاده قرار گیرد، همانطور که در این آزمایش نشان داده شده است، ۸ عدد از ۱۰ عدد سایتی که تم رایگان ارائه می دهند حاوی کد base64 هستند.
اگر شما واقعا نیاز به استفاده از یک تم رایگان دارید، فقط باید از آنهایی استفاده کنید که توسط شرکت های سازنده ی تم مورد اعتماد توسعه یافته باشند، و یا از آنهایی که در مخزن رسمی تم های WordPress.org در دسترس هستند، استفاده کنید.
توجه: همان منطق در مورد پلاگین ها هم صدق می کند. فقط از پلاگین هایی که در لیست WordPress.org ذکر شده اند، و یا توسط یک توسعه دهنده معتبر ساخته شده اند، استفاده کنید.
۱۰- محدود کردن تعداد تلاش ورود به سیستم
به طور پیش فرض در وردپرس میتوانید هر تعداد دفعاتی که دوست دارید رمز عبور را وارد کنید و ابن باعث میشود که بالاخره بتوانید با وارد کردن ترکیبات مختلف، پسورد را حدس بزنید. همچنین به هکرها اجازه میدهد توسط اسکریپت های خودکار کلمات عبور بشکنند. برای حل این مشکل افزونه login lockdown نصب و فعال کنید،پس از فعال سازی صفحه تنظیمات login lockdown، پیکربندی تنظیمات را انجام دهید.
در مواردی که یک هکر یا یک ربات با استفاده از حمله ی brute-force برای شکستن رمز عبور شما تلاش می کند، محدود کردن تعداد دفعات تلاش های شکست خورده از یک آدرس IP مشخص برای ورود به سیستم، مفید خواهد بود.
محدود کردن تعداد دفعات تلاش برای ورود فقط این کار را انجام می دهد: به شما اجازه می دهد که مشخص کنید چند مجدد مجاز است، و یک IP چه مدت پس از تلاش های مجدد شکست خورده برای ورود به سیستم، قفل خواهد شد.
راه هایی هم برای دور زدن این کار وجود دارد، زیرا که برخی از حمله کننده ها، از تعداد زیادی از آدرس های IP مختلف استفاده می کنند، اما هنوز هم به عنوان احتیاط بیشتر ارزش انجام دادن را دارد.
۱۱- خروج کاربران بیکار به طور خودکار در وردپرس
کاربران به طور اتوماتیک از سیستم خارج نمیشوند مگر زمانی که بخواهند از سیستم خارج شوند یا پنجره مرورگر خود را ببندند،این مورد میتواند برای سایت های وردپرس با اطلاعات حساس نگران کننده باشد.به همین دلیل موسسات مالی وب سایت و برنامه ها به صورت خودکار از سیستم خروج کاربران استفاده میکند اگر کاربری فعال نباشد.
برای حل این مشکل افزونه Idle User Logout را نصب و فعال کنید،پس از فعال سازی به صفحه تنظیمات افزونه بروید و زمان بیکاری و خروج از سیستم را برای افرادی که فعالیت ندارند معین نمایید.
۱۲- محدودیت دسترسی ورود به سیستم با IP آدرس
یکی از راه های دیگر امنیت ورود به سیستم وردپرس محدودیت دسترسی با IP آدرس خاص می باشد. این حائز اهمیت که فقط شما و تعداد کمی از کاربران مورد اعتمادتون دسترسی به پنل مدیریت وردپرس داشته باشند.
مقاله بسیار مفید ” افزایش سرعت در وردپرس ” را حتما بخوانید!
۱۳- استفاده از فایروال برنامه های کاربردی تحت وب
این برنامه یا WAF، ترافیک وب سایت و درخواست های بلاک مشکوک که به وب سایت شما وارد میشوند را نظارت میکنند،درحالی که چندین افزونه فایروال وردپرس وجود دارد ما به شما افزونه sucuri توصیه میکنیم. سرویس نظارت و امنیت است که یک امنیت ابری بر اساس WAF(دیواره آتش وب) برای محافظت کردن وب سایت شما ارائه میکند.
در مرحله اول تمام ترافیک وب سایت شما سراسر پروکسی ابری قرار میگیرد،مکانی که هر درخواست و بلاک مشکوکی که به وب سایت شما وارد میشود را تجزیه تحلیل کرده و از حملات فیشینگ، هک کردن یا بدافزارها و دیگر فعالیت های مخرب در درون وب سایت شما جلوگیری میکند.
۱۴- بصورت مرتب از پایگاه داده خود پشتیبان بگیرید.
من نمی توانم اهمیت پشتیبان گیری منظم از وب سایتتان را بیش از این تاکید کنم. این چیزی است که بسیاری از مردم تا زمانی که دیگر خیلی دیر شده است، انجام نمی دهند.
حتی اگر بهترین تدابیر امنیتی را در اختیار داشته باشید، هیچ وقت نمی دانید که چه وقت اتفاق غیر منتظره ای رخ خواهد داد که ممکن است سایت شما را برای یک حمله آماده کند.
در صورتی که این اتفاق بیافتد، باید مطمئن باشید که تمام محتوای شما به آسانی باز خواهد گشت، به طوری که بتوانید به راحتی سایت خود را به شکوه سابق آن بازگردانید.
Codex وردپرس به شما می گوید که دقیقا چگونه از سایت خود پشتیبان گیری کنید، و در صورتی که این کار بیش از حد سخت به نظر می رسد، می توانید از یک پلاگین مانند WordPress Backup to Dropbox استفاده کنید که به طور منظم و خودکار از سایت شما پشتیبان گیری کند.
۱۵- از افزونه های امنیتی استفاده کنید
دزست مانند تمام اقدامات فوق، افزونه های زیادی وجود دارد که شما می توانید از آنها برای تشدید امنیت سایت خود و کاهش احتمال هک شدن، استفاده کنید.
افزونه های بسیاری برای معرفی در این قسمت وجود داشت ولی کاربردی ترین و کامل ترین آن ها افزونه All In One WP Security and Firewall است.
برای اطلاعات بیشتر مقاله ” افزونه های امنیتی وردپرس ” را بخوانید!
تمام مواردی که در اینجا به بررسی آن پرداختیم را می توان به طراحی با این افزونه انجام داد.
دانلود افزونه All In One WP Security and Firewall
۱۶- سطح دسترسی پوشه های زیر در هاست را روی ۷۵۵ (user account) قرار دهید :
/wp-admin/
/wp-includes/
/wp-content/
/wp-content/themes/
/wp-content/plugins/
.سطح دسترسی فایلهای داخل آنها بر روی ۶۴۴ قرار گیرد ***
۱۷- امنیت پوشه wp-includes را به کمک قرار دادن کدهای زیر (در .htaccess) بالاتر ببرید:
# Block the include-only files.
RewriteEngine On
RewriteBase /
RewriteRule ^wp-admin/includes/ – [F,L]
RewriteRule !^wp-includes/ – [S=3]
RewriteRule ^wp-includes/[^/]+.php$ – [F,L]
RewriteRule ^wp-includes/js/tinymce/langs/.+.php – [F,L]
RewriteRule ^wp-includes/theme-compat/ – [F,L]
۱۸- امنیت فایل wp-config.php را به کمک قرار دادن کدهای زیر (در .htaccess) بالاتر ببرید:
<files wp-config.php>
order allow,deny
deny from all
</files>
۱۹- در پایگاه داده، پیشوند (_prefix) پیشفرض (wp_) را تغییر دهید.
*************************************************
و در آخر بصورت خلاصه :
- همیشه اقدام به بروز رسانی هسته WordPress نمائید.
- هسته وردپرس خود را تغییر ندهید.
- همیشه مطمئن شوید پلاگین های شما آپدیت هستند.
- حذف تمامی پلاگین هایی که غیرقابل شده است و یا مشکل دار هستند.
- همیشه قالب وب سایت خود را بروز کنید.
- پلاگین ها و یا تم های خود را فقط از منابع معتبر و رسمی دریافت کنید. (سایت رسمی WordPress.org)
- مطمئن شوید نسخه PHP شما آخرین بروز رسانی را انجام داده باشد.
- اقدام به تعویض نام کاربری خود از Admin به نام دیگر نمائید.
- همیشه از پسورد های قوی استفاده کنید.
- از کلمات عبور تکراری استفاده نکنید.
- سایت خود را فقط از شبکه های مورد اعتماد بروزرسانی کنید.
- استفاده از آنتی ویروس در سیستم خود.
- اقدام به فعال سازی Google Consol فرمایید.
- فقط از بکاپ برای بازگردانی اطلاعات استفاده کنید.
- محدود کردن تعداد لاگین برای ورود به صفحه مدیریت.
- فعال کردن تایید ۲ مرحله برای ورود به بخش مدیریت.
- اطمینان از سطح دسترسی مناسب به فایل ها(Chmod)
- آدرس پیش فرض دیتابیس خود را تغییر دهید.
- جلوگیری از آپلود فایل PHP در مسیر های خاص. (disable_functions)
- ویرایش گر فایل های PHP را غیر فعال کنید.
- فایل wp-config.php خود را ایمن سازی کنید.
- اقدام به غیر فعال سازی قابلیت XML-RPC در سایت خود فرمایید.
- اقدام به غیر فعال سازی اخطار های PHP فرمایید.
- فایروال حتما نصب کنید.
*** ما به تجربه می دانیم که هک شدن سایتمان اصلا سرگرم کننده نیست. به همین دلیل، اینجا در وب شهر، امنیت را بسیار جدی می گیریم.
اگر سوالی در زمینه آموزش سئو و طراحی سایت دارید می توانید آن را در قسمت دیدگاه با ما در میان بگذارید تا کارشناسان گروه طراحی سایت وب شهر در اولین فرصت به صورت دیدگاه یا ارائه مقاله به سوالات شما پاسخ دهند. همچنین، خوشحال می شویم که پیشنهادات و انتقادات خود را با ما در میان بگذارید تا بتوانیم با کمک شما پایگاهی ایده آل برای آموزش طراحی سایت و سئو ایجاد نماییم.
مطالب پیشنهادی

روش هایی جهت حفظ رتبه در موتورهای جستجو
25 مهر 1396