alirezach

۹ هک و ترفند کاربردی htaccess برای وردپرس

2 پست در این موضوع قرار دارد

اکثر کاربران

وردپرس .htaccess را برای تغییر و تعمیر پیوند یکتا می‌شناسند. اما باید بدانید که قابلیت‌های زیادی دارد. فایل .htaccess تنظیمات قدرتمندی برای بالا بردن امنیت و کارایی سایت شما دارد. در این نوشته به سراغ ۹ ترفند کاربردی .htaccess برای وردپرس رفته ایم که هر کدام را می‌توانید برای سایت تان استفاده کنید.

get-most-out-of-htaccess.jpg

شروع کنید

قبل از هر کاری از فایل .htaccess خود بکاپ بگیرید. برای اینکار میتوانید مستقیم به سرور سایتتان وارد شوید و یا با نرم افزارهای مدیریت FTP نظیر Filezilla و Cute FTP به سرور وصل شده و فایل .htaccess دانلود کنید. در صورتی که سایت تان درست کار نکرد، فایل تان پشتیبان تان را آپلود کنید.

اگر فایل .htaccess را ندیدید، از تنظیمات سایت یا FTP تیک مشاهده فایل‌های مخفی (Show Hidden Files) را بگذارید.

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

.htaccess

۱- بخش مدیریت وردپرس تان را ایمن کنید.

شما می‌توانید با استفاده از تنظیماتی ساده در .htaccess بخش مدیریت

وردپرس تان را برای IP‌های خاصی محدود کنید. با این کار اجازه دسترسی به هکرها نمی‌دهید. کار سختی ندارید. کد زیر را به فایل .htaccess اضافه کنید؛

AuthUserFile /dev/null
AuthGroupFile /dev/null
AuthName "WordPress Admin Access Control"
AuthType Basic
<LIMIT GET>
order deny,allow
deny from all
# whitelist AlirezaCH's IP address
allow from xx.xx.xx.xxx
# whitelist alireza's IP address
allow from xx.xx.xx.xxx
# whitelist Esmaeil's IP address
allow from xx.xx.xx.xxx
# whitelist Works's IP address
allow from xx.xx.xx.xxx
# whitelist Works2 IP address
allow from xx.xx.xx.xxx
</LIMIT>

به جای xx.xx.xx.xxx آی پی خودتان را وارد کنید. و در صورتی که از چندین آی پی استفاده می‌کنید، مثل کدهای بالا از آن استفاده کنید.

password-protect-admin.png

۲- بخش مدیریت پسورد را با رمز ایمن کنید.

برای شروع باید .htpasswds بسازید. با استفاده از این

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

فایل .htpasswds را در هر شاخه ای که مایلید پسورد بگذارید. مثلاً شاخه اصلی /public_html/ و یا /wp-admin/ آپلود کنید.

home/user/.htpasswds/public_html/wp-admin/passwd/

الان نیاز به ساخت .htaccess دارید، کد زیر را به آن اضافه کنید؛

<span lang="fa">AuthName "Admins Only"
AuthUserFile /home/yourdirectory/.htpasswds/public_html/wp-admin/passwd
AuthGroupFile /dev/null
AuthType basic
require user putyourusernamehere
<Files admin-ajax.php>
Order allow,deny
Allow from all
Satisfy any
</Files></span>

نکته: فراموش نکنید که آدرس شاخه ای .htpasswds را آپلود کردید را جلوی AuthUserFile وارد کنید و نام کاربری تون هم خط پنجم اضافه کنید.

فایل .htaccess را در شاخه wp-admin آپلود کنید. الان شاخه admin

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

directory-browsing.png

۳- غیرفعال کردن مشاهده زیرشاخه‌ها (دایرکتوری)

یکی از پیشنهادات مهم امنیتی

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

برای فعال کردن این گزینه، کد زیر را به فایل .htaccess اضافه کنید.

Options -Indexes

۴-اجرای PHP را در بعضی از شاخه‌ها غیرفعال کنید.

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

وردپرس مخفی می‌شوند و در شاخه‌هایی نظیر /wp-includes/ و /wp-content/uploads/ جای می‌گیرند. ساده ترین راه حل برای جلوگیری از اجرا بک دورها، غیرفعال کردن PHP در بعضی از شاخه‌ها هست.

برای حل این مشکل فایل .htaccess بسازید، کد زیر را به آن اضافه کنید؛

<Files *.php>
deny from all
</Files>

تمام شد. فایل ساخته شده را در شاخه‌های /wp-includes/ و /wp-content/uploads/ آپلود کنید.

۵- از فایل wp-config.php حفاظت کنید.

شاید مهم ترین فایل در شاخه اصلی

وردپرس همین wp-config.php باشد. تمامی‌اطلاعات مربوط به دیتابیس و نحوه اتصال به آن در آن در این فایل ذخیره شده است. برای جلوگیری از دسترسی به این فایل، کد زیر را به .htaccess اضافه کنید؛

