وردپرس یکی از محبوبترین سیستمهای مدیریت محتوا (CMS) در جهان است. این محبوبیت باعث میشود که وردپرس هدف هکرها قرار گیرد. هکرها با نفوذ به وبسایتهای وردپرس، میتوانند اطلاعات حساس کاربران را سرقت کنند، سایت را خراب کنند و حتی از آن برای فعالیتهای غیرقانونی استفاده کنند.
یکی از راههای مهم برای تقویت امنیت وبسایت وردپرس، استفاده از فایل htaccess است. فایل htaccess یک فایل پیکربندی است که میتوان از آن برای کنترل دسترسی به فایلها و پوشههای وبسایت، تنظیم رفتار مرورگرها و اعمال محدودیتهای امنیتی استفاده کرد.
در این مقاله، به بررسی امنیت وردپرس htaccess خواهیم پرداخت. در ابتدا، نحوه کار فایل htaccess را توضیح خواهیم داد. سپس، به بررسی برخی از اقدامات امنیتی که میتوان با استفاده از فایل htaccess انجام داد، خواهیم پرداخت.
نحوه کار فایل htaccess
فایل htaccess یک فایل متنی است که در دایرکتوری اصلی وبسایت شما قرار دارد. این فایل توسط سرور وب شما خوانده میشود و دستورالعملهای موجود در آن را اجرا میکند.
دستورالعملهای موجود در فایل htaccess با استفاده از عباراتی به نام directive شروع میشوند. هر directive یک دستور خاص را به سرور وب میدهد. به عنوان مثال، directive Allow میگوید که سرور وب باید به درخواستهای مشخصی اجازه دسترسی دهد.
برای افزودن یک directive به فایل htaccess، باید آن را در یک خط جدید و در ابتدای فایل وارد کنید. به عنوان مثال، برای افزودن directive Allow به فایل htaccess، باید کد زیر را وارد کنید:
<files ".htaccess">
order allow,deny
deny from all
</files>
اقدامات امنیتی با استفاده از htaccess
با استفاده از فایل htaccess میتوان اقدامات امنیتی مختلفی را انجام داد. در ادامه، به بررسی برخی از این اقدامات خواهیم پرداخت.
جلوگیری از دسترسی مستقیم به فایلها
یکی از سادهترین راهها برای تقویت امنیت وبسایت وردپرس، جلوگیری از دسترسی مستقیم به فایلها است. برای انجام این کار، میتوانید از directive Deny استفاده کنید. به عنوان مثال، برای جلوگیری از دسترسی مستقیم به فایل wp-config.php، باید کد زیر را وارد کنید:
<files wp-config.php>
order allow,deny
deny from all
</files>
تنظیم محدودیتهای دسترسی به فایلها
علاوه بر جلوگیری از دسترسی مستقیم به فایلها، میتوانید محدودیتهای دسترسی به فایلها را نیز تنظیم کنید. برای انجام این کار، میتوانید از directive Order و directive Deny استفاده کنید. به عنوان مثال، برای تنظیم محدودیتهای دسترسی به فایل wp-admin، باید کد زیر را وارد کنید:
Order allow,deny
Deny from all
با استفاده از این کد، سرور وب ابتدا به درخواستهای دسترسی به فایل wp-admin اجازه میدهد. اگر هیچ کاربر مجاز درخواست دسترسی به این فایل را نداشته باشد، سرور وب درخواست را رد میکند.
جلوگیری از حملات XSS
حملات XSS یکی از رایجترین حملات هکری به وبسایتهای وردپرس هستند. این حملات با تزریق کد مخرب به سایت انجام میشوند. برای جلوگیری از حملات XSS، میتوانید از directive XSS Protection استفاده کنید. به عنوان مثال، برای فعال کردن محافظت XSS در وبسایت خود، باید کد زیر را وارد کنید:
Header set X-XSS-Protection "1; mode=block"
با استفاده از این کد، سرور وب کدهای XSS را در صفحات وب مسدود میکند.
جلوگیری از حملات SQL Injection
حملات SQL Injection یکی دیگر از رایجترین حملات هکری به وبسایتهای وردپرس هستند. این حملات با تزریق کد مخرب به پایگاه داده سایت انجام میشوند. برای جلوگیری از حملات SQL Injection، میتوانید از directive ModRewrite استفاده کنید. به عنوان مثال، برای فعال کردن محافظت SQL Injection در وبسایت خود، باید کد زیر را وارد کنید:
RewriteEngine On
RewriteCond %{QUERY_STRING} (;|'|%27|%) [NC]
RewriteRule .* - [F]
با استفاده از این کد، سرور وب درخواستهایی را که حاوی کدهای مخرب SQL هستند، مسدود میکند.
برای دیدن آموزش جامع امنیت سری به به آموزش امنیت وردپرس سر بزنید: