بایگانی برچسب: s

Reverse Proxy و افزایش امنیت و سرعت وب سرور

Reverse Proxy و افزایش امنیت و سرعت وب سرور

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

مثلا ما با قرار دادن یک فایروال UTM  در مقابل یک وب سرور ، باعث میشویم که هر پکت از سلسله کنترل هائی عبوذ کند ، باز شود و محتویاتش و منبع و مقصدش و … بررسی و بعد تحویل وب سرور شود و در مورد پاسخ نیز به همین شکل ، خب این پروسه ها  همه در بهترین حالت و با استفاده از بهترین سخت افزار ها هم ممکن است باعث کاهش سرعت شود که البته طبیعی ست .

یکی از روش های افزایش امنیت که باعث Accelerate شدن سرویس نیز میشود ، استفاده از Reverse Proxy است .

مکانیسم کار با این شکل است ، که برای مثال یک Content Engine یا در سر راه وب سرور یا به صورت موازی از طریق WCCP قرار گرفته و درخواست های را از کلاینت دریافت و مستقیما با وب سرور چلنج میکند و پاسخ را اگر در کش موجود نباشد و یا TTL آن منقضی شده باشد ، کش کرده و به کلاینت تحویل میدهد .

مزایای این روش ، جلوگیری زیادی در حملات DOS ، افزایش سرعت پاسخگویی ، کاهش لود سرور به شکل چشم گیر به علت کم شدن تعداد Query ها و Request ها و همچنین اگر در کنار این روش از Server Publishing استفاده شود ، باعث پنهان شدن IP اصلی سرور میشود .

در شماتیک زیر روش استفاده از WCCP و یک Cisco Content Engine 560 وCisco Router را ملاحظه میفرمائید .

reverse proxy

ابتدا کانفیگ روتر :

ip wccp 99

interface Ethernet0/0
description Interface to the Internet
ip address 172.17.63.194 255.255.255.192
no ip redirects

interface Ethernet0/1
ip address 10.0.0.1 255.255.255.0

interface Ethernet1/0
ip address 10.1.0.1 255.255.255.0
ip wccp 99 redirect out

ip classless
ip route 0.0.0.0 0.0.0.0 172.17.63.193

 

 کانفیگ کانتنت انجین :

interface ethernet 0
ip address 10.0.0.2 255.255.255.0
ip broadcast-address 10.0.0.255

wccp router-list 1 10.0.0.1
wccp reverse-proxy router-list-num 1
wccp version 2

بدین ترتیب درخواست های وب ابتدا به کانتنت انجین و پس از کش شدن از وب سرور از کانتنت انجین به سمت کلاینت ارسال میشود .

البته روش های قوی تری نیز وجود دارد ، مثل پابلیشینگ وب سرور توسط ASA و سپس Reverse Proxy نمودن .

reverse proxy and server publishing

البته پلت فرم های نرم افزاری هم وجود دارند ، نظیر وب سرور Nginx  که خودش Built in دارای Reverse Proxy نیز میباشد که باعث افزایش کارایی و کم شدن لود سرور به علت کم شدن تعداد Query های http و SQL است .

بعضی هم اقدام به سری کردن Squid  با وب سرور ، با دو سرور مجزا و یا روی همان سرور کرده ، که زیاد کار تمیزی نیست .

در کل تمامی این روش ها در صورتی که در جای مناسب و به شکل مناسب و با بررسی محیط مورد استفاده و پیاده سازی دقیق و صیحیح انجام پذیرد ، باعث افزایش امنیت و کارایی و الا باعث دردسر و باگ در سیستم میگردد ، این مقاله صرفا جهت آشنایی کلی با این مفاهیم و Solution هاست و الا خیلی دقیق تر باید از این ابزار ها ساتفاده نمود .
وفقک الله
Aka Networks