20 اقدام مهم برای افزایش امنیت وردپرس در سال 2020
اولین و مهمترین کاری که پس از طراحی سایت با وردپرس باید انجام دهید، در نظر گرفتن تمهیداتی برای امن تر کردن سایت وردپرس است. در این مقاله قصد داریم به صورت جامع و کامل به آموزش راه های افزایش امنیت وردپرس بپردازیم و به شما بیاموزیم که چگونه در برابر حملات هکرها از سایت خود محافظت کنید.
برقراری و افزایش امنیت در وردپرس همواره یکی از چالشی ترین و مهمترین بحث ها در فضای وردپرس بوده است. وردپرس به دلیل محبوبیت زیادی که بین دیگر سیستم های مدیریت محتوا داشته و کاربران زیادی از آن استفاده می کنند، همیشه در معرض هک و نفوذ بیشتری قرار دارد.
بسیاری از کاربران دوست نداشته یا زمان کافی در اختیار ندارند که وارد تمام مقوله های امنیتی شوند و ترجیح می دهند تنها با استفاده از بهترین افزونه های امنیتی وردپرس، امنیت سایت شان را تامین کنند.
البته این موضوع که روی یک دکمه کلیک کنید و امنیت برقرار شود، بسیار بی دردسر و آسان است. ولی استفاده از افزونه های امنیتی تنها یک لایه اضافی برای تمام اقدامات مهم امنیتی موجود در وردپرس است. احتمالاً این بی دقتی یکی از دلایل بحث های بی پایان در مورد ناامنی وردپرس باشد.
با این وجود باید توجه داشت که بحث امنیت یک موضوع نسبی است و هیچ نرم افزاری ۱۰۰% امن نیست. بنابراین لازم است که از تمامی راهکارهای موجود برای افزایش امنیت وردپرس استفاده کرد.
برای افزایش امنیت سایت وردپرسی تان هیچ وقت دیر نیست. ما در این مقاله سعی کرده ایم رویکردهایی که باعث افزایش امنیت وردپرس می شود را مورد آموزش و بحث و بررسی قرار دهیم.
آموزش افزایش امنیت وردپرس و جلوگیری از هک سایت
برای انجام یک رویکرد پیشگیرانه، ابتدا باید بدانید که سایت ها چگونه هک می شوند. تنها وقتی که نقاط ضعف را بدانید می توانید اقدامات لازم برای محافظت را انجام دهید.
طی تحقیقاتی که روی این مساله انجام شد، نتایج زیر به دست آمد:
- ۴۱% هک ها از طریق پلتفرم هاستینگ اتفاق افتاده است.
- ۲۹% از طریق قالب های آسیب پذیر وردپرس
- ۲۲% از طریق مسائل امنیتی افزونه های وردپرس
- ۸% از طریق اطلاعات لاگین ضعیف روی داده است.
دانستن این موارد در درک چگونگی افزایش امنیت وردپرس کمک زیادی می کند. در این آموزش خواهید آموخت که چگونه از سایت خود در برابر همه موارد ذکر شده در بالا محافظت کنید.
امن نگه داشتن کامپیوتر برای افزایش امنیت وردپرس
امنیت سایت وردپرسی شما با دستگاهی که از آن برای مراقبت از سایت استفاده می کنید، شروع می شود. اگر کامپیوتر شما در معرض خطر باشد، این ناامنی می تواند به حضور شما در وب نیز گسترش پیدا کند. بنابراین لازم است که دستورالعمل های امنیتی اولیه را دنبال کنید.
- یک اسکنر ویروس و بدافزار روی کامپیوتر خود نصب کنید و به طور مرتب سیستم را اسکن کنید.
- یک فایروال کامپیوتر نصب کنید.
- به سایت وردپرسی خود از طریق وای فای عمومی یا یک کانکشن ناامن متصل نشوید. همچنین مراقب باشید هنگام لاگین کردن هیچ کس صفحه شما را نبیند.
- هنگام دسترسی به وردپرس از طریق FTP ، به جای FTP ناامن از FTPS (File Transfer Protocol Secure) استفاده کنید تا مانع از این شوید که اتصال شما مونیتور شود.
استفاده از یک شرکت هاستینگ خوب
یکی دیگر از اقدامات اصلی برای افزایش امنیت وردپرس، انتخاب یک هاست با کیفیت است. همانطور که در قسمت قبل آموزش گفته شد، اکثر حملات موفقیت آمیز از طریق پلتفرم هاستینگ انجام شده است. بنابراین نخستین خط دفاع شما همین جا است.
هنگام انتخاب شرکت ارائه دهنده خدمات میزبانی وب، سراغ ارزانترین آنها نروید. تحقیقات خود راانجام دهید و مطمئن شوید که از شرکتی که به خوبی تثبیت شده و رکورد خوبی از اقدامات امنیتی قوی دارد، خرید کنید.
این کار همیشه ارزش پرداخت کمی هزینه ی اضافه تر برای آرامش ذهن شما را دارد، زیرا می دانید سایت شما ایمن است.
تغییر پیشوند جداول دیتابیس در حین نصب وردپرس
بسته به کنترل پنل هاست شما، هنگام نصب وردپرس روی دایرکت ادمین یا هنگام نصب وردپرس روی سی پنل، وردپرس از شما می پرسد که می خواهید پیشوند جداول دیتابیس تان به چه صورت باشد. اگر شما در این بخش تغییری ایجاد نکنید وردپرس به صورت پیشفرض، پیشوند جداول شما را _wp خواهد گذاشت.
اگر به دنبال افزایش بیشتر امنیت وردپرس هستید، در حین نصب حتماً پیشوند جداول را به یک پیشوند تصادفی و پیچیده تر تغییر دهید. به عنوان مثال _8uh7zgok.
اگر هنگام نصب وردپرس پیشوند جداول را تغییر ندهید امنیت سایت شما از بخش دیتابیس کاهش پیدا خواهد کرد زیرا همه می دانند که پیشوند جداول دیتابیس در وردپرس _wp است.
اگر در حین نصب وردپرس این کار را انجام نداده اید، به دو روش می توانید پیشوند جداول دیتابیس را تغییر دهید. یک روش از طریق phpMyAdmin است که این روش به هیچ عنوان توصیه نمی شود. دومین روش و بهترین راه این است که از طریق افزونه های امنیتی مانند افزونه iThemes Security این کار را انجام دهید.
استفاده از قالب ها و افزونه های با کیفیت
بعد از پلتفرم هاستینگ، شایع ترین روش حمله هکرها و کاهش امنیت در وردپرس از طریق قالب ها و افزونه های وردپرس است. پلتفرم هاستینگ همراه با افزونه ها و قالب ها دلیل نیمی از حمله های وردپرسی به شمار می روند. در ادامه آموزش روشهایی که می توان افزونه ها و قالب ها را از دروازه ورود بودن برای هکرها حذف کرد و امنیت وردپرس را افزایش داد، معرفی می کنیم:
تنها قالب ها و افزونه هایی را نگه دارید که از آنها استفاده می کنید
داشتن ده ها افزونه فعال در سایت شما نه تنها عملکرد سایت تان را کاهش می دهد بلکه باعث می شود که امنیت آن نیز کاهش پیدا کند. هر چقدر افزونه های بیشتری داشته باشید ریسک خطر بالاتری دارید. بنابراین به طور مرتب بررسی کنید که آیا می توانید یک افزونه یا قالب را غیرفعال و حذف کنید.
دنبال افزونه ها و قالب هایی باشید که به خوبی پشتیبانی شده اند
اگر یک افزونه یا قالب در مدت زمان طولانی آپدیت نشده باشد، رسیک بالاتری وجود دارد که حاوی باگ های امنیتی یا کدهای بدی باشد که سایت شما را آسیب پذیر می کند. به همین دلیل قبل از نصب به سطح پشتیبانی آنها توجه کنید.
نکته دیگری که باید به آن توجه کنید این است که هرگز از منابع ناشناخته دانلود نکنید.
به عنوان یک قاعده کلی، در صورت امکان، بهتر است از قالب های رایگان وردپرس استفاده نکنید، به خصوص اگر توسط یک توسعه دهنده ی معتبر ساخته نشده باشند. دلیل اصلی آن این است که قالب های رایگان اغلب شامل چیزهایی مانند رمز گذاری base64 هستند که ممکن است به شکل نامحسوسی برای وارد کردن لینک های اسپم در سایت شما و یا کدهای مخرب دیگری که می توانند همه نوع مشکلی ایجاد کنند، مورد استفاده قرار گیرند. اگر در گوگل به دنبال پوسته های رایگان بگردید شاید از هر ۱۰ پوسته ۷ تای آنها پر از کد های base64 باشند.
اگر واقعاً نیاز به استفاده از یک قالب رایگان دارید، فقط باید از آنهایی استفاده کنید که توسط شرکت های سازنده ی مورد اعتماد توسعه یافته اند، و یا از آنهایی که در مخزن رسمی قالب های WordPress.org در دسترس هستند.
در مورد افزونه ها هم همین امر صادق است. فقط از افزونه هایی که در لیست WordPress.org ذکر شده اند، و یا توسط یک توسعه دهنده معتبر ساخته شده اند، استفاده کنید.
به روز نگه داشتن وردپرس و اجزای آن
تیم وردپرس مدام در حال افزودن قابلیتهای جدید و رفع مشکلات و باگهای امنیتی این سیستم مدیریت محتوا و تلاش برای افزایش امنیت وردپرس است. مخصوصاً وقتی یک آپدیت جزیی صورت می گیرد که با رقم سوم در شماره نسخه وردپرس نشان داده می شود مثل ۴٫۹٫۱ ، این بروزرسانی ها به طور خاص برای اهداف امنیتی هستند. بنابراین وقتی وردپرس آپدیت میشود باید در اولین فرصت اقدام به آپدیت وردپرس کنید.
به روز رسانی های جزئی وردپرس ۳٫۷ به صورت خودکار انجام می گیرد. تیم وردپرس این قابلیت را برای اینکه مطمئن شود سایت ها از لحاظ امنیتی آپدیت می شوند، قرار داده است. اما مسئولیت به روز رسانی های اصلی به عهده خودتان است. مطمئن شوید به محض اینکه پیامی مبنی بر بروزرسانی وردپرس در صفحه پیشخوان دیدید، سایت را پشتیبان گیری و بروزرسانی کنید. برای پشتیبان گیری از سایت می توانید از بهترین افزونه های پشتیبان گیر وردپرس استفاده کنید.
برای افزونه ها و قالب ها نیز حتماً به روز رسانی ها را انجام دهید. اطمینان حاصل کنید که به محض انتشار آخرین نسخه، افزونه ها و قالب های سایت خود را به روز کرده اید. اگر همه چیز را به روز رسانی شده نگه دارید، کمتر امکان دارد که سایت شما هک شود.
توجه داشته باشید که می توان آپدیت های اصلی وردپرس و همینطور آپدیت افزونه ها و قالب ها را نیز به صورت اتوماتیک انجام داد. در قسمت های بعدی همین آموزش روش انجام آن را توضیح خواهیم داد. اما احتمال اینکه در این روش خطایی رخ داده و سایت به هم بریزد، وجود دارد . بنابراین اگر می خواهید امنیت وردپرس خود را افزایش دهید، انجام این روش ها چندان توصیه نمی شود.
اجازه دسترسی به افراد مطمئن
یکی دیگر از جنبههای مهم افزایش امنیت وردپرس که در این قسمت از آموزش به آن می پردازیم، محدود کردن دسترسی افراد به سایت است. معمولا سایتهایی که به صورت تیمی عمل میکنند، بیشتر اعضای تیم دارای نقش کاربری مدیرکل هستند که همین مسئله باعث می شود امنیت سایت در معرض خطر قرار بگیرد. افرادی که به مدیریت دسترسی دارند اما کم تجربه هستند، ممکن است باعث ایجاد ناامنی شوند.
باید به این نکته توجه کنید که لزومی ندارد تمام افراد نقش مدیرکل را داشته باشند. زیرا لو رفتن رمز یکی از کاربران باعث می شود امنیت کل سایت در معرض خطر قرار بگیرد. کافی است یکی از اعضا که مسئولیت کدنویسی و طراحی سایت را بر عهده دارد این نقش کاربری را داشته و بقیه اعضای تیم از نقشهایی مثل نویسنده و ویرایشگر استفاده کنند.
همین احتیاط ها را باید در مورد دسترسی به اکانت هاستینگ، سرور FTP و اطلاعات حساس دیگر در نظر بگیرید.
قوی کردن اطلاعات لاگین (نام کاربری و رمز عبور) برای افزایش امنیت وردپرس
یک راه بسیار اساسی و ابتدایی برای افزایش امنیت در وردپرس استفاده از اطلاعات لاگین قوی است. این کار برای خنثی کردن حملات بروت فورس لازم است. در این حملات هکرها به صورت اتوماتیک ترکیب صدها نام کاربری و رمز عبور مختلف را امتحان می کنند تا زمانی که یکی از آنها درست درآمده و اجرا شود. در ادامه آموزش بهترین روش ها برای ایجاد اطلاعات لاگین قوی را معرفی می کنیم:
از نام کاربری admin استفاه نکنید
در نسخه های قبلی وردپرس admin نام کاربری پیش فرض برای مدیر بود. هکرها دریافتند که بسیاری از افراد از همین نام کاربری استفاده می کنند. بنابراین برای افزایش امنیت در وردپرس این نام کاربری پیش فرض حذف شد. اما هنوز افرادی هستند که این نام کاربری را به صورت دستی ایجاد می کنند. هرگز این کار را نکنید. این از اولین مواردی است که هکرها آن را بررسی می کنند.
از آنجا که وردپرس به صورت پیش فرض اجازه نمی دهد شما نام کاربری تان را عوض کنید، اگر قبلاً نام کاربری خود را admin قرار داده اید، از سه روش زیر می توانید آن را عوض کنید:
- یک نام کاربری جدید درست کرده و قدیمی را حذف کنید.
- از افزونه های تغییر نام کاربری مانند افزونه Username Changer استفاده کنید.
- نام کاربری تان را از طریق phpMyAdmin آپدیت کنید.
توضیح سه روش فوق در مقاله آموزش تغییر نام کاربری ادمین در وردپرس آورده شده است.
یک اکانت جداگانه برای انتشار محتوا داشته باشید
اگر شما مقالات را با حساب کاربری مدیریت خود منتشر می کنید، نام کاربری شما در URL آرشیو نویسنده نمایش داده شده و به این ترتیب نام کاربری تان افشا خواهد شد. به غیر از این، داشتن اکانت های جدا برای مدیریت و انتشار محتوا احتمال وقوع حوادث بیشتر را نیز کم می کند.
باید به این نکته توجه کنید که وردپرس نام نویسنده را به کاربرش لینک می دهد. بنابراین اگر به جای ربات با هکرهای واقعی سر و کار دارید، بهتر است از افزونه هایی مانند افزونهEdit Author Slug در سایت وردپرسی خود استفاده کنید.
رمز عبور قوی استفاده کنید
اگر نمی خواهید از رمز عبورهای پیشنهادی وردپرس در حین نصب استفاده کنید و می خواهید رمز عبوری داشته باشید که بتوانید آن را به خاطر بسپارید حتماً به نشانگر قوی بودن رمز عبور توجه کنید یا می توانید از سرویسی مانند Strong Random Password Generator استفاده کنید.
می توانید از سرویسی که همه رمز عبور ها را امن نگه می دارد مانند LastPass استفاده کنید. به علاوه اگر افراد دیگری با سطح دسترسی بالا در سایت خود داشته باشید ممکن است بخواهید آنها را نیز وادار به استفاده از اطلاعات لاگین قوی کنید. به جای اینکه با ایمیل از آنها بخواهید که این کار را انجام دهند از افزونه Force Strong Passwords استفاده کنید.
تغییر دادن پیامهای خطای ورود به سیستم برای افزایش امنیت وردپرس
اگر کسی بخواهد با اطلاعات لاگین غلط به سایت شما وارد شود وردپرس به صورت پیش فرض پیام “نام کاربری ناشناس” ، “نام کاربری ××× اشتباه است” یا “شناسه معتبر نیست” را نشان می دهد.
هکر با توجه به پیام نمایش داده شده تشخیص می دهد که کدام یک از اطلاعات ورود اشتباه است و در نهایت بعد از یافتن یکی از اطلاعات درست می تواند روی مورد بعدی تمرکز کرده و در زمان کوتاهتری اقدام به هک سایت نماید.
برای تغییر این پیام از قطعه کد زیر در فایل functions.php استفاده کنید. برای پیدا کردن فایل function.php وارد صفحه مدیریت فایلها (File Manager) در کنترل پنل هاست خود شده و به مسیر public_html/wp-content/themes مراجعه کنید و به فولدر قالبی که در سایت شما فعال است، وارد شوید. در آنجا فایل functions.php را برای ویرایش پیدا خواهید کرد. سپس کد زیر را در آن وارد کنید.
function custom_wordpress_error_message(){ return 'این نام کاربری یا رمز عبور اشتباه است'; } add_filter( 'login_errors', 'custom_wordpress_error_message' );
در قسمتی که نوشته شده “این نام کاربری یا رمز عبور اشتباه است” می توانید پیام دلخواه خودتان را بنویسید. بعد از اعمال این کد اگر اطلاعات لاگین غلط وارد شود، پیامی به شکل زیر خواهید دید.
اگر نمی خواهید مستقیماً فایل functions.php خود را ویرایش کنید می توانید از افزونه های ویرایش قالب وردپرس استفاده کنید.
یکی از افزونه هایی که می توانید از آن برای ویرایش فایل functions.php استفاده کنید، افزونه My Custom Functions است.
همچنین می توانید یک قالب فرزند برای سایت وردپرس خود ایجاد کرده و تمام تغییرات و سفارشی سازی هایی که می خواهید روی قالب خود انجام دهید را از طریق آن اعمال کنید. برای آشنایی بیشتر با این روش مقاله ساخت قالب فرزند در وردپرس را مطالعه کنید.
محدود کردن تعداد دفعات تلاش برای ورود
اطلاعات لاگین قوی تنها یک قسمت از معادله است. یک هکر با داشتن زمان کافی و تعداد دفعات تلاش برای ورود نامحدود، بالاخره موفق به هک کردن سایت خواهد شد.
بنابراین با محدود کردن تعداد دفعات تلاش برای ورود، سطح امنیت در وردپرس را بالا ببرید. وردپرس به صورت پیشفرض هیچ محدودیتی برای تعداد دفعات تلاش برای ورود به سایت قرار نداده است. اما افزونه هایی مانند افزونه WP Limit Login Attempts یا Login LockDown شما را قادر می سازد که تنظیم کنید یک آدرس IP مشخص قبل از ممنوعیت به صورت موقت یا دائمی چقدر مجاز است برای وارد شدن به سیستم تلاش کند.
پیاده سازی احراز هویت دو مرحله ای
احراز هویت دو مرحله ای به معنی گذاشتن یک گام دیگر در جلوی پای افرادی است که قصد لاگین کردن به سایت را دارند و امنیت در وردپرس را به میزان بیشتری افزایش می دهد. با انجام این کار جلوی حملات خودکار هر چقدر هم که زیاد باشد، گرفته می شود.
بسیاری از افزونه های امنیتی وردپرس تأیید هویت دو مرحله ای را در نسخه Pro خود ارائه می دهند. اما شما با استفاده از بهترین افزونه های تأیید هویت دو مرحله ای وردپرس که رایگان نیز هستند می توانید این ویژگی را در سایت خود پیاده سازی کنید. در ادامه آموزش برخی از افزونه هایی که به شما امکان اجرای تأیید هویت دو مرحله ای را می دهند، معرفی می کنیم:
- افزونه Duo Two-Factor Authentication
- افزونه Google Authenticator-Two Factor Authentication
- افزونه OpenID
- افزونه WP Security Question
مخفی کردن صفحه لاگین (صفحه ورود به وردپرس) برای افزایش امنیت وردپرس
راه دیگری که می توان صفحه لاگین وردپرس را امن نگه داشت و امنیت در وردپرس را بالا برد، مخفی کردن صفحه لاگین است. هرکسی که با وردپرس کار کرده باشد می داند که وردپرس به صورت پیشفرض از آدرس wp-login.php برای صفحه ورود استفاده می کند که با مراجعه کردن به آدرس wp-admin هم به صورت خودکار به این صفحه هدایت خواهد شد.
انتقال آدرس پیش فرض https://example.com/wp-admin به یک آدرس دیگر به این معنی است که اسکریپت های خودکار، صفحه اشتباهی را هدف قرار می دهند.
بسیاری از افزونه های امنیتی این کار را برای شما انجام می دهند. علاوه بر آنها افزونه های زیر نیز قابلیت پنهان کردن صفحه ورود و پوشه های اصلی وردپرس را نیز دارند.
شما می توانید این کار را خودتان هم با اضافه کردن یک قطعه کد در فایل htaccess. انجام دهید. برای اطلاعات بیشتر به آموزش تنظیمات فایل htaccess در وردپرس مراجعه کنید.
استفاده از SSL و HTTPS
با استفاده از SSL اطلاعات حساس امن نگه داشته می شوند. اگر از یک فروشگاه ساز وردپرس استفاده می کنید یا سایت شما حاوی اطلاعات حساس دیگری است که باید حفظ شوند، حتماً باید از SSL استفاده کنید.
رمزگذاری همچنین از اطلاعات لاگین شما محافظت می کند و به طور فزاینده ای در حال اجباری شدن است. برای کسب اطلاعات بیشتر مقاله آموزش نصب SSL در وردپرس را مطالعه بفرمایید.
آموزش به روز رسانی خودکار برای افزایش امنیت وردپرس
قبلاً در مورد بروزرسانی خودکار صحبت کردیم. علاوه بر آپدیت خودکار ورژن های جزئی که خود وردپرس آن را انجام می دهد، شما می توانید آپدیت های اصلی، افزونه ها و قالب ها را نیز به صورت خودکار بروزرسانی کنید. کافی است چند خط کد زیر را به فایل wp-config.php اضافه کنید:
define('WP_AUTO_UPDATE_CORE', true); add_filter( 'auto_update_plugin', '__return_true' ); add_filter( 'auto_update_theme', '__return_true' );
یا این حال دوباره تاکید می کنیم که احتمال شکستن سایت در این حالت وجود دارد. پس بهتر است خودتان به صورت دستی بروزرسانی ها را انجام دهید.
اضافه کردن کلیدهای امنیتی وردپرس (SALT)
کلیدهای امنیتی وردپرس که SALT نامیده می شوند، اطلاعاتی را که در کوکی های مرورگر ذخیره می شوند، رمزگذاری می کنند و به این ترتیب از رمز عبورها و دیگر اطلاعات مهم نگهداری می نمایند.
کلیدها عباراتی هستند که برای تصادفی کردن اطلاعات مهم استفاده می شوند و در فایل wp-config.php ذخیره می شوند.
به فایل کانفیگ وردپرس تان (wp-config.php) مراجعه کنید. در این فایل به دنبال کد های زیر بگردید :
define('AUTH_KEY', 'put your unique phrase here'); define('SECURE_AUTH_KEY', 'put your unique phrase here'); define('LOGGED_IN_KEY', 'put your unique phrase here'); define('NONCE_KEY', 'put your unique phrase here'); define('AUTH_SALT', 'put your unique phrase here'); define('SECURE_AUTH_SALT', 'put your unique phrase here'); define('LOGGED_IN_SALT', 'put your unique phrase here'); define('NONCE_SALT', 'put your unique phrase here');
سپس روی Key Generator کلیک کرده و محتوای تولید شده را کپی نمایید. کد کپی شده را در فایل کانفیگ وردپرس جایگزین کدهای قبلی کنید و تنظیمات را ذخیره نمایید. کد تولید شده شکلی مشابه زیر خواهد داشت.
غیر فعال کردن گزارش خطای PHP
خطاهای PHP اعلان ها و هشدارهایی هستند که وقتی افزونه ها یا قالب ها باعث ایجاد خطایی روی سایت وردپرسی شما می شوند، نشان داده می شوند. این خطاها مانند خطای صفحه سفید مرگ یا خطای 500 نیستند که باعث عدم بارگذاری صحیح وب سایت شما شوند.
هنگام بروز این خطا وردپرس پیامی مشابه زیر در فرانت اند نشان می دهد.
این پیام مسیر فایل مشکل دار را به نمایش می گذارد. هکرها می توانند از این اطلاعات برای فهمیدن لایه سرور شما و حمله به سایت استفاده کنند. کد زیر را در فایل wp-config.php وارد کرده و این پیام را غیرفعال کنید.
error_reporting(0); @ini_set(‘display_errors’, ۰);
اگر کد بالا جواب نداد ممکن است به خاطر تنظیمات هاست شما باشد. در این حالت از شرکت ارائه دهنده خدمات هاستینگ خود بخواهید این پیام را خاموش کنند.
در مقاله آموزش فعال سازی اشکال زدایی در وردپرس می توانید با نحوه فعال کردن اشکال زدایی وردپرس و چگونگی خاموش کردن آن به طور کامل آشنا شوید.
تنظیم فایل htaccess. و آموزش چگونگی آن برای افزایش امنیت در وردپرس
htaccess. فایل مهم دیگری است که سرور شما را پیکربندی می کند.
محتویات فایل htaccess. اگر بدرستی تنظیم شده باشند به شما این امکان را می دهد که سایت خود را از لحاظ امنیتی تا حد بسیار زیادی ارتقاء دهید. همچنین سرعت سایت خود را بیشتر کنید و با استفاده از کد های ریدایرکت در این فایل سئوی داخلی سایت خود را کنترل کنید.
در مقاله آموزش تنظیمات فایل htaccess ، مجموعه ای از کد های مفید مربوط به فایل htaccess. در وردپرس را برای شما قرار داده ایم که میتوانید از آن ها برای افزایش امنیت در وردپرس و افزایش کارایی سایت خود استفاده کنید.
توجه به سطح دسترسی فایل ها
سطح دسترسی در واقع به معنای میزان دسترسی کاربران و بازدیدکنندگان به فایل ها و فولدر های داخل هاست است.
برای بررسی جواز دسترسی فایل ها و پوشه های روی هاست، باید از ابزار File Manager یا همان مدیریت فایل در کنترل پنل هاست استفاده کرد. مثلاً در سی پنل با وارد شدن به File Manager می توانید ، از طریق ستون آخر یعنی Permission اقدام به تغییر عدد جواز دسترسی فایل ها کنید و یا از همان جا ببینید که جواز دسترسی هر کدام از پوشه ها و فایل ها چیست.
پس به عنوان یک نکتۀ امنیتی، بررسی سطح دسترسی فایل ها و پوشه های روی هاست خود را فراموش نکنید، در غیر این صورت شک نکنید که سایت شما به مخاطره خواهد افتاد. برای اطلاعات بیشتر و آشنایی با مفهوم سطح دسترسی و چگونگی تنظیم آن، مقاله آموزش تعیین سطح دسترسی فایلها و فولدرها در وردپرس را مطالعه بفرمایید.
حذف کردن شماره نسخه وردپرس
وردپرس به صورت پیش فرض یک تگ متا داخل سورس کد خود دارد که نسخه وردپرس سایت شما را نشان می دهد و نیز آن را به اسکریپت هایی که در بخش <head> لود می شوند، اضافه می کند.
متاسفانه این اطلاعات برای کسی که قصد هک کردن سایت شما را دارد بسیار مفید است. مخصوصاً وقتی که شما از نسخه های قدیمی تر وردپرس که باگ های امنیتی شناخته شده دارند استفاده می کنید.
تنها با اضافه کردن کد زیر به ابتدای فایل function.php سایت خود می توانید این شماره نسخه را پاک کنید.
function remove_wordpress_version_number() { return ''; } add_filter('the_generator', 'remove_wordpress_version_number'); function remove_version_from_scripts( $src ) { if ( strpos( $src, 'ver=' . get_bloginfo( 'version' ) ) ) $src = remove_query_arg( 'ver', $src ); return $src; } add_filter( 'style_loader_src', 'remove_version_from_scripts'); add_filter( 'script_loader_src', 'remove_version_from_scripts');
غیرفعال کردن XML-RPC و آموزش چگونگی آن برای افزایش امینت در وردپرس
XML-RPC مخفف نام یک ویژگی است که اجازه می دهد از راه دور به وردپرس وصل شوید.
XML-RPC اطلاعات را از طریق XML با استفاده از پروتکل http منتقل می کند. به بیانی دیگر XML-RPC به شما اجازه میدهد که از طریق نرم افزار هایی مانند Windows Live Writer به صورت ریموت به سایت خود مطلب ارسال کنید. از طرفی ابزار هایی مثل IFTTT و همچنین اپلیکیشن موبایل وردپرس هم برای برقراری ارتباط با سایت شما از همین روش استفاده میکنند.
متاسفانه گاهی اوقات این ویژگی هدف حمله هکرها است. بنابراین باید آن را به نحوی محافظت کنید. می توانید این کار را با استفاده از افزونه هایی مانند Disable XML-RPC Pingback و Disable XML-RPC انجام دهید.
به غیر از استفاده از افزونه ها راههای دیگری برای غیرفعال کردن XML-RPC وجود دارد. یکی از راهها از طریق تنظیمات فایل htaccess. است.
راه دیگر اضافه کردن قطعه کد زیر در فایل function.php است. برای پیدا کردن فایل function.php وارد صفحه مدیریت فایلها در کنترل پنل هاست شده و به مسیر public_html/wp-content/themes مراجعه کنید و وارد پوشه قالبی که در سایت شما فعال هست شوید. در آنجا فایل functions.php را برای ویرایش کردن پیدا می کنید.
add_filter('xmlrpc_enabled', '__return_false');
بعد از افزودن کد در فانکشن قالب، قابلیت xml-rpc در وردپرس غیرفعال خواهد شد.
پشتیبان گیری به صورت مستمر
اقداماتی که در بالا ذکر شد همگی برای امن نگه داشتن وردپرس خوب هستند. اما حادثه هر لحظه ممکن است اتفاق بیفتد. بنابراین برای اطمینان بیشتر همیشه یک پشتیبان از سایت خود بگیرید.
گزینه های زیادی برای پشتیبان گیری از وردپرس وجود دارد. به همین دلیل راهنمای جامعی از آموزش پشتیبان گیری از وردپرس برای شما فراهم کرده ایم.
آیا فکر می کنید سایت شما هک شده است؟
اگر فکر می کنید سایت شما هک شده است، راههای زیادی برای مطمئن شدن وجود دارد.
مسائل امنیتی عمومی: برای بررسی آسیب پذیری های عمومی از Unmask Parasites و Web Inspector استفاده کنید.
اسپم: اگر سایت شما در بیش از یکصد لیست سیاه ایمیل شامل شده باشد، MX Toolbox به شما گزارش خواهد داد.
بدافزار: وب سایت رایگان Sucuri Website Malware Scanner وب سایت شما را برای پیدا کردن کدهای مخرب و مشکلات امنیتی دیگر، بررسی می کند.
سخن آخر
درست مانند دنیای واقعی، حفاظت از دارایی های دیجیتال بسیار مهم است. سرمایه گذاری روی امنیت وردپرس مانند خرید بیمه یا گذاشتن یک قفل بهتر روی درب منزل است.
در این مقاله با خطرهایی که یک سایت وردپرسی را تهدید می کند و روشهای مقابله با آنها آشنا شدید. کارهای زیادی برای افزایش امنیت در وردپرس می توانید انجام دهید، از روشهای اولیه و مهم محافظت از لاگین گرفته تا افزایش امنیت در وردپرس از طریق wp-config.php و htaccess. و با استفاده از افزونه های امنیتی.
توجه داشته باشید که لازم نیست تمام اقدامات فوق را انجام دهید. حتی اگر فقط اصول اولیه را انجام دهید از بسیاری از افراد دیگر جلوتر هستید.
با این حال، پیاده سازی اکثر اقدامات ذکر شده، زمان کمی می گیرد. تنها ده دقیقه وقت بگذارید و سیستم امنیتی خود را بهبود ببخشید. مطمئن باشید پشیمان نخواهید شد.
امیدواریم این آموزش به شما کمک کرده باشد تا امنیت وب سایت وردپرسی خود را افزایش دهید. شما برای افزایش امنیت وردپرس از چه اقدامات امنیتی دیگری استفاده می کنید. دیدگاه های خود را با ما در میان بگذارید.
سلام
برای حذف کردن شماره نسخه وردپرس، کدی که گفتین در فایل function بذاریم، در کدام function؟ اون function که در پوشه پوسته قرار داره یا اون function که تو پوشه اینکلود هست؟
منظور از فایل function.php دقیقا فایلی است که در پوشه ی قالب نصب شده شما قرار دارد که از آدرس public_html/wp-content/themes در پنل هاستینگ شما موجود است، همچنین از قسمت ویرایشگر پوسته در پیشخوان وردپرس قابل دسترسی می باشد.
با سلام
مطلب بسیار مفیدی بود
خیلی به دردم خورد و همه نکات و توضیحات شما به درستی عمل کرده و تاثیرش عالی بود
از شما بابت تهیه این پست تشکر می کنم
سلام. من یه سایت وردپرسی دارم الان دیدم تو پوشه wp-content یک فولدر به نام mu-plugins و داخلش یک فایل با نام rms_unique_wp_mu_pl_fl_nm.php ایجاد شده. برنامه نویس نیستم لطفا کمک کنید.
من از چند نفر پرسیدم ولی جواب های متفاوتی گرفتم. یکی گفت مخربه، یکی گفت نگرانش نباش. تو سایت های خارجی هم گشتم نوشته بود افزونه های لازم الاجرا میاد تو این پوشه. اما کدهای داخلش لامصب یجوریه که انگار سایت رو دو دستی تقدیم هکره کردی.
اگر اطلاعی راجع بهش دارید، اینا سوالای منه.
آیا کد مخربه و یا یوزر و پسوورد رو ارسال میکنه ؟
آیا امکان داره مربوط به پلاگین ultimate member و قسمت بازیابی رمز عبور باشه؟
اگر کد مخربه، فقط با پاک کردن پوشه و تغییر یوز و پسوورد ادمین، مشکل حل میشه؟
(ضمنا اختلالی هم در سایت به وجود نیاورده)
خیلی ممنونم
امنیت وردپرس به خودی خود بسیار بالاست، استفاده از افزونه های غیرضروری و قالب های ضعیف امنیت سایت رو به خطر می اندازد، در این مورد با یک برنامه نویس خبره php که به افزونه ها و توابع وردپرس تسلط دارد، در ارتباط باشید…
سلام
ممنون از شما برای این متن باارزش
برای حذف کردن شماره نسخه وردپرس، هم از کدی که شما گذاشتین و هم از کدهای سایت های دیگه استفاده کردم، اما هیچ کدوم کار نکرد. مشکل از کجا میتونه باشه؟
سلام علی عزیز.. وقت بخیر … خوشحالم که مطلب مورد توجه شما قرار گرفته … می تونید قالب تون رو به یکی از قالب های پیش فرض تغییر بدین و بعد کد رو امتحان کنید اما اگه همیشه از آخرین نسخه وردپرس استفاده می کنید اصلاً نیازی به وارد کردن این کد نیست
سلام من در سایت از itheme security pro استفاده می کردم ولی اخیرا شنیدم این افزونه بسیار روش هک شده و قابل اعتماد نیست و همینطور عملکرد و سرعت سایت رو ضعیف کنه و گفتن به جاش از loginizer استفاده کنید. نظر شما رو خواستم بدونم ممنون از مدیر وردپرس
سلام مهدی عزیز … وقت بخیر .. شما باید با توجه به نیازهای سایت تون از افزونه ها استفاده کنید و حتماً افزونه بروزرسانی شده باشه و به درستی کانفیگ شده باشه .. در این صورت می تونه جوابگوی نیازهای شما باشه .. افزونه loginizer افزونه خوبیه می تونید روی لینک کلیک کرده و آموزشش رو مطالعه کنید .. اگه با جوابگوی نیازهای شما بود ازش استفاده کنید.
سلام خسته نباشید من مدتی میشه با وردپرس آشنا شدم و داخل گوگل زیاد سرچ کردم هرکی یه چیزی میگه یکی میگه افزونه آیتمز خوبه یکی میگه وردفنس و یا میگن هر دو رو باهم نصب کنید خوبه و یکی میگه اینا دیتابیس رو سنگین میکنن و بدون افزونه امنیت سایت رو ببرید بالا یعنی بدون کدنویسی نمیشه با افزونه امنیت سایت رو ببری بالا و با تشکر از سایت خوبتون
سلام آریان عزیز … وقت بخیر .. به نظر من در کل اگه همه مواردی که در این پست نوشته شده رو با یه افزونه CAPTCHA code میکس کنید، تقریبا از هر افزونه امنیتی بی نیاز میشید
سلام و عرض خسته نباشید یه مشکل بسیار بدی در وب سایت بیش اومده که گفتم به شما بگم اگه راه حلی چیزی دارین حتما بگین یه کسیو میشناسین به این مشکل خورده باش من رو بهش معرفی بکنین و… زمانی که در وب سایت وارد میشه مثلا ساعت ۹ صبح بعد یکی دیگه وارد میشه با یوزر و بسوورد خودش وارد اکانتی میشه که اون بنده خدا ساعت ۹ وارد شده بعد چک کردم دیدم حتی میتونه وارد اکانت ادمین سایت بشه من روز قبلش افزونه های سایت رو همشون رو غیرفعال کردم و دوباره فعال کردم این مشکل بیش اومد بعد که دیدم اینطوری شده یکی یکی افزونه هارو غیرفعال کردم تا ببینم مشکل حل میشه یا نه ولی نشد و الان توی گل گیر کردم لطفا اگه کمکی میتونین بکنین بسیار مهم است فعلا سایت رو از دسترس خارج کردم…
دوست عزیز اگر با غیرفعال کردن افزونه ها مشکل شما برطرف نشد، لازم است بصورت تخصصی یک برنامه نویس حرفه ای php که تسلط به توابع و ساختار وردپرس دارد، به صورت کاملا تخصصی و حرفه ای ساختار سایت و کد نویسی قالب شما را چک نماید…