علیرضا یاسینی – وب دیزاینر

بالا بردن امنیت سایت وردپرسی ؛ چک لیست کامل

از ایده تا اجرا در کنار شما هستم

اشتراک

چک‌لیست محافظت از وردپرس برای جلوگیری از نفوذ و افزایش امنیت سایت 🛡️

🔒 اگر سایت وردپرسی داری، امنیت فقط یک گزینه اضافی نیست؛ بخشی از اعتبار و فروش توست. خیلی از مشکلات امنیتی با چند تنظیم ساده و یک روال درست، تا حد زیادی کنترل می‌شوند. توی این راهنمای دوستانه، یک چک‌لیست کامل می‌بینی که مرحله‌به‌مرحله کمک می‌کند مسیر نفوذ را ببندی، ریسک هک را پایین بیاوری و در کنار آن، سایت را قابل اعتمادتر کنی. آخر متن هم جدول تصمیم‌گیری، باکس هشدار، پرسش‌وپاسخ و اسکیما FAQ آماده گذاشتم تا مستقیم در المنتور استفاده کنی.

هشدار مهم ⚠️

🚫 نصب قالب/افزونه‌های نامعتبر یا نسخه‌های دستکاری‌شده می‌تواند درِ پشتی بسازد و حتی با وجود رمز قوی، سایت را آسیب‌پذیر کند. اگر دنبال امنیت واقعی هستی، این مورد را جدی بگیر و به جای راه‌های میان‌بُر، تنظیمات درست و ابزارهای استاندارد را انتخاب کن.

مدل تهدید ساده برای سایت وردپرسی: اول بفهم از کجا ضربه می‌خوری 🧩 🧩

🔍 قبل از هر کاری، خیلی کوتاه مشخص کن چه چیزهایی برایت ارزشمند است: اطلاعات مشتری، سفارش‌ها، فرم‌های تماس، فایل‌ها و اعتبار برند. مهاجم‌ها معمولاً از سه مسیر می‌آیند: ورود (رمز ضعیف یا حدس‌زدنی)، افزونه/قالب ناامن، و هاست یا تنظیمات سرور. همین دسته‌بندی ساده کمک می‌کند کارهای امنیتی را اولویت‌بندی کنی و انرژی را روی چیزهای موثرتر بگذاری.

اگر سایتت فروشگاهی است، تمرکز اصلی روی ورودهای امن، حفاظت از پرداخت و مانیتورینگ باشد. اگر خدماتی است، حفاظت از فرم‌ها و جلوگیری از اسپم و نفوذ اهمیت بیشتری پیدا می‌کند. این نگاه باعث می‌شود به جای اقدامات پراکنده، یک مسیر منظم داشته باشی و قدم‌ها را درست بچینی.

SSL و HTTPS: پایه‌ی اعتماد و جلوگیری از شنود اطلاعات 🔒 🔒

🛡️ فعال بودن SSL یعنی ارتباط مرورگر و سرور رمزنگاری می‌شود و اطلاعات فرم‌ها و ورود کاربران کمتر در معرض شنود قرار می‌گیرد. این کار علاوه بر امنیت، یک علامت واضح برای اعتماد است. اگر می‌خواهی تعریف کلی را ببینی، این مرجع کمک می‌کند: SSL (ویکی‌پدیا). برای سایت‌های وردپرسی، SSL باید با ریدایرکت درست و بدون خطا اجرا شود.

اگر HTTPS ناقص باشد یا بخشی از منابع با HTTP لود شوند، مرورگر هشدار می‌دهد و اعتماد کاربر پایین می‌آید. بهتر است بعد از فعال‌سازی، چند صفحه کلیدی را بررسی کنی تا قفل امنیتی کامل نمایش داده شود. اگر دوست داری مفهوم HTTPS را هم ساده‌تر بشناسی: HTTPS (ویکی‌پدیا).

آپدیت وردپرس، قالب و افزونه‌ها: ساده‌ترین سد دفاعی ⬆️ ⬆️

🔧 خیلی از نفوذها از باگ‌هایی می‌آیند که مدت‌هاست وصله شده‌اند، اما سایت هنوز آپدیت نشده. وردپرس، قالب و افزونه‌ها را منظم به‌روزرسانی کن، ولی با روش درست: اول بکاپ بگیر، بعد روی زمان کم‌ترافیک آپدیت کن و در پایان صفحات مهم را تست کن. این کار ممکن است ساده به نظر برسد، اما تاثیرش در کاهش ریسک خیلی زیاد است.

اگر از تغییرات می‌ترسی، یک محیط تست یا حداقل یک برنامه مشخص داشته باش. آپدیت نکردن، معمولاً هزینه‌اش بیشتر از آپدیت کردن است؛ چون وقتی مشکل امنیتی رخ بدهد، هم اعتبار ضربه می‌خورد هم زمان و هزینه‌ی بازیابی بالا می‌رود. یک روال ساده ماهانه، خیلی از دردسرها را کم می‌کند.

انتخاب هاست و تنظیمات سرور: امنیت از زیرساخت شروع می‌شود 🏗️ 🏗️

🛡️ هاست خوب فقط سرعت نیست؛ امنیت هم هست. هاستی انتخاب کن که فایروال و مانیتورینگ داشته باشد، بکاپ منظم بدهد و به‌روزرسانی‌های سیستم را جدی بگیرد. خیلی وقت‌ها سایت روی یک سرور شلوغ یا تنظیمات ضعیف قرار دارد و همین باعث می‌شود حمله‌ها اثرگذارتر شوند. زیرساخت قوی یعنی احتمال نفوذ کمتر و کنترل بهتر بحران.

اگر سایت فروشگاهی یا پرترافیک داری، بهتر است روی پلن‌های قوی‌تر حساب کنی تا محدودیت منابع باعث خطاهای عجیب نشود. زیرساخت ضعیف می‌تواند تو را مجبور کند تنظیمات امنیتی را شُل بگیری. انتخاب درست هاست یعنی دستت برای امنیت بازتر است و خیالت راحت‌تر.

رمزهای قوی و مدیریت رمز: دفاع پایه‌ای اما حیاتی 🔑 🔑

🔐 رمزهای کوتاه، تکراری یا قابل حدس، دعوت‌نامه برای حمله‌اند. رمز مدیر وردپرس، دیتابیس و پنل هاست را جدا و پیچیده انتخاب کن. بهتر است از یک مدیر رمز استفاده کنی تا مجبور نشوی رمزها را ساده نگه داری. اگر چند نفر به پنل دسترسی دارند، هر نفر باید حساب جدا داشته باشد و هرگز از یک رمز مشترک استفاده نشود.

یک نکته مهم: اگر احساس کردی رمز لو رفته، فقط تغییر رمز وردپرس کافی نیست؛ باید رمزهای مرتبط (هاست، دیتابیس، ایمیل مدیر) هم بررسی شود. خیلی از نفوذها زنجیره‌ای هستند. همین دقت ساده می‌تواند جلوی تکرار نفوذ را بگیرد و امنیت را واقعی کند.

احراز هویت دو مرحله‌ای: ورود امن‌تر با یک قدم اضافه 📲 📲

حتی اگر رمز قوی باشد، ممکن است لو برود. احراز هویت دو مرحله‌ای (2FA) یعنی ورود فقط با رمز انجام نمی‌شود و یک کد دوم هم لازم است. این کار مخصوصاً برای مدیر سایت، یک سپر عالی است. اگر سایتت برای کسب‌وکار مهم است، 2FA را جزء کارهای اجباری بگذار نه اختیاری.

🛡️ برای اینکه در روزهای شلوغ گیر نکنی، کدهای بازیابی (Backup Codes) را هم امن نگه دار. اگر چند مدیر دارید، برای همه فعال کنید. این یک تغییر کوچک است، اما جلوی بخش بزرگی از حملات رایج را می‌گیرد و کنترل پنل را امن‌تر می‌کند.

محدود کردن تلاش ورود و جلوگیری از حملات حدس رمز 🚦 🚦

