অ্যাপাচি বিপরীত প্রক্সি অ্যাক্সেস নিয়ন্ত্রণ


8

আমার কাছে অ্যাপাচি বিপরীত প্রক্সি রয়েছে যা বর্তমানে কয়েকটি সাইটের জন্য বিপরীত প্রক্সি রয়েছে। তবে আমি এখন একটি নতুন সাইট যুক্ত করতে যাচ্ছি (যাকে এটিকে নিউজসাইট.কম বলুন) কেবলমাত্র নির্দিষ্ট আইপি দ্বারা অ্যাক্সেসযোগ্য হওয়া উচিত। বিপরীত প্রক্সি হিসাবে এটি কি আপাচি ব্যবহারযোগ্য?

প্রক্সি করা হচ্ছে এমন সাইটগুলির জন্য আমি ভার্চুয়ালহস্টগুলি ব্যবহার করি। আমি অবস্থানের বিবৃতিগুলির সাথে সম্মিলিতভাবে মঞ্জুরি / অস্বীকারের নির্দেশাবলী ব্যবহার করার চেষ্টা করেছি। উদাহরণ স্বরূপ:

<VirtualHost *:80>  
Servername newsite.com   
<Location http://newsite.com>
Order Deny,Allow
Deny from all
Allow from x.x.x.x
</Location>
<IfModule rewrite_module>
 RewriteRule ^/$ http://newsite.internal.com [proxy]
</IfModule>

আমি উদাহরণস্বরূপ প্রক্সি নির্দেশাবলীর জন্য সাইটের জন্য বিশেষভাবে অনুমতি / অস্বীকার করার চেষ্টাও করেছি

<Proxy http://newsite.com/>
  Order deny,allow
  Deny from all
  Allow from x.x.x.x
</Proxy>

আমার কাছে এখনও বাকী প্রক্সি সাইটের জন্য এই সংজ্ঞা রয়েছে।

<Proxy *>
  Order deny,allow
  Allow from all
</Proxy>

আমি যাই করি না কেন এটি যে কোনও জায়গা থেকে অ্যাক্সেসযোগ্য বলে মনে হয়। এটি অন্যান্য সমস্ত প্রক্সি সাইটের জন্য সংজ্ঞা বলেই। এমন কোনও আদেশ রয়েছে যাতে এটি প্রক্সি নির্দেশিকাগুলি প্রয়োগ করে? আমার কাছে নিউজসাইটটি ছিল * একের আগে এবং পরে এবং ভার্চুয়ালহোস্ট বিবৃতিতেও।

উত্তর:


2

আপনি ব্যবহার করছেন servername এবং ServerAlias মেলানোর জন্য newsite.com।

আপনার বিপরীত প্রক্সি কনফিগারেশনের নির্দেশনাটি ব্যবহার করা উচিত নয় :

<Proxy whatever>

আপনার ব্যবহার করা উচিত:

অ্যাপাচি ২.২ এর জন্য:

<Location />
Order Deny,Allow
Deny from all
Allow from x.x.x.x
</Location>

অ্যাপাচি ২.৪ এর জন্য:

<Location />
   <RequireAny>
       Require             ip x.x.x.x/255.255.255.0
       Require ...
   </RequireAny>
</Location>

আউথজ করার পরে আপনার কেবলমাত্র একটি প্রক্সিপাস এবং প্রক্সিপাস রিভার্স করা উচিত (302,301 পুনর্নির্দেশের জন্য):

ProxyPass /  http://newsite.com/
ProxyPassReverse /  http://newsite.com/

মনে রাখবেন যে এর সাথে আপনার নিজের / ইত্যাদি / হোস্টগুলিতে নিউজসাইট ডট কম যুক্ত করা দরকার বা ডিএনএসের ইউআরএলে হোস্টটি সমাধান করা উচিত। আপনি কেবল আইপি ঠিকানা ব্যবহার করতে পারেন তবে আপনাকে সেই "HTTP সার্ভার" নির্দেশ দিতে হবে যা "হোস্ট:" শিরোনামটি সংরক্ষণ করে:

ProxyPreserveHost On

1

আজ একই সমস্যা ছিল; ওয়াইল্ডকার্ডের ম্যাচটি কীভাবে হয় তার সাথে সম্পর্কিত ছিল, আমি মনে করি এটি সম্পূর্ণ URL টি ব্যবহার করে: আমার ক্ষেত্রে আমার ছিল

<Proxy /jira*>
  Order allow,deny
  Deny from all
</Proxy>
ProxyPass /jira https://myhost.com

এবং এটি কার্যকর হয়নি। সাইটটি যে কোনও জায়গা থেকে অ্যাক্সেসযোগ্য ছিল। আমি কয়েকটি জিনিস চেষ্টা করে দেখেছি এবং একটি কার্যকরী সংস্করণ পেয়েছি:

<Proxy *jira*>

সুতরাং আপনার ক্ষেত্রে চেষ্টা করুন

<Proxy http://newsite.com*>

নিশ্চিত হোন যে অ্যাপাচি সেই url এর সাথে মেলে।


0
<VirtualHost *:80>
    Servername newsite.com

    <Proxy *>
            Order Deny,Allow
            Deny from all
            Allow from x.x.x.x
    </Proxy>

    ProxyPass /  http://newsite.com/
    ProxyPassReverse /  http://newsite.com/

</VirtualHost>

1
এটি কী করে এবং এটি কেন এটি করে?
sysadmin1138

এটি একটি বিপরীত প্রক্সি যা কেবলমাত্র নির্দিষ্ট আইপি দ্বারা অ্যাক্সেসযোগ্য ( এক্সএক্সএক্সএক্সএক্স থেকে মঞ্জুরিতে 'x' প্রতিস্থাপনের মাধ্যমে সংজ্ঞায়িত করা )।
dr0i
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.