در این آموزش افزایش امنیت وردپرس به همراه نصب افزونه امنیتی NinjaFirewall آموزش داده می شود.
اسکریپت وردپرس بصورت خام امنیت بسیار خوبی دارد اما با توجه به متن باز بودن آن و آشکار بودن کدهایش، معمولا جزو اهداف ربات های مخرب قرار دارد. قبل از هر موضوع داشتن یک رمز عبور پیچیده و غیرقابل برای ادمین سایت خود قرار دهید. رمزهایی مانند شماره تلفن همراه، حروف پشت سرهم در کیبورد کامپیوتر(رمزهای کیووردی) بدترین انتخاب برای هر پنلی است. همچنین سعی کنید یوزر دیگری غیر از admin ایجاد و به آن دسترسی ادمین بدهید. سپس یوزر ادمین را حذف کنید. براحتی میتوانید هنگام حذف یوزر admin،دسترسی پست ها و نوشته ها را به یوزر جدید بدهید.
#
نصب افزونه ninja-firewall #
افزونه امنیتی نینجا فایروال جزو افزونه های رایگانی می باشد که چندین سال است بروزرسانی مستمر داشته است. این افزونه مانند یک اسکریپت مستقل عمل می کند و قبل از اینکه هر نوع درخواستی فرصت رسیدن به سطح وردپرس را داشته باشد، اجرا می گردد.
ابتدا از این لینک که مربوط به مخزن وردپرس است افزونه را دانلود و در پوشه plugin وردپرس Extract کنید.این افزونه با php نسخه 7.1 به بالا کار می کند.پس از فعالسازی افزونه در قسمت افزونه های وردپرس، به منوی NinjaFirewall در قسمت پنل مدیریت وردپرس مراجعه کنید.
فعالسازی افزونه نینجا فایروال در فایل htaccess و با زدن یک کلیک انجام می شود. معمولا خود افزونه این تغییرات را اعمال می کند.
این افزونه معمولا نویتیفیکیشن های زیادی برای مدیر سایت می فرستد.برای غیرفعال کردن نوتیفیکیشن ها بصورت زیر عمل کنید.
منوی Security Rules->Notification این گزینه را غیر فعال کنید.
منوی Event Notifications->Send me a daily activity report تیک این گزینه را غیرفعال کنید.
رول های امنیتی مفید #
مواردی که می توانید برای امنیت بیشتر انجام داد بصورت ذیل می باشد.
غیر فعالسازی اجرای مستقیم فایل php در فولدر wp-content #
یک فایل htaccess. در فولدر wp-content ایجاد و محتوای زیر را در آن قرار دهید.
Order deny,allow
Deny from all
<Files ~ ".(xml|css|jpe?g|jpg|avif|png|eot|ttf|woff|woff2|svg|ico|icon|webp|bmp|gif|js)$">
Allow from all
</Files>
غیر فعالسازی دسترسی به فایل wp-config #
این رول باید در htaccess. فولدر اصلی سایت قرار گیرد.
<Files wp-config.php>
order allow,deny
deny from all
</Files>
غیر فعال سازی open directory #
در بعضی مواقع دایرکتوی های سایت شما باز بوده و بازدید کننده می توانید لیست فایلهای آپلودی شما را ببیند.
این رول باید htaccess فولدر اصلی سایت قرار گیرد.
Options All -Indexes
محدود سازی فایل xmlrpc #
این فایل به عنوان یک API بوده و تعامل وردپرس با سایر سایت ها و همچنین اپلیکیشن های موبایل را کنترل می کند.
معمولا کرکر ها کرک خود را روی این فایل انجام می دهند و باعث می گردد مصرف پردازنده، رم سایت شما افزایش یابد.
بهتر است دسترسی این فایل را فقط برای موتورهای جستجوی گوگل باز بگذارید.
order deny,allow
deny from all
allow from 8.8.8.8
allow from 34.100.182.96/28
فعال کردن بروزرسانی خودکار وردپرس #
برای فعال کردن بروزرسانی خودکار وردپرس، کد زیر را داخل فایل wp-config.php قرار دهید.
define( ‘WP_AUTO_UPDATE_CORE’, true );
غیرفعال کردن دسترسی به فایلهای حساس وردپرس #
برای غیر فعال کردن دسترسی به فایلهای مهم وردپرس مانند readme.html باید کد زیر را داخل htaccess قرار دهید.
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{HTTP:Cookie} !(wordpress_logged_in_|hmwp_logged_in_|wp-postpass_|wptouch_switch_toggle|comment_author_|comment_author_email_) [NC] RewriteCond %{THE_REQUEST} /([_0-9a-zA-Z-]+/)?(wp-config-sample\.php|readme\.html|readme\.txt|install\.php|license\.txt|php\.ini|bb-config\.php|error_log) [NC] RewriteRule ^(.*)$ - [L,R=404] </IfModule> <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{REQUEST_URI} /(wp-config-sample\.php|readme\.html|readme\.txt|install\.php|license\.txt|php\.ini|bb-config\.php|error_log) [NC] RewriteRule ^(.*)$ - [L,R=404] </IfModule>
غیر فعال کردن دسترسی بعضی کشورها #
برای غیر فعال کردن کشورهای خاص میتوانید از لینک زیر پلاگین iQ Block Country را دانلود کنید. در این پلاگین می توانید دسترسی کشورهای مورد نظر را به سایت خود بلاک کنید.
در صورت نیاز به خرید هاست مخصوص وردپرس به همراه امنیت بالا، به لینک زیر مراجعه کنید.