НОУ ІНТУІТ, Лекція, Проксі-сервери

Проксі-сервер (відомий також як шлюз додатків) є додатком , який виступає для трафіку як посередник між довіреною мережею і недовіреною мережею. Це не знімає необхідності застосування брандмауера для керування трафіком на IP-рівні, щоб не передбачати наявність брандмауера прикладного рівня.

5.1 Визначення проксі

Слово "proxy", як і безліч інших популярних комп'ютерних термінів англійських слів, можливо, втратило для деяких з нас своє оригінальне значення. Відповідно до словника, proxy - це хтось (або щось), уповноважений діяти від імені його клієнта і "доставляє" клієнту певні предмети.

Ви можете уявити собі посередника як довірену особу чи посла, яким наказано перебувати десь, де не може безпосередньо перебувати їхній клієнт (або воліє не перебувати) з причин незручності чи безпеки. Посли зазвичай знають місцеву мову та звичаї, можуть привести недосконалий запит клієнта у форму, припустиму у місцевому масштабі іншої зони, і, звичайно, можуть перевести назад отриману відповідь. У комп'ютерних поняттях такий "посол" може отримувати https-запити по порту 443 і перетворювати їх на http-запити по порту 80.

Проксі в більш повсякденних, практичних комп'ютерних термінах є процесами, запущеними на комп'ютерах, яким, як правило, надано доступ (у брандмауері) до більш ніж однієї зони. Саме ця здатність робить їх корисними. У типовому випадку проксі просто працюватиме від імені свого користувача на місці перекриття зон (в образі програми), виконуючи та отримуючи щось із зони, з якою за інших обставин заборонено встановлювати контакт або вимагати будь-що з боку окремихпроцесів та користувачів з іншої зони.

З іншого боку, на проксі можна подивитися з погляду "людини посередині". Як ми бачили в попередніх лекціях, однією з фундаментальних концепцій загальної безпеки (не тільки в криптографії) є концепція атаки з боку "(поганої) людини посередині", яка полягає в перехопленні та ретрансляції інформації третьої, незваної, "поганої", що передається між двома сторонами. стороною.

Проксі можуть сприйматися як "хороші" приймачі (слухачі) інформації або "люди посередині". Це означає, що вони перехоплюють інформацію, ретранслюють її далі, але з певною і корисною для мережевої інфраструктури метою.

5.2 Процес мережного посередництва

Як правило, комп'ютерний проксі є базовим серверним процесом. Цей серверний процес є слухачем, який "слухає" певний порт (говорять також – пов'язаний з ним – bind), чекаючи на запити за певним протоколом. Коли встановлено з'єднання з клієнтом та отримано правильний запит, він "повторить" цей запит іншому серверу від імені клієнта, як визначено у його правилах цього типу запитів. Коли від сервера отримано відповідь, проксі передає цю відповідь користувачеві або процесу клієнта, які раніше здійснили запит, застосовуючи всі необхідні перетворення.

Якщо дивитися на речі спрощено, проксі насправді існують у багатьох різних продуктах. Наприклад, більшість технологій порталів, які сьогодні доступні, запитують контент від імені користувача і компонують його в окремий "вид порталу". Іншим прикладом проксі є "транзитні пересилання" Notes, які існували в Lotus Notes певну кількість років і дозволяли віддалений доступ до середовища Notes напротягом усіх ранніх років розвитку Інтернету. Тим не менш, далі в цьому розділі ми зосередимо увагу на проксі у вигляді окремих продуктів, так як передовим досвідом, що найчастіше використовується сьогодні, є застосування окремих проксі-сервісів.

5.3 Типи проксі

У цьому розділі визначено різні типи проксі, що існують на ринку, що застосовуються в звичайних інфраструктурах. Як було встановлено раніше, найчастіше надане для проксі обладнання насправді виконуватиме або підтримуватиме безліч типів проксі-сервісів. Наприклад, проксі-сервер може надавати можливості кешування та аутентифікації на додаток до основної функції забезпечення мережного посередництва для додатків. Однак ми будемо трактувати ці ключові можливості проксі як окремі типи проксі для полегшення подальшого розгляду.

Ключовими типами проксі, які ми визначаємо та розглядаємо у цьому розділі, є:

  • пересилають проксі (forward proxies);
  • прозорі проксі (transparent proxies);
  • кешують проксі (caching proxies);
  • проксі забезпечення безпеки (security proxies);
  • зворотні проксі (reverse proxies).