🧱 حملات حدس رمز (brute force) یعنی ربات‌ها هزاران بار تلاش می‌کنند وارد شوند. با محدود کردن تعداد تلاش ورود و افزودن وقفه زمانی، این حمله‌ها بی‌اثرتر می‌شوند. همچنین بهتر است صفحه ورود را زیر نظر داشته باشی و ورودهای مشکوک را سریع شناسایی کنی. این کار هم امنیت را بالا می‌برد و هم فشار اضافه روی سرور را کم می‌کند.

اگر ترافیک سایت بالاست، این تنظیم‌ها کمک می‌کند منابع سرور بیهوده مصرف نشود. در کنار آن، کپچا را فقط جایی فعال کن که لازم است تا تجربه کاربر خراب نشود. هدف این است: امنیت بیشتر با کمترین اصطکاک برای کاربران واقعی.

نقش‌ها و دسترسی‌ها: هرکسی نباید همه‌چیز را ببیند 👥 👥

🔒 در وردپرس نقش‌های مختلف وجود دارد و باید دقیق استفاده شود. نویسنده لازم نیست افزونه نصب کند، ویرایشگر لازم نیست تنظیمات کلی را تغییر دهد. هر دسترسی اضافی یعنی یک ریسک اضافی. اگر تیم داری، نقش‌ها را بازبینی کن و دسترسی‌ها را حداقلی نگه دار. این کار جلوی خرابکاری ناخواسته و حتی نفوذ از طریق حساب‌های ضعیف‌تر را می‌گیرد.

کاربران قدیمی که دیگر کار نمی‌کنند را حذف یا غیرفعال کن. همچنین از نام کاربری‌های ساده مثل admin دوری کن. همین چیزهای کوچک، جلوی حمله‌های خودکار را می‌گیرد و امنیت پنل را محکم‌تر می‌کند.

محافظت از wp-config.php: قلب تنظیمات وردپرس ❤️ ❤️

🧯 فایل wp-config شامل اطلاعات حساس مثل اتصال دیتابیس و کلیدهای امنیتی است. دسترسی به این فایل باید محدود باشد. اگر کسی به آن برسد، کنترل سایت خیلی سریع از دست می‌رود. بهتر است سطح دسترسی فایل‌ها درست تنظیم شود و از نمایش خطاهای حساس در محیط واقعی جلوگیری کنی تا اطلاعات از طریق خطاها لو نرود.

اگر توسعه‌دهنده‌ای با سایت کار می‌کند، مطمئن شو اطلاعات حساس را در چت‌ها و فایل‌های عمومی پخش نمی‌کند. همچنین از نگهداری فایل‌های پشتیبان قابل دانلود در روت سایت پرهیز کن. این جزئیات، تفاوت بین امنیت واقعی و امنیت نمایشی را می‌سازند.

کلیدهای امنیتی و نشست‌ها: خروج اجباری از همه دستگاه‌ها در زمان لازم 🧷 🧷

🔐 وردپرس کلیدهای امنیتی دارد که روی مدیریت نشست‌ها و کوکی‌ها اثر می‌گذارند. اگر احساس کردی یک حساب مشکوک است یا نفوذ رخ داده، تغییر این کلیدها می‌تواند همه نشست‌های فعال را باطل کند و ورود مجدد را مجبور کند. این کار مثل قفل کردن دوباره در خانه بعد از یک اتفاق مشکوک است.

بهتر است این کار را بی‌برنامه انجام ندهی؛ چون ممکن است کاربران یا مدیران از پنل بیرون بیفتند. اما به عنوان ابزار واکنش سریع خیلی کاربردی است. داشتن یک مسیر مشخص برای واکنش به رخداد امنیتی، باعث می‌شود در لحظه بحران تصمیم‌های عجولانه نگیری.

سطح دسترسی فایل‌ها و پوشه‌ها: قفل‌های پشت صحنه 🗂️ 🗂️

🔧 سطح دسترسی فایل‌ها اگر بیش از حد باز باشد، می‌تواند اجازه تغییر فایل‌ها را به مهاجم بدهد. هدف این است که سایت فقط به اندازه نیازش اجازه نوشتن داشته باشد، نه بیشتر. پوشه uploads معمولاً نیاز به نوشتن دارد، اما فایل‌های سیستمی و قالب نباید بی‌جهت قابل نوشتن باشند. این تنظیم به ظاهر فنی، یکی از مهم‌ترین قدم‌هاست.

