আইআইএস 7.5 এবং 8.0 সহ ব্লক বটগুলি


11

আমি আইআইএস দিয়ে একটি বট ব্লক করতে চাই। অ্যাপাচি দিয়ে আপনি এখানে বর্ণিত হিসাবে আপনার .htaccess ফাইলটিতে একটি কমান্ড যুক্ত করতে পারেন । আইআইএস 7.5 দিয়ে আমি কীভাবে এটি সম্পাদন করব?

হালনাগাদ

নীচে উত্তর দেওয়ার পাশাপাশি, এই প্রশ্নটি পোস্ট করার পরে আমি মোট পন্থা আবিষ্কার করেছি:

  1. ইউআরএল স্ক্যান বিকল্পটি গৃহীত উত্তরের তালিকাভুক্ত।
  2. একটি অনুরোধ ফিল্টারিং নিয়ম সংজ্ঞায়িত করুন (নীচে উদাহরণস্বরূপ)
  3. একটি ইউআরএল পুনর্লিখনের নিয়ম সংজ্ঞায়িত করুন (নীচের উদাহরণে)

ফিল্টার বিধি অনুরোধ

 <system.webServer>
    <security>
      <requestFiltering>
        <filteringRules>
          <filteringRule name="BlockSearchEngines" scanUrl="false" scanQueryString="false">
            <scanHeaders>
              <clear />
              <add requestHeader="User-Agent" />
            </scanHeaders>
            <appliesTo>
              <clear />
            </appliesTo>
            <denyStrings>
              <clear />
              <add string="YandexBot" />
            </denyStrings>
          </filteringRule>
        </filteringRules>
      </requestFiltering>
    </security>
    [...]
 </system.webServer>

ইউআরএল পুনর্লিখনের নিয়ম

<rule name="RequestBlockingRule1" patternSyntax="Wildcard" stopProcessing="true">
                    <match url="*" />
                    <conditions>
                        <add input="{HTTP_USER_AGENT}" pattern="YandexBot" />
                    </conditions>
                    <action type="CustomResponse" statusCode="403" statusReason="Forbidden: Access is denied." statusDescription="Get Lost." />
                </rule>

আমার শেষ প্রকল্পের জন্য আমি বিকল্প 2 দিয়ে যাওয়া শেষ করেছি কারণ এটি সুরক্ষা কেন্দ্রিক এবং আইআইএস 7 এর মধ্যে নির্মিত ইন্টিগ্রেটেড ইউআরএল স্ক্যানের উপর ভিত্তি করে।

উত্তর:


4

সাধারণত আপনি রোবটস টেক্সট ব্যবহার করেন। এটি সমস্ত ভাল আচরণ করা বটগুলিতে কাজ করবে।

যে বটগুলি ভাল আচরণ করা হয় না তাদের জন্য প্রায়শই আপনি খুব কম করতে পারেন। আপনি আপনার ফায়ারওয়াল বা ওয়েবসার্ভারে সংযোগ গণনা বা ব্যান্ডউইদথকে সীমাবদ্ধ করতে পারেন তবে প্রধান বটগুলি সাধারণত একাধিক আইপি ঠিকানা ব্যবহার করবে। ব্যবহারকারী-এজেন্ট স্ট্রিংয়ের উপর ভিত্তি করে সীমাবদ্ধ করা সাধারণত ভাল ধারণা নয়, কারণ এটি বটকে বোকা বানানোর পক্ষে তুচ্ছ, এবং যে বটগুলি যা রোবটস.এসটিএক্সটির যত্ন নেয় না সেগুলিও ইউজারেজেন্ট স্ট্রিংগুলিকে ফাঁকি দেওয়ার প্রবণতা রাখে। এটি নির্দিষ্ট ক্ষেত্রে কাজ করে যখন বট একটি সঠিক ব্যবহারকারী এজেন্ট প্রেরণ করে, তবে রোবটস টেক্সট মানায় না।

সম্পাদনা করুন: আপনি যদি আপনার ফায়ারওয়াল বা অনুরূপটিতে আবার চাপ দেওয়ার পরিবর্তে ব্যবহারকারীর উপর ভিত্তি করে অবরুদ্ধ করতে চান তবে আমি মনে করি সবচেয়ে সহজ উপায় ইউআরএলস্ক্যান ব্যবহার করা। আপনি এমন একটি নিয়ম লিখেছেন যা দেখতে এরকম কিছু দেখাচ্ছে:

[Options]
 RuleList=DenyYandex

[DenyYandex]
 DenyDataSection=Agents
 ScanHeaders=User-Agent

[Agents]
 Yandex

2
আমি ইয়ানডেক্সকে অবরুদ্ধ করার চেষ্টা করছি, যা রোবটস.টেক্সটকে উপেক্ষা করে, তবে ব্যবহারকারী এজেন্টে ধারাবাহিকভাবে ইয়ানডেক্স থাকে।
জোশ

11