<files wp-config.php>
order allow,deny
deny from all
</files>

۶- تنظیمات انتقال ۳۰۱ صفحات در .htaccess

یکی از کارهای مورد علاقه سئو که می‌توانید انجام بدهید، همین انتقال ۳۰۱ هست که کاربران را به صفحه ای دیگر منتقل می‌کند. البته برای این کار افزونه‌هایی نیز هست که در روزهای آینده آن را معرفی می‌کنیم.

اما اینجا راه حلی سریع را برای شما آماده کرده ایم. کدهای زیر را با تغییراتی که دوست دارید به فایل .htaccess اضافه کنید؛

Redirect 301 /oldurl/ http://www.example.com/newurl
Redirect 301 /category/television/ http://www.example.com/category/tv/

۷- آی پی‌های مشکوک را بلوکه کنید.

آیا درخواست‌های غیرعادی از آی پی‌های خاصی دارید؟ اگر می‌خواهید آنها را بلوک کنید؟ کد زیر را به .htaccess اضافه کنید؛


<Limit GET POST>
order allow,deny
deny from xxx.xxx.xx.x
allow from all
</Limit>

آی پی موردنظرتان را به جای xx.xx.xx.xx بنویسید.

۸- دزدیدن تصاویر (Image Hotlinking) را غیرفعال کنید.

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