اگر دسترسی‌ها درست باشد، حتی اگر یک حفره کوچک هم وجود داشته باشد، مهاجم سخت‌تر می‌تواند فایل مخرب آپلود کند یا کد تزریق کند. این یعنی یک لایه دفاعی اضافه که به شکل بی‌سروصدا امنیت را بالا می‌برد.

سخت‌سازی صفحه ورود و پنل مدیریت: نقطه‌ی حساس ورود 🎛️ 🎛️

🔁 صفحه ورود وردپرس یکی از پرتکرارترین اهداف حمله است. علاوه بر محدودیت تلاش ورود و 2FA، می‌توان دسترسی به wp-admin را برای برخی مسیرها محدود کرد یا برای مدیرها یک لایه تایید اضافه گذاشت. اما باید مراقب باشی تجربه کاربر خراب نشود. امنیت خوب یعنی کاربران واقعی راحت باشند و حمله‌کننده‌ها خسته شوند.

اگر تیم کوچک داری، محدودسازی ورود مدیر به IP مشخص (در صورت امکان) خیلی کمک می‌کند. همچنین بهتر است از استفاده از شبکه‌های وای‌فای عمومی برای ورود مدیریتی پرهیز کنی. مدیریت سایت مثل مدیریت حساب بانکی است؛ بهتر است با دقت و روال امن انجام شود.

امنیت افزونه‌ها: کمتر، بهتر، معتبرتر 🧱 🧱

🧹 هر افزونه یک کد اضافی است و هر کد اضافی یعنی احتمال باگ بیشتر. افزونه‌های اضافی یا بدون پشتیبانی را حذف کن، نه فقط غیرفعال. قبل از نصب، تاریخ آپدیت‌ها، امتیازها و سازگاری با نسخه وردپرس را بررسی کن. افزونه‌های ناشناخته یا دانلودی از منابع نامعتبر می‌توانند یک درِ پشتی ایجاد کنند و کل سایت را در معرض خطر بگذارند.

اگر افزونه‌ای برایت حیاتی است، یک جایگزین معتبر هم در نظر داشته باش تا در صورت توقف پشتیبانی، گیر نکنی. امنیت یعنی وابستگی کمتر به ابزارهای ناپایدار. این نگاه باعث می‌شود سایتت هم امن‌تر باشد و هم در بلندمدت کم‌هزینه‌تر مدیریت شود.

امنیت قالب و کدنویسی: زیبایی بدون امنیت ارزش ندارد 🎨 🎨

قالب باید از منبع معتبر باشد و به‌روزرسانی منظم داشته باشد. قالب‌های دستکاری‌شده یا نسخه‌های رایگانِ غیررسمی، یکی از رایج‌ترین مسیرهای نفوذ هستند. اگر سایتت اختصاصی است، مطمئن شو ورودی‌ها (مثل فرم‌ها) درست اعتبارسنجی می‌شوند و خروجی‌ها امن رندر می‌شوند تا ریسک تزریق کد کم شود.

🧠 اگر طراح یا دولوپر روی سایت کار می‌کند، بهتر است یک روال بازبینی داشته باشد: تغییرات مهم را قبل از انتشار بررسی کنید، و از افزودن کدهای ناشناس در فایل‌های قالب پرهیز کنید. امنیت خوب با کد تمیز و استاندارد، خیلی راحت‌تر به دست می‌آید.

پشتیبان‌گیری واقعی: فقط بکاپ گرفتن کافی نیست 💾 💾

🛟 بکاپ یعنی اگر اتفاقی افتاد، بتوانی سریع برگردی. اما بکاپ وقتی ارزش دارد که قابل بازیابی باشد. بکاپ را روی یک مقصد جدا از هاست نگه دار تا اگر سرور مشکل پیدا کرد، بکاپ هم از بین نرود. همچنین دوره بکاپ را با توجه به تغییرات سایت تنظیم کن؛ فروشگاه‌ها معمولاً نیاز به بکاپ‌های پرتکرارتر دارند.

