سرورهای پروکسی نقش مهمی در زیرساخت های ابر ایفا می کنند. آنها نوع پروکسی نیستند که اکثر مردم به آن فکر می کنند. آنها مشتری را از سرور پنهان نمی کنند ، بلکه در سرورهای اینترنتی ایستاده اند. این همان چیزی است که "پروکسی معکوس" نامیده می شود.

یک مجموعه SaaS معمولاً بیش از یک برنامه را در اختیار کاربران خود قرار می دهد. غالباً داشتن سرورهای تخصصی منطقی است که هرکدام یک یا چند برنامه کاربردی دارند یا در غیر این صورت کار را تقسیم می کنند. هر دسته از سرورها می توانند دامنه و آدرس IP خود را داشته باشند ، اما این کار برای کاربران گیج کننده است. پروکسی یک راه حل زیبا برای بسیاری از موارد است.

نقش پروکسی معکوس

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

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

یک پروکسی معکوس شباهت هایی با ارسال پروکسی ، تعادل بار و سرورهای لبه دارد ، اما این یکسان نیست. بیش از یکی از این توابع را می توان در همان دستگاه ترکیب کرد.

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

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

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

مزایای یک پروکسی

اختصاص هوشمند درخواستها

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

سرورهای برنامه ممکن است فقط با جزئیاتی مانند زبانهایی که اداره می شوند متفاوت باشند. ممکن است یک سرور برای درخواستهای انگلیسی زبان یک برنامه و دیگری برای همه زبانهای دیگر وجود داشته باشد. پروکسی می تواند بر اساس تنظیمات کاربر یا پارامترهای URL درخواست ها را به سرور مناسب ارسال کند.

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

اضافه کردن یک برنامه جدید و سخت افزار جدید برای پشتیبانی از آن یک مسئله ساده است. قوانین پروکسی فقط باید به روز شود تا درخواست های مناسب برای آن ارسال شود.

آدرس IPv4 کمیاب است. ترجمه آدرس شبکه (NAT) با این مشکل روبرو می شود ، اما سرور در محیط آسیب پذیر شبکه قرار دارد. یک پروکسی فقط به یک آدرس IP عمومی احتیاج دارد ، و سرورهای برنامه به هیچ وجه به آن احتیاج ندارند.

امنیت سرور برنامه

 نمای داخلی-کامپیوتر-سخت افزار-با-درخشان-قفل-آیکون-و-آبی- محافل

مفهوم امنیت رایانه.

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

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

پروکسی درخواست خاص برنامه را فیلتر می کند ، فراتر از آنچه فایروال با هدف کلی می تواند انجام دهد. این درخواست هایی را که با URL های مخرب یا الگوهای کوکی مطابقت دارند مسدود می کند. سرور برنامه هرگز آنها را نمی بیند. این می تواند درخواست های یک کاربر خاص یا آدرس IP را محدود کند ، و از حملات انکار سرویس جلوگیری کند. اصطلاح "فایروال برنامه" اغلب برای یک پروکسی که این عملکرد را ارائه می دهد ظاهر می شود.

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

پروکسی داده های ورودی و خروجی را بررسی می کند. این می تواند داده های غیر طبیعی ارسال شده از سرور برنامه را شناسایی کند ، آنها را مسدود کرده و به مدیران هشدار دهد. به عنوان مثال ، دسترسی به بدافزارها به سرور فرمان و کنترل امکان پذیر است.

سادگی با SSL / TLS

اتصالات ایمن برای هرگونه سرویس جدی در وب ضروری است. TLS (اغلب هنوز با نام قدیمی تر SSL شناخته می شود) نیاز به امضای رمزنگاری و تأیید صحت دارد. در زمان پردازش بسیاری از درخواست ها ، زمان محاسبه قابل توجهی طول می کشد. یک پروکسی می تواند تمام کارها TLS را انجام دهد ، و بار را از روی سرورهای برنامه حذف کند. تا زمانی که اتصالات آنها از نظر جسمی از دست زدن به خارج و دستکاری در امان باشد ، می توانند از HTTP رمزگذاری نشده استفاده کنند. فقط یک گواهینامه TLS لازم است و نه یک مورد برای هر برنامه.

این مزیت فقط در صورتی اعمال می شود که پروکسی و سرورهای برنامه بخشی از یک LAN یا یک شبکه MPLS مطمئن باشند. اگر شبکه WAN تعریف شده نرم افزاری باشد ، اتصالات HTTPS برای اتصالات با پس زمینه ضروری است. هر چیزی که از طریق اینترنت عمومی پیش برود ، باید ایمن باشد. گواهینامه ها می توانند به صورت خود امضا شوند زیرا هیچ ماشین خارجی نباید به آنها دسترسی داشته باشد. هر سرور می تواند گواهینامه خود را داشته باشد و هر زمان که لازم باشد می توان آنها را جایگزین کرد.

به روز ماندن نرم افزار TLS بخش مهمی از امنیت شبکه است. استفاده از پراکسی ها برای کاهش تعداد دستگاه های رو به اینترنت کار را آسان تر می کند.

مدیریت کاربر

تأیید اعتبار کاربران و بررسی مجوزهای آنها باید یک کار واحد باشد. سرورهای برنامه لازم نیست ورود به سیستم را جداگانه بررسی کنند. آنها فقط باید اطلاعات قابل اعتماد در مورد هویت و امتیازات کاربر دریافت کنند.

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

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

سایر وظایف مدیریت اینترنت

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