#disable hotlinking of images with forbidden or custom image option
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?1freeman.net [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?google.com [NC]
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?feeds2.feedburner.com/1freeman [NC]
RewriteRule \.(jpg|jpeg|png|gif)$ – [NC,F,L]

۹- از .htaccess در برابر دسترسی‌های غیرمجاز حفاظت کنید.

تا الان توانایی‌های .htaccess را دیدید. با این فایل شما می‌توانید کنترل کاملی بر سرور خود داشته باشید. و ایمن کردن آن از دسترسی دسترسی‌های غیرمجاز و هکرها در اولویت می‌باشد. کار سختی ندارید. کد ساده زیر را به .htaccess اضافه کنید.

<files ~ "^.*\.([Hh][Tt][Aa])">
order allow,deny
deny from all
satisfy all
</files>

امیدوارم که این نوشته به کارتون بیاد. این نوشته

ترجمه ای آزاد بود از اینجا. اگر نظرتون رو جلب کرد اینو با دوستان خود در شبکه‌های اجتماعی به اشتراک بگذارید.

0

به اشتراک گذاری این پست


لینک به پست

چون همه این ها در انجمن موجود هست بایگانی میشود

مثال:

و....

0

به اشتراک گذاری این پست


لینک به پست
مهمان
این موضوع برای عدم ارسال قفل گردیده است.

  • مطالب مشابه

    • توسط webdeveloper98
      سلام
      دوستان خوشحال می شم نظرتون رو درباره امنیت اطلاعات و امنیت وردپرس بدونم
      چقدر به بحث امنیت وردپرس و سایت های وردپرسی پرداخته می شه ؟
      چقدر به نظرتون اهمیت داره ؟
      اصلا بابت امنیت سایت های وردپرسی باید هزینه ای کرد یا خیر؟
      راه هایی که برای امنیت وردپرس و کلا سایت ها و سرورها که انجام میشه رو در چه حد و سطحی می دونید و می بینید ؟
       
      این سوالات ذهنم رو درگیر کرده و تمایل داشتم درموردشون جوابایی رو بشنوم
      ممنونم
    • توسط proline
      گواهی SSL چیست؟
      گواهینامه SSL پروتکلی امنیتی است که سهم بسیار زیادی در امنیت یک سایت ایفا می‌کند. در حال حاضر این گواهینامه یکی از الزامات و اقدامات اولیه برای بررسی ایمنی یک وب‌سایت محسوب می‌شود. جستجوگرها و مرورگرهای اینترنتی هم، برای ایجاد ارتباط میان یک سایت و کاربر، به وجود گواهی SSL در سایت مقصد توجه زیادی داشته و در صورت نبود گواهی SSL به کاربر هنگام اتصال هشدار می‌دهند.
      گواهی SSL چه کاربردی دارد؟
      SSL یک استاندارد کدگذاری برای تبادل اطلاعات میان کاربران اینترنت و سرور وب است که این کدگذاری‌ها موجب مینیمایز شدن شنود و سوءاستفاده از اطلاعات کاربران نهایی می‌شود.
      شرکتی که مسئولیت برقراری امنیت بر پایه گواهینامه SSl را بر عهده گرفته CA نام دارد. CA یا مرکز صدور گواهینامه امنیتی، وظیفه خود را تأیید هویت کسانی می‌دانند که اقدام به راه‌اندازی یک وب‌سایت اینترنتی می‌نمایند.
      گواهی SSL و اعتمادسازی
      طبق تحقیقات یک موسسه بین‌المللی، کاربران اینترنت نسبت به مسئله امنیت اطلاعات بسیار حساس شده‌اند و بیش از 70 درصد کاربران دغدغه حریم شخصی و جلوگیری از افشاء اطلاعاتشان را دارند. بیش از 30 درصد کاربران پیش از خرید و انجام تراکنش در یک سایت و یا حتی ورود اطلاعات، نوار سبز رنگ SSL را چک می‌کنند تا فرآیند خرید و عضویت ایمنی را تجربه کنند.
      زمانی که کاربر جست‌وجویی در گوگل انجام می‌دهد، لینک‌هایی توسط این جستجوگر به او نمایش داده می‌شود. کاربر با کلیک بر روی هر لینک به یک سایت وارد می‌شود. درصورتی‌که سایت مقصد پیش‌ازاین گواهی SSL را فعال نکرده باشد توسط مرورگر پیام اخطاری مبنی بر ایمن نبودن سایت، نمایش داده می‌شود که ازنظر روانی هم، بسیار برای سایت مضر است. بعید نیست که کاربر با دیدن این پیغام از ورود به سایت، خودداری کند و یا نرم‌افزارهای امنیتی که بر سیستم کاربر نصب شده‌اند مانع ورود وی به سایت شوند و به همین راحتی یک سایت، ورودی‌های خود را از دست می‌دهد.
      نکته دیگر این است که مسئله امنیت روزبه‌روز برای کاربران و سرویس‌های خدمت دهنده اینترنتی مهم‌تر می‌شود. دیری نخواهد پایید که استاندارد SSL، به یک گواهینامه اجباری برای یک سایت اینترنتی تبدیل خواهد شد و شرکت‌هایی که برای دریافت این گواهینامه دیر اقدام کرده‌اند، دچار مشکل می‌شوند.
      مقاله مرتبط:امنیت جست‌وجو در اینترنت | اسکن فایل‌ها با کمک یک آنتی ویروس آنلاین
      انواع گواهینامه‌های SSL
      اعتبارسنجی دامنه (Domain Validation)
      اعتبار سنجی سازمانی (Organization Validation)
      EV) Extended Validation)
      Wildcard
      تفاوت SSL با TLS چیست؟
      گواهی SSL دائماً در حال بروز شدن و رفع نقص و بهبود است. هر نسخه ویرایش شده با یک شماره ورژن منتشر می‌شود. به‌طور مثال SSL V2.0 و یا V3.0. پس از ورژن 3 به‌جای استفاده از عنوان SSL V4.0 از نام TLS V1.0 استفاده شد اما همچنان این گواهینامه را با عنوان SSL می‌شناسند.
       
      مطالعه موارد بیشتر در حوزه امنیت در سایت ما:
      https://www.proline-iran.com
    • توسط Worldword
      سلام. وقت بخیر
      اگر خطایی در کدهای css وجود داشته باشه ، میتونه از نظر امنیتی یک سایت رو مورد تهدید قرار  بده؟
      اگر افزونه ای از نظر امنیتی مشکل داشته باشه ، اما غیرفعال باشه ، باز هم خطری وجود داره؟
    • توسط unipaper
      سلام 
      اول از دوستان خواهش میکنم تایپک هایی که پاسخ داده نشده رو پیگیری کنن حداقل اگر کسی راهکاری سراغ نداره بگن من یکی از تایپک های مشکلات سئو منتظر موندم چندین روز اما حل نشد 
      یه مورد مهمی هست برام میخواستم از دوستان متخصص بپرسم که ممکنه این تایپک رو ادامه بدید تا یه استاندارد از کد htaccess برای وردپرس تهیه کنیم 
      من کد مورد نظر را دارم داخل سایتم اما با توجه به راهنمایی که توسایت های خارجی خوندم برخی تعاریف استاندارد سازی برای انتقال http به https  به صورت کامل 301 در برخی سایت ها گفته نشده 
      یه سوال داشتم آیا در فایل htaccess اگر افزونه w3total  نصب باشه  و از طرفی کد انتقال 301 http  به https  رو هم قرار بدیم و بازهم کد استاندارد خود وردپرس داخل فایل باشه آیا مجازیم از این خط کد 
      RewriteEngine On چند بار استفاده کنیم یا باید تمامی فایل رو بررسی کنیم اگه این تکه خط کد وجود داشت حذف بشه چرا ؟
    • توسط comp90
      سلام و عرض ادب:
      بنده قصد دارم تا کپچای گوگل را در صفحاتی چون ورود و ثبت نام و صفحات دلخواه دیگر فعال کنم.
      برای امتحان افزونه Advanced noCaptcha را از منبع وردپرس دانلود و نصب نمودم، حتی تنظیمات هم به درستی انجام شد اما وقتی تیک نمایش در صفحه عضویت را می زنم، کپچا در قالب نمایش داده نمی شود.
       
      ممنون میشم راهنمایی کنید