حداقل هر چند وقت یک‌بار فرآیند بازیابی را تست کن. بسیاری از افراد بکاپ دارند اما هیچ وقت تست نکرده‌اند و روز بحران می‌فهمند بکاپ ناقص بوده. این تست یک کار کوچک است، اما در لحظه‌ای که همه چیز بهم ریخته، می‌تواند نجات‌دهنده باشد.

فایروال و WAF: وقتی جلوی حمله قبل از رسیدن به وردپرس گرفته می‌شود 🧱 🧱

🛡️ یک لایه فایروال یا WAF می‌تواند بسیاری از حمله‌های رایج را قبل از رسیدن به سایت فیلتر کند؛ مثل درخواست‌های مشکوک، تزریق‌ها و برخی بات‌ها. این کار هم امنیت را بالا می‌برد و هم فشار روی سرور را کم می‌کند. اگر سایتت بازدید بالایی دارد، این لایه دفاعی می‌تواند خیلی به پایداری کمک کند.

🌐 در بسیاری از سناریوها، ترکیب CDN و WAF هم سرعت را بهتر می‌کند هم امنیت را. اگر می‌خواهی مفهوم CDN را ساده‌تر بدانی: CDN (ویکی‌پدیا). برای مطالعه داخلی مرتبط هم این لینک می‌تواند کمک کند: CDN چیست و چه تاثیری روی سرعت سایت دارد؟

مانیتورینگ و لاگ: قبل از اینکه دیر شود، خبرت کند 📣 📣

🔔 امنیت فقط بستن درها نیست؛ باید بفهمی چه زمانی کسی سعی کرده وارد شود. مانیتورینگ ورودهای ناموفق، تغییرات فایل‌ها و رفتارهای غیرعادی کمک می‌کند زودتر واکنش نشان بدهی. اگر سایتت کسب‌وکاری است، داشتن هشدارهای ساده (مثلاً برای ورودهای مشکوک) می‌تواند جلوی خسارت‌های بزرگ را بگیرد.

در کنار مانیتورینگ، یک برنامه واکنش داشته باش: اگر ورود مشکوک دیدی چه می‌کنی؟ چه رمزهایی تغییر می‌کند؟ بکاپ کجاست؟ این برنامه ساده باعث می‌شود در لحظه بحران، تصمیم‌های سریع‌تر و درست‌تری بگیری.

اسکن بدافزار و پاکسازی: وقتی شک کردی، دقیق بررسی کن 🧪 🧪

🔍 اگر سایت رفتار عجیب دارد (ریدایرکت ناخواسته، تبلیغات مشکوک، کندی شدید، یا تغییرات بدون اطلاع)، اسکن بدافزار را جدی بگیر. اسکن باید هم فایل‌ها را بررسی کند هم برخی الگوهای مشکوک در دیتابیس را. البته اسکن خودکار همیشه کافی نیست؛ گاهی نیاز به بررسی دقیق‌تر دارد تا منبع آلوده‌سازی پیدا شود.

🧯 پاکسازی فقط حذف فایل‌های مشکوک نیست؛ باید مسیر نفوذ هم بسته شود. وگرنه دوباره برمی‌گردد. یعنی بعد از پاکسازی، رمزها، افزونه‌ها، دسترسی‌ها و تنظیمات سرور باید بازبینی شود. اگر خواستی، می‌توانیم پاکسازی + امن‌سازی کامل را انجام دهیم تا سایتت به حالت پایدار برگردد.

امنیت دیتابیس و کاهش سطح دسترسی: کمترین دسترسی، بیشترین آرامش 🗃️ 🗃️

🔐 دیتابیس خانه اطلاعات اصلی سایت است. کاربر دیتابیس باید دسترسی‌های حداقلی داشته باشد و رمز آن قوی باشد. اگر کسی به دیتابیس برسد، می‌تواند کاربران مدیر بسازد یا محتوای سایت را تغییر دهد. پس علاوه بر رمز، دسترسی‌های دیتابیس و مسیرهای دسترسی به پنل مدیریت دیتابیس را هم محدود کن.

