12.11.2. Настройка правил reverse-прокси

Правила reverse-прокси настраиваются на уровне global-portal reverse-proxy-rules. Подробнее о структуре команд читайте в разделе Настройка правил с использованием UPL.

При настройке правил reverse-прокси необходимо задать:

Параметр

Описание

PASS

OK

Действие для создания правила с помощью UPL.

enabled

Включение/отключение правила:

  • enabled(yes) или enabled(true).

  • enabled(no) или enabled(false).

name

Название правила reverse-прокси.

Например: name("Reverse proxy rule example").

desc

Описание правила.

Например: desc("Reverse proxy rule example set via CLI").

profile

Сервер reverse-прокси, куда UserGate будет пересылать запросы.

Для указания сервера: profile("Reverse proxy server example").

url.port

Порт, на котором UserGate будет слушать входящие запросы, например, url.port = 80.

is_https

Поддержка HTTPS:

  • is_https(yes) или is_https(true) -- использовать HTTPS.

  • is_https(no) или is_https(false) -- не использовать HTTPS.

ssl_profile

Профиль SSL; указывается при использовании HTTPS: ssl_profile("Default SSL profile").

Подробнее о работе с профилями SSL через CLI читайте в разделе Настройка профилей SSL.

certificate

Сертификат, используемый для поддержки HTTPS-соединения.

Указывается при использовании HTTPS: certificate("Certificate example").

cert_auth_enabled

Авторизация по сертификату:

  • cert_auth_enabled(yes) или cert_auth_enabled(true) -- включить авторизацию по сертификату.

  • cert_auth_enabled(no) или cert_auth_enabled(false) -- отключить авторизацию по сертификату.

src.zone

Зона источника трафика.

Для указания зоны источника, например, Untrusted: src.zone = Untrusted.

Подробнее о настройке зон с использованием интерфейса командной строки читайте в разделе Зоны.

src.ip

Добавление списков IP-адресов или доменов источника.

Для указания списка IP-адресов: src.ip = lib.network(); в скобках необходимо указать название списка. Подробнее о создании и настройке списков IP-адресов с использованием CLI читайте в разделе Настройка IP-адресов.

Для указания списка доменов источника: src.ip = lib.url(); в скобках необходимо указать название URL, в который были добавлены необходимые домены. Подробнее о создании и настройке списков URL с использованием интерфейса командной строки читайте в разделе Настройка списков URL.

src.geoip

Указание GeoIP источника; необходимо указать код страны (например, src.geoip = RU).

Коды названий стран доступны по ссылке ISO 3166-1.

user

Пользователи и группы пользователей, для которых применяется правило reverse-прокси. Добавление пользователей доступно только при использовании авторизации по сертификату.

Для добавления LDAP групп и пользователей необходим корректно настроенный LDAP-коннектор (о настройке LDAP-коннектора через CLI читайте в разделе Настройка LDAP-коннектора).

В следующей строке описано добавление локальных пользователя (local_user) и группы (Local Group), пользователя (example.local\AD_user) и группы LDAP (AD group):

user = (local_user, "CN=Local Group, DC=LOCAL", "example.loc\\AD_user", "CN=AD group, OU=Example, DC= example, DC=loc")

Заранее был настроен домен Active Directory example.loc. При добавлении пользователей и групп LDAP можно указать список путей на сервере, начиная с которых система будет осуществлять поиск пользователей и групп.

dst.ip

Один из внешних IP-адресов сервера UserGate, доступный из сети интернет, куда адресован трафик внешних клиентов.

Для указания списка IP-адресов: dst.ip = lib.network(); в скобках необходимо указать название списка. Подробнее о создании и настройке списков IP-адресов с использованием CLI читайте в разделе Настройка IP-адресов.

Для указания списка доменов источника: dst.ip = lib.url(); в скобках необходимо указать название URL-списка, в который были добавлены необходимые домены. Подробнее о создании и настройке списков URL с использованием интерфейса командной строки читайте в разделе Настройка списков URL.

dst.geoip

Указание GeoIP; необходимо указать код страны (например, dst.geoip = RU).

Коды названий стран доступны по ссылке ISO 3166-1.

request.header.User-Agent

Useragent пользовательских браузеров, для которых будет применено данное правило.

Для указания Useragent пользовательских браузеров: request.header.User-Agent = lib.useragent(); в скобках необходимо указать название категории Useragent браузеров.

Подробнее о создании и настройке собственных списков с использованием интерфейса командной строки читайте в разделе Настройка Useragent браузеров.

rewrite_path

Подмена домена и/или пути в URL в запросе пользователя. Например, позволяет преобразовать запросы, приходящие на http://www.example.com/path1 в http://www.example.loc/path2. Для этого необходимо указать: rewrite_path("http://www.example.com/path1", "http://www.example.loc/path2").