هات لینکینگ (Hotlinking) چیست؟
Hotlinking یا هات لینکینگ به عنوان عمل سرقت از پهنای باند شخصی با پیوند مستقیم به محتواهایی که در وب سایت آن ها (تصاویر، فیلم ها و غیره) وجود دارد، گفته می شود. به عنوان مثال، بگوییم صاحب وب سایت A میزبان تصویر خاصی در سرور خود است. صاحب وب سایت B آن تصویر را می بیند و تصمیم می گیرد که آن را در وب سایت خود نیز نشان دهد. اما، به جای بارگذاری تصویر و میزبانی از آن در سرور خود، مالک وب سایت B مستقیماً به دامنه وب سایت A پیوند می زند. بنابراین، به جای پیوند دادن به تصویر از طریق دامنه خود، آن ها از دامنه وب سایت A استفاده می کنند.
هات لینکینگ یک عمل بد است، زیرا:
- غیر اخلاقی و غیر قانونی است - مگر اینکه محتوا آزاد باشد تا از آن به عنوان منابع مشترک خلاق استفاده شود.
- ممکن است به شدت هزینه را افزایش دهد - باعث استفاده بیش از حد پهنای باند برای نگهدارنده تصویر اصلی میشود.
- سرور را سنگین می کند - دسترسی به تصویر در سایت دیگر، دسترسی شما را به منابع، محدودتر می کند.
- اگر چه سرقت محتوا کاری به نفسه اشتباه می باشد، اما هات لینکینگ نیز بر عملکرد سایت شما تاثیر میگذارد.
همانطور که قبلاً نیز اشاره شد، عدم وجود پهنای باند و تجربه کندی سایت، تنها تعداد کمی از پیامدهای احتمالی آن است. بدترین حالت این است که قبوض ماهیانه تان افزایش مییابد، یا سرویس میزبانی وب تان هزینههای جریمه را به شما میدهد. و اگر نمیتوانید آن را پرداخت کنید، دیگر نمیتوانید وب سایت خود و تمام داراییهای خود را نگه دارید. به همین دلیل است که جلوگیری از هات لینکینگ مهم است.
نحوه جلوگیری از هات لینکینگ
به عنوان یک کاربر وب سایت، همیشه باید سعی کنید از دارایی ها و محتواهای هات لینکینگ از وب سایت های دیگر جلوگیری کنید. انجام این کار به شما اطمینان می دهد که صاحب اصلی محتوا و دارایی، متحمل هزینه های غیر ضروری نخواهد شد. در زیر چند راه حل برای اجتناب از هات لینکینگ وجود دارد. - دارایی ها و محتواها را بر روی سرور خود قرار دهید. اگر تصویری از وب سایت دیگری پیدا کرده اید و مایل به استفاده از آن در وب سایت خود هستید، می توانید تصویر را مستقیماً در سرور خود بارگذاری کرده و از همانجا تحویل بگیرید. انجام این کار همچنین باعث افزایش سرعت تحویل دارایی خواهد شد زیرا مرورگر نیازی به انجام جستجوی اضافی DNS ندارد. - از یک میزبان شخص ثالث استفاده کنید. با استفاده از تصاویر به عنوان مثال، اگر تصویری را پیدا کرده اید که می خواهید به آن پیوند دهید اما سروری برای بارگذاری آن ندارید، می توانید از هاست شخص ثالث استفاده کنید؛ به عنوان مثال، یک سرویس میزبانی تصویر مانند imgur به شما امکان می دهد تا تصویر خود را بارگذاری کنید و به طور مستقیم در وب سایت یا هر مکان دیگر به آن پیوند دهید. در هر دو مورد، اطمینان حاصل کنید که صلاحیت استفاده از محتوای شخص دیگری را دارید.
محافظت از هات لینکینگ از طریق سرور مبدا
اگر تصویری از وب سایت شما در جایی دیگر ارجاع شده است، بنابراین از پهنای باند شما استفاده می کند، شما می توانید محافظت از هات لینکینگ را پیاده سازی کنید. این کار تنها اجازه دسترسی مراجعه کنندگان خاصی را به محتویات و داراییهای شما میدهد. بخش های زیر نحوه دستیابی به این محافظت را با Nginx و Apache نشان می دهد.
Nginx
خط اول در Nginx مشخص می کند که پسوند پرونده از اتصال سریع محافظت می شود. خط بعدی مشخص می کند که کدام وب سایت مجاز به پیوند دادن به این نوع پرونده ها هستند. بنابراین همیشه باید دامنه وب سایت شما و همچنین دامنه های دیگر که به دسترسی نیاز دارند، باشد. هر وب سایتی که در اسنیپت زیر تعریف نشده باشد، هنگام تلاش برای دسترسی به دارایی های شما، خطای 403 را دریافت می کند.
location ~ .(gif|png|jpe?g)$ {
valid_referers none blocked .yourwebsite.com;
if ($invalid_referer) {
return 403;
}
}
Apache
برای کاربران Apache می توان محافظت از هات لینکینگ را در پرونده .htaccess تعریف کرد. مثال زیر یک رویکرد متفاوت اتخاذ میکند که شما میتوانید به طور واضح تعریف کنید که کدام دامنه ها را دوست ندارید تا بتوانند به دارایی ها و محتویات وب سایت شما ارجاع کنند. بنابراین، تمام دامنه های موجود در این لیست دارای یک خطای 403 ممنوع خواهند بود در حالی که هر دامنه ای که در این لیست قرار ندارد، همانطور که انتظار می رود، می تواند به دارایی ها و محتویات دسترسی پیدا کند.
RewriteCond %{HTTP_REFERER} unwanteddomain.com [NC,OR]
RewriteCond %{HTTP_REFERER} unwanteddomain2.com
RewriteRule .* - [F]
علاوه بر این، می توانید با استفاده از یک ابزار محافظ هات لینک، یک فایل .htaccess را با تنظیمات محافظت از hotlink برای انتخاب مورد نظر خود تولید کنید. با استفاده از این ابزار، دامنه های مجاز را به سادگی تعریف کنید، از آنجا که می خواهید به مراجعان خالی اجازه دهید یا خیر، و پسوندهای پرونده ای که می خواهید از آنها محافظت کنید را تعریف کنید.
استفاده از CDN
یک شبکه تحویل محتوا (CDN) به وب سایت ها اجازه می دهد تا با استفاده از گروهی از سرورهای واقع در نقاط مختلف جهان، ترافیک خود را بهتر انجام دهند. استفاده از CDN باعث کاهش استفاده از پهنای باند، افزایش سرعت و بهبود امنیت می شود. هر CDN قوانین خاص خود را دارد، به این معنی که ممکن است از روش متفاوتی برای جلوگیری هات لینکینگ استفاده کند. به عنوان مثال، KeyCDN یک گزینه Zone Referrers دارد که سایر سایت ها از قرار دادن دارایی های شما در وب سایت های خود جلوگیری می کنند. پس از ورود به داشبورد KeyCDN، به منوی Zone Referrer بروید و سپس ارجاع کنندگان خود را تنظیم کنید. پس از آن، منطقه ای را انتخاب کنید تا مراجعه کننده Zone را انتخاب کنید و ذخیره کنید. در اصل، شما باید دامنه هایی را انتخاب کنید که بتوانند به دارایی های شما دسترسی پیدا کنند: URL منطقه شما (kxcdn.com)، نشانی اینترنتی مبدا شما (yourwebsite.com)، و نام مستعار منطقه شما (cdn.yourwebsite.com).
با استفاده از افزونه های وردپرس
اگر ترجیح می دهید افزونه نصب کنید، ممکن است All in One WP Security و Firewall را امتحان کنید. این یکی از بهترین پلاگین های امنیتی است که به جلوگیری از هات لینکینگ کمک می کند.
دسترسی به تنظیمات کنترل پنل
در آخر، می توانید از هات لینکینگ در تنظیمات صفحه کنترل پنل جلوگیری کنید. برای انجام این کار ابتدا باید به حساب میزبان خود وارد شوید. سپس می توانید به گزینه های Security بروید و گزینه Hotlink Protection را انتخاب کنید. پس از مشاهده صفحه تنظیمات، پیکربندی را انجام دهید و تنظیمات را ذخیره کنید.
حفاظت از هات لینکینگ و سئو
شما ممکن است فکر کنید که آیا حفاظت از هات لینکینگ بر رتبهبندی وب سایت یا سئو تاثیر میگذارد، ولی در واقع اینطور نمی باشد. وب سایت شما ممکن است حتی سریعتر بارگذاری شود چون پهنای باند آن توسط درخواستهای مکرر غیرقانونی از تصاویر پست شده مورد تاکید قرار نمیگیرد. و این در واقع ردهبندی شما را بهبود میبخشد. این موضوعات زمانی ظاهر میشوند که حفاظت هات لینکینگ به درستی اجرا نمیشود و دسترسی به تصاویر برای مهاجمان را مسدود میکند. این باعث میشود که تصاویر در نتایج جستجو یا حتی برای وب سایت نمایش داده نشوند. به همین دلیل است که ما توصیه میکنیم از یکی از شیوه های محافظتی هات لینکینگ استفاده کنید.
بررسی اینکه آیا سایت شما قربانی هاتلینکینگ شده است
قبل از آنکه نگران پیشگیری باشید، باید بدانید آیا اصلاً مشکلی وجود دارد یا نه. چند روش ساده برای تشخیص هاتلینکینگ:
- گزارش پهنای باند را در کنترل پنل هاست بررسی کنید. اگر مصرف bandwidth به طور ناگهانی جهش داشته باشد اما ترافیک سایت شما تغییری نکرده، احتمال هاتلینکینگ بالاست.
- در Google Search Console بخش «Referring domains» را مرور کنید و دامنههای ناشناس را شناسایی کنید.
- ابزارهای آنلاینی مثل TinEye برای تصاویر وجود دارند که میتوانید بفهمید تصویر شما در کجاها نمایش داده میشود.
- لاگهای Apache یا Nginx را با فیلتر Referer بررسی کنید تا دامنههای متخلف را پیدا کنید.
اگر هاتلینکینگ را تأیید کردید، ترکیب .htaccess برای Apache یا بلاک Nginx که در بالا توضیح دادیم سریعترین راهحل است. برای سایتهای وردپرسی، افزونه All in One WP Security در کمتر از پنج دقیقه این محافظت را فعال میکند.
هاتلینکینگ و تصاویر با لایسنس Creative Commons
یک سوء تفاهم رایج این است که تصاویر با لایسنس Creative Commons به معنای مجاز بودن هاتلینکینگ است. اما این درست نیست. لایسنس CC به شما اجازه استفاده از محتوا را میدهد، نه استفاده از پهنای باند صاحب آن. حتی اگر مالک تصویر اجازه استفاده داده باشد، شما باید تصویر را دانلود و روی سرور خودتان آپلود کنید.
ضمن اینکه حتی در تصاویر آزاد، هاتلینکینگ ممکن است مشکلساز باشد؛ چون اگر صاحب تصویر روزی آدرس فایل را عوض کند یا تصویر را حذف کند، در سایت شما یک مربع خالی یا آیکون شکسته نمایش داده میشود. این به تجربه کاربری سایت شما آسیب میزند.
ابزارهای تشخیص و مانیتورینگ هاتلینکینگ
اگر سایت بزرگی دارید و نگران هاتلینکینگ هستید، برخی ابزارها به صورت مداوم این موضوع را رصد میکنند:
- Google Search Console: بخش «Links to your site» را بررسی کنید. هر دامنهای که به فایلهای مستقیم شما (نه صفحات) لینک میدهد مظنون است.
- Cloudflare Analytics: اگر از Cloudflare استفاده میکنید، گزارش bandwidth مصرفی به تفکیک نوع درخواست ارائه میدهد.
- AWStats یا Webalizer: این ابزارهای آنالیز لاگ سرور، referer های خارجی را لیست میکنند.
بهترین راهکار ترکیبی است: یک قانون .htaccess برای block کردن هاتلینکهای ناشناس، همراه با قرار دادن دامنههای مجاز در whitelist، و یک CDN برای مدیریت متمرکز ترافیک تصاویر.
نتیجه گیری
هات لینکینگ برای بسیاری از وب سایت ها یک مشکل واقعی است، به خصوص اگر سایتهایی که هات لینکینگ را انجام میدهند، از جمله اسناد مناسب نیستند. اگر این اتفاق برای شما رخ دهد، نه تنها عملکرد سایت شما آسیب خواهد دید، بلکه بازدیدکنندگان بالقوه را از دست می دهید در حالی که دیگران از محتوای شما سود می برند.
سوالات متداول
هاتلینکینگ چه تفاوتی با سرقت محتوا دارد؟
در سرقت محتوا، فرد محتوا را کپی و روی سرور خود آپلود میکند. در هاتلینکینگ اما هیچ کپیای صورت نمیگیرد؛ فایل روی سرور شما میماند و تنها آدرس مستقیم آن در سایت دیگری استفاده میشود. این یعنی هر بار که بازدیدکنندهای از سایت متخلف بازدید میکند، پهنای باند شما مصرف میشود.
آیا جلوگیری از هاتلینکینگ باعث میشود تصاویر در گوگل ایمیج ایندکس نشوند؟
اگر تنظیمات را درست انجام دهید، خیر. شما باید دامنههایی مانند google.com و googlebot.com را در لیست مجاز قرار دهید تا رباتهای گوگل بتوانند به تصاویر دسترسی داشته باشند. اگر این کار را نکنید، ممکن است تصاویر از نتایج جستجو حذف شوند.
آیا استفاده از CDN به تنهایی برای جلوگیری از هاتلینکینگ کافی است؟
CDN به خودی خود جلوی هاتلینکینگ را نمیگیرد؛ باید تنظیمات Hotlink Protection در پنل CDN را فعال کنید. مزیت استفاده از CDN این است که قوانین Referrer را میتوانید به صورت متمرکز برای تمام فایلها مدیریت کنید، بدون اینکه نیازی به دستکاری هر سرور جداگانه باشد.