همچنین بهتر است پیشوند جدول‌ها را همان حالت پیش‌فرض رها نکنی (اگر سایت تازه است)، چون برخی حمله‌ها روی حدس ساختار پیش‌فرض حساب می‌کنند. این یک قدم کوچک است که به صورت کمکی سطح ریسک را پایین می‌آورد.

چک‌لیست نهایی و مسیر پیشنهادی اجرا: از امروز شروع کن ✅

🧭 اگر بخواهیم عملی و سریع جلو برویم: اول SSL/HTTPS را درست کن، بعد آپدیت‌ها و حذف افزونه‌های اضافی را انجام بده، سپس رمزهای قوی و 2FA را فعال کن، بعد محدودیت تلاش ورود و مدیریت نقش‌ها را تنظیم کن، و در نهایت بکاپ و مانیتورینگ را جدی بگیر. با همین ترتیب، در مدت کوتاه، بیشترین اثر را می‌گیری.

🤝 اگر می‌خواهی بدون آزمون‌وخطا این مسیر اجرا شود، می‌توانیم امن‌سازی وردپرس را کامل انجام بدهیم: بستن ورودی‌های رایج، تنظیمات حرفه‌ای، بررسی افزونه‌ها، رفع خطاهای HTTPS، و تحویل یک گزارش واضح از کارهایی که انجام شده. نتیجه‌اش یک سایت امن‌تر، قابل اعتمادتر و آماده رشد است.

جدول اولویت‌ها: کدام اقدام امنیتی را زودتر انجام بدهم؟ 📊 📊

🎯 اگر زمانت محدود است، این جدول کمک می‌کند اول سراغ اقداماتی بروی که بیشترین اثر را دارند. نکته مهم این است که ترکیب چند اقدام ساده، امنیت را خیلی بیشتر از یک اقدام سنگین بالا می‌برد. یعنی با چند قدم پایه‌ای می‌توانی ریسک را به شکل چشم‌گیری کم کنی.

امنیت نباید سایت را کند کند؛ پس از تنظیمات سبک و استاندارد استفاده کن. اگر همزمان می‌خواهی سرعت را بهتر کنی، این لینک داخلی کاربردی است: کاهش زمان لود سایت ؛ 15 راهکار عملی

اقدام اثر زمان اجرا اولویت
SSL/HTTPS + رفع خطا بالا کوتاه خیلی فوری
آپدیت + حذف افزونه اضافی بالا کوتاه فوری
رمز قوی + 2FA بالا کوتاه فوری
بکاپ خارج از هاست بالا متوسط مهم
WAF/فایروال + مانیتورینگ متوسط تا بالا متوسط بعد از موارد فوری

پرسش و پاسخ امنیت وردپرس ❓

💬 برای شروع امن‌سازی وردپرس، اولین کار چیست؟
فعال‌سازی SSL/HTTPS به‌صورت درست + آپدیت وردپرس/افزونه‌ها + حذف افزونه‌های اضافی، بهترین شروع است.

آیا فقط نصب افزونه امنیتی کافی است؟
نه. افزونه کمک می‌کند، اما بدون رمز قوی، 2FA، محدودیت ورود، بکاپ و بررسی افزونه‌ها امنیت کامل نمی‌شود.

اگر سایت هک شد، چه کار کنم؟
سریع سایت را از دسترس تغییرات مشکوک خارج کن، رمزها را عوض کن، اسکن/پاکسازی انجام بده و مهم‌تر از همه مسیر نفوذ را ببند تا دوباره تکرار نشود.

SSL چه ربطی به امنیت وردپرس دارد؟
SSL ارتباط را رمزنگاری می‌کند و جلوی شنود اطلاعات ورود و فرم‌ها را می‌گیرد؛ همچنین اعتماد کاربر را بالا می‌برد.

کدام لینک‌ها برای کامل‌تر کردن بررسی فنی سایت مفیدند؟
برای بررسی فنی و چک‌های تکمیلی، این مطلب داخلی کاربردی است: چک لیست سئو تکنیکال قبل از تحویل سایت

برگشت به بالا ⬆️

امنیت وردپرس
تماس ۰۹۹۱۱۱۱۹۴۶۰