کدهای Htaccess کاربردی برای سایت وردپرس
فایل وردپرس htaccess یک نوع سرور پیکره بندی شده است که می گوید سرور چطور می تواند مواردی را به صورت مطمئن در وبسایت کنترل کند .کدهای Htaccess کار های مانند سیستم های راهنمای کاربران، پسورد امنیتی ناحیه ی مدیریتی و حفاظت از دایرکتوری ها و… می باشد.
قبل از استفاده از کدهای Htaccess حتما از فایل Htaccess قبلی بک آپ یا پشتیبان تهیه کنید.
چگونه در وردپرس فایل htaccess ایجاد کنیم؟
ساده ترین راه برای ایجاد یک فایل htaccessدر وردپرس استفاده از تنظیمات وردپرس و بخش پیوندهای یکتا است.برای اینکار تنظیمات >> پیوندهای یکتا را اجرا کنید و یکی از گرینه های موجود در تصویر را انتخاب کنید تا فایل اچ تی اکسس برای وب سایت شما هم ایجاد شود.
ایجاد htaccess. پیش فرض وردپرس
فایل htaccess (اچ تی اکسس) برای هر دایرکتوری می توانید به صورت جداگانه وجود داشته باشد . اگر شما در پوشه اصلی وردپرس این فایل را پیدا نمی کنید می توانید در این پوشه یک فایل خالی با نام htaccess. ایجاد کنید.دقت کنید که اول فایل علامت . وجود داشته باشد.کد های پیشفرض فایل htaccess وردپرس را در زیر می توانید ببنید.
# BEGIN <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END
نکته:در این بخش از کد نباید تغییری بدید و کدهای جدیدی که می خواهید اضافه کنید باید در زیر این بخش اضافه کنید.
کدهای Htaccess کاربردی برای سایت وردپرس:
محافظت از فایل تنظیمات wp-config:
اگر بخواهید بر اساس IP ثابت مدیران سایت اجازه دسترسی بدهید کافیست علامت # را از اول خط # Allow from xx.xx.xx.xxx بردارید و به جای x هم IP مدیر را جایگزین کنید.
# Protects wp-config <Files wp-config.php> Order Allow,Deny # Allow from xx.xx.xx.xxx # Allow from yy.yy.yy.yyy Deny from all </Files>
جلوگیری از حمله DDOS از طریق قابلیت XML-RPC:
# Protects XML-RPC, prevents DDoS attack <FilesMatch "^(xmlrpc\.php)"> Order Deny,Allow # Allow from xx.xx.xx.xxx # Allow from yy.yy.yy.yyy Deny from all </FilesMatch>
محافظت از بخش مدیریت وردپرس:
محافظت از مدیریت ایده خوبی برای افزایش امنیت سایت است ولی فراموش نکنید در بخش پایین کد زیر حداقل به یک IP اجازه دسترسی Allow بدهید وگرنه به مدیریت دسترسی نخواهید داشت.
# Protects admin area by IP AuthUserFile /dev/null AuthGroupFile /dev/null AuthName " Admin Access Control" AuthType Basic <LIMIT GET> Order Deny,Allow Deny from all Allow from xx.xx.xx.xxx Allow from yy.yy.yy.yyy </LIMIT>
غیرفعال کردن امکان مشاهده محتویات پوشه ها:
این مورد یکی از متداول ترین مشکلات امنیتی سایت هاست که هکر می تواند پوشه ها و فایل های داخل آنها را ببیند و راه نفوذ پیدا کند.خوشبختانه حل این مشکل با یک خط زیر امکان پذیر است.
# Prevents directory listing Options -Indexes
مسدود کردن اسپمرها و ربات ها:
<Limit GET POST> Order Allow,Deny Deny from xx.xx.xx.xxx Deny from yy.yy.yy.yyy </Limit> Allow from all
جلوگیری از استفاده تصاویر سایت در سایت های دیگر:
# Prevents image hotlinking RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourwebsite.com [NC] RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourwebsite2.com [NC] RewriteRule \.(jpe?g?|png|gif|ico|pdf|flv|swf|gz)$ - [NC,F,L]
جلوگیری از دسترسی مستقیم به فایل های PHP قالب یا افزونه:
RewriteCond %{REQUEST_URI} !^/wp-content/plugins/file/to/exclude\.php RewriteCond %{REQUEST_URI} !^/wp-content/plugins/directory/to/exclude/ RewriteRule wp-content/plugins/(.*\.php)$ - [R=404,L] RewriteCond %{REQUEST_URI} !^/wp-content/themes/file/to/exclude\.php RewriteCond %{REQUEST_URI} !^/wp-content/themes/directory/to/exclude/ RewriteRule wp-content/themes/(.*\.php)$ - [R=404,L]
مسدود کردن همه دسترسی ها به پوشه wp-includes:
داخل این پوشه فقط فایل های هسته وردپرس هستند و هیچ پلاگین ،عکس یا صفحه ای که مورد نیاز کاربران باشد داخل آن نیست پس کلا دسترسی عمومی به آن را مسدود می کنیم.
# Blocks all wp-includes folders and files <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^wp-admin/includes/ - [F,L] RewriteRule !^wp-includes/ - [S=3] RewriteRule ^wp-includes/[^/]+\.php$ - [F,L] RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L] RewriteRule ^wp-includes/theme-compat/ - [F,L] </IfModule>
مسدود کردن حملات XSS:
حمله تزریق اسکریپت از طریق وبگاه (Cross Site Scripting) که به صورت مخفف XSS نیز نامیده میشود (مخفف آن درواقع CSS است ولی با زبان طراحی CSS اشتباه گرفته شده و به همین دلیل XSS نامیده میشود)، نوعی از حملات تزریقی است که در وبسایتها پیدا میشود و در بین رایج ترین حملات تحت وب، در جایگاه اول قرار دارد.
این حمله طی آسیب پذیریای صورت میگیرد که در آن دادههای وارد شده توسط حمله کننده یا هکر، بدون فیلتر شدن تحویل کاربران داده میشود. این دادهها میتوانند کدهای جاوا اسکریپتی باشند که در سمت مرورگر کاربر اجرا شده و کارهای مختلفی میتواند برای هکر انجام دهد.
# Blocks some XSS attacks <IfModule mod_rewrite.c> RewriteCond %{QUERY_STRING} (\|%3E) [NC,OR] RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{,2}) [OR] RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{,2}) RewriteRule .* index.php [F,L] </IfModule>
در استفاده از کدهای Htaccess بسیار دفت کنید چراکه ممکن است به ساختار وب سرویس خوب لطمه وارد کنید.اما با یک بک آپ ساده می توانید این مشکل را برطرف کنید.
برچسب:اسپمرها, افزایش امنیت وردپرس, امنیت وردپرس, اموزش امنیت وردپرس, ایجاد htaccess, پوشه wp-includes, تنظیمات wp-config, جلوگیری از حمله DDOS, حملات XSS, حملات تحت وب, حمله تزریق اسکریپت, ربات, فایل های PHP, کدهای Htaccess, محافظت از بخش مدیریت وردپرس, محتویات پوشه, مسدود کردن حملات XSS, مسدود کردن همه دسترسی ها به پوشه wp-includes, هسته وردپرس
1 نظر
استفاده کردم. خیلی مفید و جامع کدهای مورد نیاز این فایل رو بررسی کردید . ممنونم از نظم در مقاله و اینکه کدها رو براحتی میشد کپی گرفت .
موفق باشید.