برخی از درخواست ها باید در یک مکان دیگر به یک سرور هدایت شوند. سرور پروکسی می تواند پاسخهای تغییر مسیر را بدون دست زدن به سرور برنامه ارسال کند. این می تواند ریدایرکت های ارتقاء یافته از HTTP به HTTPS را کنترل کند ، و می تواند در موارد مناسب پاسخ هایی مانند "یافت نشد" و "در دسترس نباشد" را ارسال کند.

هنگامی که تعداد زیادی از آنها به نتیجه نمی رسد ، سیاهههای سرور ساده تر است. ماشین آلات یک سرور پروکسی می تواند تمام درخواست های مربوط به سرورهای برنامه را ثبت کند. این باعث می شود آن را به یک پایگاه مناسب برای تجزیه و تحلیل. پروکسی می تواند خود تجزیه و تحلیل را اجرا کند ، اگرچه معمولاً داده ها را به یک سرویس ابری مجزا تبدیل می کند تا به آمار و نمودار تبدیل شود.

استفاده از پراکسی ها نظارت بر شبکه را نیز ساده می کند. نرم افزار مانیتورینگ می تواند ببیند که چه میزان ترافیک از طریق سرور پروکسی انجام می شود و چه نوع درخواستهایی وارد می شوند. اگر الگوهای ترافیکی غیرمعمول شروع به کار کنند ، در صورت عدم نیاز به ترکیب داده ها از چندین سرور ، گرفتن آنها آسان تر خواهد بود. این امر امکان شناسایی سریعتر حملات انكار سرویس را می دهد.

تعادل بار

 تصویر-سرور-متصل به خوشه ها-از-رنگی-فردی-آیكون ها

یک متعادل کننده بار شغل ها را بین چندین سرور توزیع می کند به طوری که بار پردازش را به اشتراک می گذارد. این می تواند یک وسیله تخصصی باشد که هیچ کاری دیگر انجام ندهد ، یا می تواند یکی از کارکردهای سرور پروکسی باشد.

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

مقیاس ساختار سرور

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

اگر شبکه دسته بندی SaaS جدیدی را اضافه کند ، تغییر در پروکسی هنوز هم بسیار ساده است. برای سرویس جدید و چگونگی ارسال درخواست های آن باید قوانینی داشته باشد. اگر به عنوان یک فایروال برنامه کاربردی باشد ، به روز رسانی نیاز دارد تا بتواند از خدمات محافظت کند.

برای پیگیری ترافیک ممکن است یک شبکه بزرگ به بیش از یک پروکسی نیاز داشته باشد. در این حالت ، یک متعادل کننده بار می تواند چندین سرور پروکسی را مدیریت کند.

ذخیره سازی

همه درخواست ها نباید به سرورهای برنامه مراجعه کنند. درخواستی که باعث عملی نمی شود ممکن است فقط نیاز به بازیابی داده هایی داشته باشد که اغلب تغییر نمی کنند. هدرهای پاسخ سرور نشان می دهد که آیا می توان آن را ذخیره کرد و برای چه مدت است. همه از نحوه استفاده مرورگرها از این اطلاعات مطلع هستند. یک سرور حافظه پنهانی اساساً همین کار را انجام می دهد.

یک سرور می تواند هنگامی که محتوا زودتر از زمان انقضا تغییر کند ، درخواست تمیز کردن را به پروکسی ذخیره سازی ارسال کند. این اجازه می دهد تا زمان انقضا طولانی تر از آنچه در غیر این صورت ایمن است از آنجا که امکان رد کردن آنها وجود دارد. این یک ویژگی است که در دسترس مرورگرها نیست.

محتوای استاتیک

برخی از محتوا به هیچ وجه نیازی به پنهان سازی نیست. این یا می تواند مستقیماً در سرور پروکسی موجود باشد یا توسط سرور اداره می شود که کاری جز تحویل داده های استاتیک انجام نمی دهد. تصاویر ، فیلم ها ، CSS و JavaScript معمولاً اکثر مطالب صفحه را تشکیل می دهند. خود HTML به ندرت بیش از چند کیلوبایت است. هیچ دلیل خوبی وجود ندارد که سرور برنامه را با تحویل بخش هایی که تغییر نمی دهند ، سنگین شوند.

عملکرد بهتر

جمع و هدف از این مزیت ها ، سیستم SaaS است که بدون افزایش شدید سخت افزار عملکرد بهتری را ارائه می دهد. هزینه یک پروکسی مانند یک دستیار ماهر است که وظایف روزمره را برای رئیس انجام می دهد. رئیس به طور مداوم قطع نمی شود و می تواند روی کار مهم متمرکز شود. افراد فقط پس از تأیید دستیار تأیید می کنند که مشاغل آنها مشروع است و نیاز به توجه شخصی دارد.

کار یک سرور پراکسی از نظر کیفی با عملکرد سرور باطن متفاوت است. این تعداد زیادی درخواست را انجام می دهد اما فقط با هر یک از اقدامات ساده انجام می شود. بیشتر کارهای آن شامل تحویل یا رد درخواست ها است. نرم افزار آن به گونه ای طراحی شده است که به طور موازی با بسیاری از درخواست ها رسیدگی کند ، جایی که هر یک به منابع زیادی نیاز ندارد. سرور باطن معاملات کمتر را انجام می دهد ، اما آنها معمولاً برای محاسبه یا جستجوی اطلاعات نیازهای سنگین تری دارند.

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

چیزهای بیشتری برای یادگیری در مورد استفاده از پروکسی با SaaS وجود دارد ، اما امیدوارم این مقدمه به شما در متقاعد کردن از ارزش آنها کمک کرده است.