# چک‌لیست امنیت وردپرس برای هاست اشتراکی

- منبع: https://di9.ir/blog/%da%86%da%a9-%d9%84%db%8c%d8%b3%d8%aa-%d8%a7%d9%85%d9%86%db%8c%d8%aa-%d9%88%d8%b1%d8%af%d9%be%d8%b1%d8%b3
- سایت: دیباگ
- نویسنده: danidiba
- تاریخ انتشار: 2026-08-15
- آخرین به‌روزرسانی: 2026-08-15

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

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

## امنیت وردپرس روی هاست اشتراکی از کجا شروع می‌شود؟#

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

![لایه‌های دفاعی وردپرس از حمله‌ی خودکار تا دیوار آتش هاست، htaccess، ورود و نقش کاربران](/blog/wp-content/uploads/2026/09/fig-w04-1.svg)

دیوار آتش (WAF) برنامه‌ای است که درخواست‌های مشکوک را پیش از رسیدن به سایت شناسایی و مسدود می‌کند. روی بسیاری از هاست‌های اشتراکی، این لایه در سطح سرور فعال است و شما فقط باید مراقب لایه‌های داخلی باشید.

## چطور ورود به پیشخوان را امن کنیم؟#

با رمز یکتا، ورود دومرحله‌ای، محدودکردن تلاش ورود و مرور منظم کاربران.

- **رمز طولانی و یکتا.** رمز مدیر وردپرس نباید جای دیگری استفاده شده باشد. از مدیر رمز استفاده کنید.

- **ورود دومرحله‌ای.** با یک افزونه‌ی سبک برای همه‌ی مدیران و ویرایشگران فعالش کنید.

- **محدودکردن تلاش ورود.** اگر هاست این کار را در سطح سرور انجام نمی‌دهد، با افزونه انجامش دهید.

- **حداقل دسترسی لازم.** نقش (Role) در وردپرس مجموعه‌ای از دسترسی‌هاست که مشخص می‌کند کاربر چه کاری می‌تواند بکند. در **کاربران ← همه‌ی کاربران** ببینید چه کسانی مدیرند؛ نویسنده به نقش مدیر نیاز ندارد و کاربران قدیمی را حذف کنید.

## چرا به‌روزرسانی مهم‌ترین کار امنیتی است؟#

چون بیشتر نفوذها از آسیب‌پذیری‌های شناخته‌شده‌ای است که وصله‌شان منتشر شده ولی نصب نشده است.

- **به‌روزرسانی خودکار هسته.** وردپرس نسخه‌های امنیتی و جزئی را به‌طور پیش‌فرض خودکار نصب می‌کند؛ مطمئن شوید این رفتار خاموش نشده است.

- **به‌روزرسانی خودکار افزونه‌ها.** در **افزونه‌ها ← افزونه‌های نصب‌شده** برای افزونه‌های معتبر گزینه‌ی فعال‌سازی به‌روزرسانی خودکار را بزنید. افزونه‌های حساس مثل فروشگاه را اول روی محیط آزمایشی به‌روز کنید.

- **حذف هر چیز استفاده‌نشده.** افزونه و قالب غیرفعال هنوز روی هاست است و ممکن است مستقیم قابل سوءاستفاده باشد. فهرست کوتاه و لازم را در [افزونه‌های ضروری وردپرس](/blog/افزونه-های-ضروری-وردپرس) ببینید. قالب و افزونه‌ی نال‌شده را هم هرگز نصب نکنید.

## کدام تنظیم‌های فایل و سرور لازم است؟#

چند خط در `wp-config.php`، چند خط در `.htaccess` و دسترسی درست فایل‌ها. این بخش بیشترین اثر را با کمترین هزینه دارد.

- **بستن ویرایشگر فایل و اجبار HTTPS در پیشخوان.** این خط‌ها را بالای خط پایان ویرایش در `wp-config.php` بگذارید:

PHPکپی`// بستن ویرایشگر فایل قالب و افزونه در پیشخوان
define( &#039;DISALLOW_FILE_EDIT&#039;, true );

// ورود و پیشخوان فقط روی HTTPS
define( &#039;FORCE_SSL_ADMIN&#039;, true );`

- **دسترسی فایل‌ها.** فایل‌ها `644`، پوشه‌ها `755` و `wp-config.php` روی `640` یا اگر هاست اجازه داد `600`. این کار را از File Manager با گزینه‌ی Change Permissions انجام دهید.

- **بستن اجرای PHP در پوشه‌ی بارگذاری.** مهاجم معمولاً فایل PHP را به شکل تصویر بارگذاری می‌کند. یک فایل `.htaccess` در `wp-content/uploads` بسازید:

Apacheکپی`&lt;FilesMatch &quot;\.(php|phtml|phar)$&quot;&gt;
    Require all denied
&lt;/FilesMatch&gt;`