আমি জানি এটি একটি পুরানো প্রশ্ন, তবে আইআইএস 7.5-এ আপনি যদি ফিল্টার রিকোয়েস্ট ব্যবহার করেন তবে আপনি ব্যবহারকারী এজেন্ট দ্বারা অস্বীকার করতে পারবেন।

আইআইএস-এ, আপনি যে ফিল্টারটি প্রয়োগ করতে চান সেই ওয়েবসাইটে যান এবং তারপরে ডান ফলকে, অনুরোধ ফিল্টারিং আইকনটি ক্লিক করুন । (আপনাকে সার্ভার ম্যানেজারের মাধ্যমে এই বৈশিষ্ট্যটি সক্ষম করতে হতে পারে)।

নিয়ম ট্যাবটি ক্লিক করুন এবং তারপরে ডানদিকের তালিকার সাথে "ফিল্টারিং বিধি যুক্ত করুন" নির্বাচন করুন

এটির একটি নাম দিন এবং তারপরে স্ক্যান শিরোনাম বিভাগে "ব্যবহারকারী-এজেন্ট" রাখুন।

আপনি যদি কোন নির্দিষ্ট ফাইল টাইপ (গুলি) তে ব্লক যোগ করতে পারেন এতে প্রয়োগ হয় , অথবা আপনি এটি ফাঁকা এটা সব ধরনের ফাইল প্রযোজ্য করতে চলে যাবে।

ইন স্ট্রিংস অস্বীকার , ইউজার এজেন্ট স্ট্রিং আপনার অবরোধ করতে চাওয়া সব লিখুন। এই প্রশ্নের ক্ষেত্রে, আপনি এখানে "ইয়ানডেক্স" রাখবেন।

আমি ব্যবহারকারী এজেন্ট স্যুইচার এক্সটেনশন ব্যবহার করে ক্রোমে এই পরিবর্তনগুলি নিশ্চিত করেছি ।


6

ক্রলার যে Robots.txt সম্মান না, যদি আপনি তাদের ব্যবহারকারী এজেন্ট উপর ভিত্তি করে অবরোধ করার সার্ভারে URL টি লেখা ব্যবহার করতে পারেন, দেখুন: http://chrisfulstow.com/using-the-iis-7url-rewrite-module-to- ব্লক-ক্রলার /

মূল সার্ভার জুড়ে যে কোনও সাইটকে ইনডেক্স করা থেকে মূল ওয়েব ক্রলারগুলি - গুগল বিং এবং ইয়াহু - কে ব্লক করার একটি সহজ উপায় এখানে। এটি যদি আপনার সমস্ত বিটা বিল্ডগুলি জনসাধারণের মুখোমুখি সার্ভারে ঠেলা দেয় তবে এটি সত্যিই কার্যকর, তবে অনুসন্ধান ইঞ্জিনগুলির দ্বারা সেগুলি এখনও সূচিযুক্ত করতে চান না।

  1. আইআইএস ইউআরএল পুনর্লিখন মডিউল ইনস্টল করুন।

  2. সার্ভার স্তরে, একটি অনুরোধ অবরুদ্ধ করার নিয়ম যুক্ত করুন। রেজেক্সের সাথে মেলে ব্যবহারকারী-এজেন্ট শিরোনামগুলি ব্লক করুন: googlebot | msnbot | স্লুরপ।

অথবা, কেবলমাত্র এই নিয়মটিকে "সি: \ উইন্ডোজ \ সিস্টেম 32 \ ইনটসরভ \ কনফিগারেশন \ অ্যাপ্লিকেশনহোস্টকনফিগ" এ আটকান

<system.webServer>
   <rewrite>
      <globalRules>
         <rule name="RequestBlockingRule1" stopProcessing="true">
            <match url=".*" />
            <conditions>
               <add input="{HTTP_USER_AGENT}" pattern="googlebot|msnbot|slurp" />
            </conditions>
            <action type="CustomResponse" statusCode="403"
               statusReason="Forbidden: Access is denied."
               statusDescription="You do not have permission to view this page." />
         </rule>
      </globalRules>
   </rewrite>
</system.webServer>

এটি সার্ভারে প্রকাশিত কোনও সাইটকে সূচীকরণ থেকে গুগল, বিং এবং ইয়াহু কে ব্লক করবে। এটি পরীক্ষা করার জন্য, ফায়ারফক্স ব্যবহারকারী এজেন্ট সুইচার চেষ্টা করুন ।

আরও তথ্যের জন্য: http://www.iis.net/download/URL পুনর্লিখন


আমি নিশ্চিত নই যে পুনরায় লেখার নিয়মাবলী যুক্ত করতে হোস্টকনফিগ অ্যাপ্লিকেশনটি আপডেট করার প্রস্তাব দেওয়া ভাল ধারণা - তারা কি কেবল ওয়েবকনফাইগে যাওয়া উচিত নয়?
ব্ল্যাকোমেন

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.