وبسایت داشتن هرروز آسانتر میشود، چون کاربردهای سایتها هرروز بیشتر میشود. با دیجیتالیشدن و آنلاینشدن تقریبا همهچیز، کسبوکارها و افراد بیشتری ترغیب میشوند تا سایت داشته باشند. بههمین دلیل، اگر کسی بخواهد وبسایت داشته باشد؛ نیازی نیست حتما برنامهنویسی را کاملا بداند و سایت را تماما کدنویسی کند.
درحالحاضر، برای ساختن سایتها (چه استاتیک و چه داینامیک) انتخابهای دیگری هم وجود دارد: سیستمهای مدیریت محتوا (CMS) و فریم ورکها. هریک از این سه گزینه (کدنویسی تمام سایت از صفر، انتخاب یکی از سیستمهای مدیریت محتوا و توسعهی وباپها با فریم ورکها) مزایا و معایب خاص خود را دارند.
اما میشود ادعا کرد که استفاده از سیستمهای مدیریت محتوا کمی راحتتر و کمدردسرتر از دو گزینهی دیگر است. دلایل مختلفی وجود دارد که این سیستمها را محبوب میکند. از جمله میتوان گفت که
- نصب و اجرای این سیستمها رایگان است،
- افزونههای بسیار زیاد و متنوعی دارند،
- Open Source هستند و مدیر سایت میتواند تغییرات لازم را اعمال کند،
- امنیت بالایی دارند و …
( اگر میخواهید کاملا با سیستمهای مدیریت محتوا آشنا شوید، سیستم مدیریت محتوا یا CMS چیست؟ (راهنمای جامع) را بخوانید.)
از میان سیستمهای مدیریت محتوا (وردپرس، جوملا، دروپال و … ) محبوبترین WordPress است. نزدیک به ۴۰٪ از سایتهای فضای نت روی وردپرس ساخته شدند و فعالیت میکنند. سایتهای وردپرسی متنوع (اعم از فروشگاهی، خبری و محتوایی) هستند. وقتی این حجم از سایت با استفاده از این سیستم مدیریت محتوا فعالیت میکند، تامین امنیت این سیستم مدیریت محتوا (وردپرس) و نکاتی که به حفظ امنیت آن کمک میکند بسیار مهم میشود.
موضوع این محتوا معرفی نکاتی برای تامین امنیت سایتهای وردپرسی است.
آنچه در این نوشته خواهیم داشت
نکاتی برای تامین امنیت سیستم مدیریت محتوا وردپرس
همهی سایتها، حتی سایتهایی که از صفر نوشته میشوند، درمعرض خطر هستند. واقعیت دنیای نت این است که تمام سایتها، حتی اگر تمامی استانداردهای امنیتی را رعایت کرده باشند، بازهم ممکن است هک شوند یا اطلاعاتشان سرقت شود. نکتهی مهم این است که امنیت سایتها باید پیوسته چک شود.
قبل از پرداختن به آن ۵ نکته، باید گفت که بسیاری از این نکات برای تامین امنیت تمامی وب سایتها کاربرد دارند و فقط مخصوص به سایتهای وردپرسی نیستند. رعایت بسیاری از این نکات امنیتی درواقع همان ترفندهای خاص جلوگیری از هک وبسایت بهشمار میآید. پس مدیران سایتهای وردپرسی دو دسته نکات امنیتی را باید درنظر داشته باشند: نکات امنیتی مشترک و نکات امنیتی اختصاصی وردپرس.
درمیان نکات امنیتی و استانداردها نیز بعضیها مهمتر از بعضی دیگر هستند. یعنی در رعایت این نکات اولویتبندی وجود دارد و نمیشود بعضی موارد را نادیده گرفت. دلیلش هم این است که :
To some extent, a website is like the human body. If a certain part is damaged, it affects the whole system.
تاحدی، یک سایت شبیه بدن انسان است. اگر بخشهای مشخصی آسیب ببینند، تمام سیستم متاثر میشود.
۵ نکته کاربردی برای تامین امنیت وردپرس (WordPress CMS)
درمیان این ۵ نکته، به نصبکردن افزونهی امنیتی و داشتن پروتکل HTTPS اشارهای نشده است. اولا، به این دلیل که در مقالههای دیگری ( ۱۰تا از مهمترین و کاربردیترین افزونههای وردپرس [2022] ) ضروریترین افزونهی امنیتی وردپرس معرفی شده و دربارهی پروتکل نیز در محتوای ترفندهای خاص جلوگیری از هک وبسایت که قبلا به آن لینک داده شده است بهتفصیل بحث شده. دوما، این موارد در تمامی محتواهای مرتبط آورده شده و همهی کسانیکه با سیستمهای مدیریت محتوا کار میکنند بهخوبی با آنها آشنا هستند. درادامه، ترجیح داده شد تا بهترتیب مهمترین و کاربردیترین نکات امنیتی سایتهای وردپرسی معرفی شود:
۱. هاست مطمئن و امن
اولین قدم در تامین امنیت سایت وردپرسی این است که از شرکتی معتبر و مطمئن هاست تهیه کنید. تامینکنندگان مطمئن هاست خودشان استانداردهای امنیتی بالا و ابزارهای مختلفی برای حفاطت از سرورهایشان دارند. بههمیندلیل، دادههای شما و سایت شما تاحد بسیار زیادی ایمن میشود، مخصوصا دربرابر حملههای DDoS . مزیت دیگر این است که این شرکتها پیوسته سیستم و شبکهی خود را زیر نظر دارند و بهروز نگه میدارند.
۲. تهیهی نسخهی پشتیبان (Back up) از سایت
باید در فواصل زمانی مشخص از تمامی دادهها و کدهای سایت نسخهی پشتیبان تهیه شود. دقت کنید که این نسخه باید درجای امنی نگهداری شود. اگر اتفاقی بیفتد یا حملهای هکری به سایت شود، با کمک همین نسخه میشود سایت را دوباره بازسازی کرد. سایتهای وردپرسی افزونههای مختلفی دارند که خودشان بهصورت خودکار از سایت و تمامی مطالب و دادههای جدید پکآپ میگیرند. بههمیندلیل، علاوهبر پلاگینهای امنیتی، باید افزونههایی که نسخهی پشتیبان تهیه میکنند هم بر روی سایت وردپرسی نصب شود.
۳. آپدیت منظم سیستم، افزونهها و قالبهای وردپرس
خوبی دیگر سیستمهای مدیریت محتوا و مخصوصا وردپرس این است که خود سیستم به مدیر سایت اخطار میدهد که سیستم، افزونهها یا قالب وردپرس نیاز به آپدیت دارد. به این نکته توجه داشته باشید که بهتر است نسخهی وردپرس سایت خود را مخفی کنید. این بخش آسان است و مشکلی پیش نمیآورد. اما نکتهی مهم دیگری دربارهی پلاگینها و قالبها وجود دارد. بهتر است افزونهها و قالبهای رایگان را نصب نکنید. باید افزونهها و پلاگینها را از سایت وردپرس بگیرید یا دیگر سایتهای مطمئن. تهدید امنیتی دراینباره برای وب فارسی و نسخهی فارسی قالبها جدیتر است. چون قالبها و افزونهها اغلب رایگان نیستند و هیچکدام برای زبان فارسی نیستند. کسانی آنها را فارسی میکنند و بعد برای استفاده در وب فارسی عرضه میکنند.
۴. محدودکردن دسترسیها و تغییر منظم رمزعبور
تاجاییکه میشود و ممکن است باید ورود (Login) به پیشخوان وردپرس و ناحیهی مدیریتی آن را محدود کرد. سایتهای وردپرسی که به چندین نفر (User) اجازهی دسترسی و اعمال تغییرات و بارگذاری محتوا و فایل را میدهند، باید بر فعالیت آنها نظارت داشته باشند. رمزعبور ادمین و کاربران باید قوی باشد و منظم تغییر داده شود. وردپرس این امکان را فراهم کرده تا نام ادمین سایت را تغییر دهید. بنابراین از نام ادمین استفاده نکنید. چیز دیگری که بهتر است تغییر داده شود Login URL است. آدرس ورود به ناحیهی مدیریتی وردپرس یکی از این دو است: YOURSITE.com/wp-login.php یا YOURSITE.com/ wp-admin . هکرها هم بهخوبی این دو آدرس را میشناسند و از آن برای ورود به سایت شما سوءاستفاده میکنند. بعضی افزونههای امنیتی وردپرس هم به شما امکان تغییر این آدرس را میدهند.
۵. محافظت از wp-config.php و غیرفعالکردن File Editing
از مهمترین و درعینحال حساسترین و آسیبپذیرترین فایلها در سایت وردپرسی wp-config.php است. این فایل هستهی سایت وردپرسی شماست و اگر اتفاقی برای آن بیفتد، فعالیت سایت شما با اخلال مواجه میشود. از سادهترین راهها برای محافظت از این فایل مخفیکردن (Hide) آن است. یعنی میتوانید این فایل را در پوشهای بهغیر از public _ html ذخیره کنید. علاوهبراین، وردپرس بهصورت پیشفرض اجازهی ادیتکردن کدهای افزونهها و قالبها را در ناحیهی مدیریتی میدهد. یعنی هر کاربری که میتواند وارد این ناحیه شود، میتواند تغییراتی در سایت ایجاد کند. برای غیرفعالکردن این ویژگی باید کد زیر را به فایل wp-config.php اضافه کنید:
// Disallow file edit define ( 'DISALLOW_FILE_EDIT', true );
جمعبندی و نتیجهگیری
۱. تامین امنیت وردپرس مجموعهای از کارها را شامل میشود. بعضی از آنها مشترک با بقیهی سایتها و بعضی مختص به سیستم مدیریت محتوای وردپرس است.
۲. تامین امنیت سایتهای وردپرسی (مخصوصا سایتهای فروشگاهی) برای گوگل هم بسیار مهم است و تاثیر دارد بر رنک سایت در گوگل و سایر موتورهای جستجو.
۳. نظارت و مانیتور منظم سایت وردپرسی برای یافتن حفرههای امنیتی و بدافزارها را نباید فراموش کرد.
۴. علاوهبر همهی موارد گفته شده بهتر است هم روی کامپیوتر و هم روی سایت وردپرسی فایروال (Firewall) نصب کنید.
۵. تامین امنیت سایت و سیستمهای مدیریت محتوا بخشی از طراحی و ساخت سایت است. بههمین دلیل، مباحث تامین امنیت از سرفصلهای مهم آموزش طراحی وب هم هست.
برای نوشتن این مطلب از منابع زیر کمک گرفته شده است:
دوره غیرحضوری طراحی و برنامه نویسی وبسایت
آموزش طراحی وبسایت به شیوه تخصصی و کاربردی با وردپرس
امروزه در هر زمینه ای دقت کنیم متوجه ورود اینترنت و تاثیر
آن خواهیم شد. تعداد بسیار زیادی کسب و کار موفق دربستر اینترنت شکل گرفته است که یکی
از مبانی اصلی این کسب کارها داشتن یک وبسایت کارا و موثر است. اگر کسب و
کارها هرچه سریع تر نتوانند وارد اینترنت شوند قطعا محکوم به شکست خواهند
بود در نتیجه امروزه داشتن یک وبسایت اینترنتی یکی از نیاز های اصلی
هر کسب وکار و فعالیتی است. شما دو انتخاب پیش رو دارید، یا اینکه طراحی وبسایت خود را
به دست دیگر افراد بسپارید و یا خودتان مطابق با نیازتان وبسایت دلخواهتان
را طراحی و آماده کنید.
اکنون زمان آن است که شما وارد این دنیای جدید شوید. مرحله
مرحله یک وبسایت را بشناسید و یادبگیرید چگونه میتوان یک وبسایت را طراحی کرد. حتی
فراتر، یادبگیرید چگونه به عنوان یک متخصص حرفه ای طراحی وبسایت در بازار
فعالیت کنید و از درآمد بالای این حرفه بهره مند شوید.
ادامه...