- **محافظت از فایل‌های حساس.** این خط‌ها را در `.htaccess` ریشه، **بیرون** از بلوک `# BEGIN WordPress` بگذارید. اگر از اپلیکیشن موبایل وردپرس یا سرویسی که به XML-RPC نیاز دارد استفاده می‌کنید، بخش دوم را نگذارید:

Apacheکپی`Options -Indexes

&lt;Files wp-config.php&gt;
    Require all denied
&lt;/Files&gt;

&lt;Files xmlrpc.php&gt;
    Require all denied
&lt;/Files&gt;`

اگر بعد از ذخیره خطای ۵۰۰ گرفتید، هاست اجازه‌ی خط `Options` را نمی‌دهد؛ آن خط را بردارید.

- **کلیدهای امنیتی.** کلیدهای امنیتی (Salt) رشته‌های تصادفی در `wp-config.php` هستند که کوکی ورود را رمز می‌کنند. بعد از هر نفوذ احتمالی، آن‌ها را با مقدار تازه از سرویس رسمی تولید کلید وردپرس عوض کنید؛ همه‌ی کاربران از حساب خارج می‌شوند.

بستن توابعی مثل `exec` روی هاست اشتراکی هم بخشی از همین لایه است؛ دلیلش را در [توابع بسته‌ی PHP روی هاست اشتراکی](/blog/disable-functions-هاست-اشتراکی) نوشته‌ایم.

## پشتیبان‌گیری و پایش چطور باید باشد؟#

پشتیبان باید بیرون از همان هاست باشد و بازگرداندنش دست‌کم یک بار امتحان شده باشد.

- **پشتیبان بیرون از هاست.** بک‌آپی که روی همان هاست می‌ماند، با هک یا خرابی هاست همراه سایت از دست می‌رود. برای دیتابیس [بک‌آپ خودکار دیتابیس روی سی‌پنل](/blog/بک-اپ-خودکار-دیتابیس-روی-سی-پنل) را ببینید.

- **ایمیل مدیر واقعی.** در **تنظیمات ← همگانی** نشانی ایمیلی بگذارید که می‌خوانید؛ هشدارهای وردپرس و بازیابی رمز به آن می‌رسد.

- **کلیدهای API با سقف مصرف.** اگر افزونه‌ی هوش مصنوعی یا چت‌بات دارید، کلید را با کمترین دسترسی و سقف هزینه بسازید. نکته‌هایش در [چت‌بات پشتیبانی سایت وردپرسی](/blog/چت-بات-پشتیبانی-سایت-وردپرسی) آمده است.

## دیوار آتش هاست با وردپرس چه تعاملی دارد؟#

بیشتر وقت‌ها بی‌صدا کمک می‌کند و گاهی اشتباه می‌کند. دیوارهای آتش سطح سرور ممکن است ذخیره‌ی نوشته‌ای را که کد یا کلمه‌ی خاصی دارد، یا درخواست‌های پشت‌سرهم پیشخوان را، حمله تشخیص دهند و خطای ۴۰۳ برگردانند یا IP شما را موقتاً ببندند.

راه درست خاموش‌کردن آن نیست. زمان دقیق، آدرس صفحه و پیام خطا را برای پشتیبانی هاست بفرستید تا همان قاعده را برای سایت شما استثنا کنند. اگر با خطاهای دیگر روبه‌رو شدید، [رفع خطاهای رایج وردپرس](/blog/خطاهای-رایج-وردپرس) کمک می‌کند.

## اگر سایت هک شد چه کنیم؟#

- رمز سی‌پنل، دیتابیس، FTP و همه‌ی مدیران را عوض کنید.

- سایت را از آخرین پشتیبان سالم برگردانید.

- هسته، قالب و افزونه‌ها را به‌روز کنید و کلیدهای امنیتی را عوض کنید.

- کاربران مدیر ناشناس و فایل‌های PHP داخل پوشه‌ی بارگذاری را بررسی کنید.

- علت نفوذ را پیدا کنید، وگرنه چند روز بعد تکرار می‌شود.

## آینده‌ی امنیت وردپرس#

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

برای آماده‌بودن:

- هاستی انتخاب کنید که دیوار آتش و اسکن بدافزار سطح سرور دارد.

- ورود دومرحله‌ای را همین حالا برای همه‌ی مدیران اجباری کنید.

- هر چند ماه یک بار فهرست کاربران، افزونه‌ها و بازگرداندن پشتیبان را امتحان کنید.

## خلاصه#

- به‌روزرسانی، ورود امن و پشتیبان بیرون از هاست پایه‌ی امنیت‌اند.

- ویرایشگر فایل را ببندید و اجرای PHP را در پوشه‌ی بارگذاری غیرفعال کنید.

- افزونه و قالب استفاده‌نشده و نال‌شده را حذف کنید.

- با خطای دیوار آتش هاست، استثنا بخواهید، نه خاموش‌کردن.

- بعد از هک، اول رمزها، بعد بازگرداندن، بعد پیدا کردن علت.