5.3.1 Пересилання проксі

Пересилаючий проксі є проксі-сервером, який допомагає користувачам з однієї зони безпеки виконувати запити контенту з "наступної" зони, слідуючи напрямку, яке зазвичай (але не обов'язково) є вихідним (це означає, що клієнт знаходиться всередині, а сервер десь у відкритому Інтернеті).

З точки зору безпеки простий проксі має на меті забезпечення безпеки, що полягає у прихованні найменування (у термінах топології внутрішньої мережі) робочої станції або процесу користувача, що запитує. Він може також застосовуватисьдля приховування інших атрибутів сеансу користувача.

Типовим прикладом цього типу є корпоративні проксі, які обслуговують внутрішніх користувачів за допомогою дозволу їм доступу на зовнішні сайти для Web-браузингу чи іншого виду взаємодії з Інтернетом.

З точки зору топології (як у загальному сенсі, так і щодо ширини смуги пропускання) проксі, що пересилають, завжди відносно обмежені в термінах мережевої швидкості по відношенню до своїх користувачів через більш повільне WAN-з'єднання (з'єднання з глобальною мережею), яке зазвичай відокремлює пересилає проксі від реального контенту в Інтернеті

5.3.2 Прозорі проксі

Прозорі проксі є проксі-серверами, які "знаходяться тут", але не інформують користувачів у прямій формі про те, що вони тут. У проксі, що пересилають, зазвичай існують Linux/UNIX блоки, які слухають весь трафік по певному протоколу для певного сегмента мережі і перехоплюють трафік, хоча користувальницький процес насправді не знає про їх існування. Фактично користувальницький процес не спілкується з проксі, але спілкується з іншим (кінцевим) сайтом, а проксі, по суті, стає "людиною посередині", яка "зламує" з'єднання.

Ви можете мати оголошені, непрозорі проксі, які автоматично оголошені, налаштовані або виявлені. Незалежно від того, як вони були оголошені, ці проксі є видимими і відомими для користувача або процесу, що запитує. Іншими словами, неважливо, як ви або ваш процес дізналися про існування проксі, які причини того, що ви дізналися про існування проксі і про те, що ви спілкуєтеся з проксі.

Прозорі проксі самі по собі не є насправді типомпроксі, швидше за будь-який проксі є або прозорим, або оголошеним за проектом.

5.3.3 Кешируючі проксі

Проксі, що кеширують, як зазначено в їх назві, є проксі-серверами, які сконфігуровані на повторне використання кешованих образів контенту, коли це доступно і можливо. Коли кешована раніше частина контенту недоступна, проводиться її вибірка і використання в контенті, але також зі спробою її кешування.

Найбільш важливим аспектом для проксі, що кешують, є необхідність забезпечення того, що кешують проксі кешують тільки те, що насправді можна кешувати. Динамічний контент, що регулярно змінюється, не найкращий вибір для кешування, так як це може вплинути на стабільність програми, заснованого на цьому контенті. У разі контенту HTTP заголовки HTTP відображають можливість кешування контенту за допомогою покажчиків "cache".

У більшості випадків проксі, що пересилають, конфігуруються також для роботи в якості проксі, що кешують. Це явище використовується настільки часто, що IBM включила це в назву компонента свого Edge Server: IBM Caching Proxy. На рис. 5.1 відображено типовий проксі-сервер, що пересилає і кешує.

проксі-сервери

5.3.4 Проксі забезпечення безпеки

Існує багато різних продуктів та пропозицій, а також безліч топологій на вибір, але з точки зору виконання проксі-функцій безпека є додатковою функцією, яку може виконувати проксі.

У більшості випадків функціональні можливості безпеки можуть бути додані стандартному проксі у вигляді додаткового програмного модуля [plug-in (плагін)] (наприклад, IBM Tivoli WebSeal Plug-In для IBM WebSphere Edge Server). Існують також іокремі продукти, такі як IBM Tivoli Access Manager for e-Business, які служать лише як проксі забезпечення безпеки.

Трохи додаткову інформацію про такі проксі забезпечення безпеки ви знайдете в розділі 4.1.6, "Системи керування справжністю та керування доступом на підприємстві".