EdgeADC
Руководство по администрированию Edgenexus ADC
×
Menu

Аутентификация

Страница Library > Authentication позволяет вам настроить серверы аутентификации и создать правила аутентификации с опциями для Basic или Forms на стороне клиента и NTLM или BASIC на стороне сервера.
Настройка аутентификации - рабочий процесс
Чтобы применить аутентификацию к вашей службе, выполните, как минимум, следующие шаги.
1.     Создайте сервер аутентификации.
2.     Создайте правило аутентификации, которое использует сервер аутентификации.
3.     Создайте правило flightPATH, которое использует правило аутентификации.
4.     Применить правило flightPATH к службе
Серверы аутентификации
Чтобы настроить работающий метод аутентификации, мы должны сначала настроить сервер аутентификации.
·     Нажмите кнопку Добавить сервер.
·     Это действие приведет к созданию пустой строки, готовой к заполнению.
Вариант
Описание
Имя
Дайте вашему серверу имя для идентификации - это имя используется в правилах
Описание
Добавить описание
Метод аутентификации
Выберите метод аутентификации
LDAP - базовый LDAP с именами пользователей и паролями, отправляемыми открытым текстом на сервер LDAP.
LDAP-MD5 - базовый LDAP с именем пользователя открытым текстом и паролем, хэшированным MD5 для повышения безопасности.
LDAPS - LDAP через SSL. Отправляет пароль открытым текстом в зашифрованном туннеле между АЦП и сервером LDAP.
LDAPS-MD5 - LDAP через SSL. Пароль хешируется MD5 для дополнительной безопасности в зашифрованном туннеле между АЦП и сервером LDAP.
Домен
Добавьте имя домена для сервера LDAP.
Адрес сервера
Добавьте IP-адрес или имя хоста сервера аутентификации
LDAP - IPv4-адрес или имя хоста.
LDAP-MD5 - только имя хоста (IPv4-адрес не работает)
LDAPS - IPv4-адрес или имя хоста.
LDAPS-MD5 - только имя хоста (IPv4-адрес не работает).
Порт
По умолчанию используйте порт 389 для LDAP и порт 636 для LDAPS. Нет необходимости добавлять номер порта для LDAP и LDAPS. Когда станут доступны другие методы, вы сможете настроить их здесь
Условия поиска
Условия поиска должны соответствовать RFC 4515. Пример:
(MemberOf=CN=Phone- VPN,CN=Users,DC=mycompany,DC=local).
База поиска
Это значение является отправной точкой для поиска в базе данных LDAP.
Пример dc=mycompany,dc=local
Формат входа в систему
Используйте нужный вам формат входа.
Имя пользователя - при выборе этого формата необходимо ввести только имя пользователя. Любая информация о пользователе и домене, введенная пользователем, удаляется, и используется информация о домене с сервера.
Имя пользователя и домен - Пользователь должен ввести весь синтаксис домена и имени пользователя. Пример: mycompany\gchristie ИЛИ someone@mycompany. Информация о домене, введенная на уровне сервера, игнорируется.
Пустой - АЦП примет все, что введет пользователь, и отправит это на сервер аутентификации. Этот параметр используется при использовании MD5.
Пассфраза
Эта опция не используется в данной версии.
Мертвое время
Не используется в данной версии
 
Правила аутентификации
Следующим этапом является создание правил аутентификации для использования с определением сервера.
Поле
Описание
Имя
Добавьте подходящее имя для правила аутентификации.
Описание
Добавьте подходящее описание.
Корневой домен
Этот параметр следует оставить пустым, если вам не нужен единый вход на поддоменах.
Сервер аутентификации
Это выпадающее поле, содержащее настроенные вами серверы.
Аутентификация клиента:
 
 
Выберите значение, соответствующее вашим потребностям:
Базовый (401) - Этот метод использует стандартный метод аутентификации 401.
Формы - здесь пользователю будет представлена форма ADC по умолчанию. Внутри формы можно добавить сообщение. Вы можете выбрать форму, которую вы загрузили, используя раздел ниже.
Аутентификация сервера
 
 
 
Выберите соответствующее значение.
None - если ваш сервер не имеет никакой существующей аутентификации, выберите этот параметр. Этот параметр означает, что вы можете добавить возможности аутентификации на сервер, который ранее не имел таковых.
Basic - если на вашем сервере включена базовая аутентификация (401), выберите BASIC.
NTLM - если на вашем сервере включена аутентификация NTLM, выберите NTLM.
Форма
 
 
Выберите соответствующее значение
По умолчанию - При выборе этой опции АЦП будет использовать свою встроенную форму.
Пользовательская - вы можете добавить разработанную вами форму и выбрать ее здесь.
Сообщение
Добавьте личное сообщение в форму.
Тайм-аут
Добавьте в правило тайм-аут, по истечении которого пользователь должен будет повторно пройти аутентификацию. Обратите внимание, что параметр Timeout действует только для аутентификации на основе форм.
Единый вход
Если вы хотите обеспечить единый вход для пользователей, заполните колонку Корневой домен своим доменом. В данном примере мы использовали edgenexus.io. Теперь у нас может быть несколько служб, которые будут использовать edgenexus.io в качестве корневого домена, и вам нужно будет войти в систему только один раз. Если мы рассмотрим следующие сервисы:
·     Sharepoint.mycompany.com
·     usercentral. mycompany.com
·     appstore. mycompany.com
Эти службы могут располагаться на одном VIP или могут быть распределены между 3 VIP. Пользователь, впервые заходящий на usercentral. mycompany.com, получит форму с предложением войти в систему в зависимости от используемого правила аутентификации. Затем этот же пользователь может подключиться к appstore. mycompany.com и будет автоматически аутентифицирован ADC. Вы можете установить тайм-аут, который будет принудительно аутентифицировать пользователя по истечении этого периода бездействия.
Формы
В этом разделе вы сможете загрузить пользовательскую форму.
Как создать пользовательскую форму
Хотя базовая форма, предоставляемая ADC, достаточна для большинства целей, бывают случаи, когда компании хотят представить пользователю свою собственную личность. Вы можете создать свою собственную форму, которая будет предложена пользователям для заполнения в таких случаях. Эта форма должна быть в формате HTM или HTML.
Вариант
Описание
Имя
имя формы = loginform
действие = %JNURL%
Метод = POST
Имя пользователя
Синтаксис: name = "JNUSER"
Пароль:
name="JNPASS"
Необязательное сообщение1:
%JNMESSAGE%
Необязательное сообщение2:
%JNAUTHMESSAGE%
Изображения
Если вы хотите добавить изображение, то, пожалуйста, добавьте его в строке с использованием кодировки Base64.
Пример html-кода очень простой и базовой формы
<HTML>
<HEAD>
<TITLE>ОБРАЗЕЦ ФОРМЫ АВТОРИЗАЦИИ</TITLE>
</HEAD>
<BODY>
%JNMESSAGE%<br>
<form name="loginform" action="%JNURL%" method="post"> USER: <input type="text" name="JNUSER" size="20" value=""></br>
PASS: <input type="password" name="JNPASS" size="20" value=""></br>
<input type="submit" name="submit" value="OK">
</form>
</BODY>
</HTML>
Добавление пользовательской формы
После создания пользовательской формы вы можете добавить ее с помощью раздела Формы.
1.     Выберите имя для вашей формы
2.     Поиск формы на местном уровне
3.     Нажмите Загрузить
 
Предварительный просмотр вашей пользовательской формы
Чтобы просмотреть пользовательскую форму, которую вы только что загрузили, выделите ее и нажмите кнопку Preview. Вы также можете использовать этот раздел для удаления форм, которые больше не нужны.
Кэш
АЦП способен кэшировать данные в своей внутренней памяти и периодически сбрасывать этот кэш во внутреннее хранилище АЦП. Настройки, управляющие этой функцией, приведены в этом разделе.
Глобальные настройки кэша
Максимальный размер кэша (МБ)
Это значение определяет максимальный объем оперативной памяти, который может занимать кэш. Кэш ADC - это кэш в памяти, который также периодически сбрасывается на носитель для поддержания неизменности кэша после перезапуска, перезагрузки и выключения. Эта функциональность означает, что максимальный размер кэша должен соответствовать объему памяти устройства (а не дискового пространства) и составлять не более половины доступной памяти.
Желаемый размер кэша (МБ)
Это значение обозначает оптимальный размер оперативной памяти, до которого будет обрезаться кэш. В то время как максимальный размер кэша представляет собой абсолютную верхнюю границу кэша, желаемый размер кэша - это оптимальный размер, который кэш должен пытаться достичь при каждой автоматической или ручной проверке размера кэша. Промежуток между максимальным и желаемым размером кэша существует для того, чтобы обеспечить поступление и перекрытие нового содержимого между периодическими проверками размера кэша для удаления просроченного содержимого. И снова, возможно, будет более эффективным принять значение по умолчанию (30 МБ) и периодически проверять размер кэша в разделе "Монитор -> Статистика" для определения подходящего размера.
Время кэширования по умолчанию (Д/ЧЧ:ММ)
Введенное здесь значение представляет собой срок жизни содержимого без явного срока действия. Время кэширования по умолчанию - это период, в течение которого хранится содержимое без директивы "no-store" или явного времени истечения срока действия в заголовке трафика.
Запись в поле принимает форму "D/HH:MM" - таким образом, запись "1/01:01" (по умолчанию 1/00:00) означает, что для хранения АЦП будет хранить содержимое в течение одного дня, "01:00" - одного часа, а "00:01" - одной минуты.
Кэшируемые коды ответов HTTP
Одним из наборов кэшированных данных являются ответы HTTP. Кэшируются следующие коды ответов HTTP:
·     200 - Стандартный ответ для успешных HTTP-запросов
·     203 - Заголовки не являются окончательными, а собраны из местной или сторонней копии
·     301 - Запрашиваемому ресурсу был присвоен новый постоянный URL-адрес
·     304 - Не изменен с момента последнего запроса, вместо него следует использовать локально кэшированную копию
·     410 - Ресурс больше не доступен на сервере, и адрес пересылки неизвестен
Это поле следует редактировать с осторожностью, поскольку наиболее распространенные кэшируемые коды ответа уже перечислены.
Время проверки кэша (Д/ЧЧ:ММ)
Эта настройка определяет интервал времени между операциями обрезки кэша.
Подсчет заполнения кэш-памяти
Этот параметр является вспомогательным средством, помогающим заполнить кэш при обнаружении определенного количества 304.
Применить правило кэширования
Этот раздел позволяет применить правило кэширования к домену:
·     Добавьте домен вручную с помощью кнопки Добавить записи. Вы должны использовать полное доменное имя или IP-адрес в точечно-десятичной системе счисления. Пример www. mycompany.com или 192.168.3.1:80
·     Нажмите на выпадающую стрелку и выберите свой домен из списка
·     Список будет заполнен до тех пор, пока трафик проходит через виртуальную службу и к виртуальной службе была применена стратегия кэширования
·     Выберите правило кэширования, дважды щелкнув на столбце Caching Rulebase и выбрав из списка
Создание правила кэширования
Этот раздел позволяет создать несколько различных правил кэширования, которые затем могут быть применены к домену:
·     Нажмите Добавить записи и дайте своему правилу имя и описание
·     Вы можете ввести условия вручную или воспользоваться кнопкой Добавить условие
Чтобы добавить условие с помощью базы правил выбора:
·     Выберите "Включить" или "Исключить
·     Выберите все изображения JPEG
·     Нажмите на символ + Добавить
·     Вы увидите, что теперь в условия добавлено 'include *.jpg'.
·     Вы можете добавить больше условий. Если вы решили сделать это вручную, вам нужно добавить каждое условие на НОВУЮ строку. Обратите внимание, что ваши правила будут отображаться на одной строке, пока вы не щелкните в поле Условия, после чего они будут отображаться на отдельной строке.
flightPATH
flightPATH - это технология управления трафиком, встроенная в ADC. flightPATH позволяет проверять трафик HTTP и HTTPS в режиме реального времени и выполнять действия в зависимости от условий.
Правила flightPATH должны применяться к VIP, если в правилах используются объекты IP.
Правило траектории полета состоит из четырех элементов:
1.     Details, где вы определяете имя flightPATH и службу, к которой он прикреплен.
2.     Условие(я), которое может быть определено, чтобы вызвать срабатывание правила.
3.     Оценка, позволяющая определять переменные, которые могут быть использованы в рамках Действий
4.     Действия, которые используются для управления тем, что должно произойти при выполнении условий
Подробности
В разделе подробностей отображаются доступные правила flightPATH. В этом разделе можно добавлять новые правила flightPATH и удалять определенные.
Добавление нового правила flightPATH
Поле
Описание
Имя FlightPATH
Это поле предназначено для имени правила flightPATH. Имя, которое вы здесь указываете, появляется в других частях ADC и на него ссылаются.
Применяется к VS
Этот столбец доступен только для чтения и показывает VIP, к которому применяется правило flightPATH.
Описание
Значение, представляющее описание, предоставленное для удобства чтения.
Шаги для добавления правила flightPATH
1.     Сначала нажмите кнопку Добавить новый, расположенную в разделе Подробности.
2.     Введите имя для вашего правила. Пример Auth2
3.     Введите описание вашего правила
4.     После применения правила к службе вы увидите, как в колонке Applied To автоматически заполняются IP-адрес и значение порта.
5.     Не забудьте нажать кнопку "Обновить", чтобы сохранить изменения, а если вы ошиблись, просто нажмите кнопку "Отменить", чтобы вернуться к предыдущему состоянию.
Состояние
Правило flightPATH может содержать любое количество условий. Условия работают по принципу AND, позволяя вам установить условие, при котором срабатывает действие. Если вы хотите использовать условие OR, создайте дополнительное правило flightPATH и примените его к VIP в правильном порядке.
Вы также можете использовать RegEx, выбрав Match RegEx в поле Check и значение RegEx в поле Value. Включение оценки RegEx значительно расширяет возможности flightPATH.
Создание нового условия flightPATH
Состояние
Мы предоставляем несколько условий, предварительно заданных в выпадающем списке, которые охватывают все предусмотренные сценарии. Когда будут добавлены новые условия, они будут доступны через обновления Jetpack.
Доступны следующие варианты:
ПОДРОБНЕЕ
ОПИСАНИЕ
ПРИМЕР
<форма>
HTML-формы используются для передачи данных на сервер
Пример "форма не имеет длины 0".
Местонахождение ГЭП
Сравнивает IP-адрес источника с кодами стран ISO 3166
ГЕО местоположение равно GB, ИЛИ ГЕО местоположение равно Германия
Хозяин
Хост, извлеченный из URL
www.mywebsite.com или 192.168.1.1
Язык
Язык извлекается из HTTP-заголовка language
Это условие приведет к появлению выпадающего списка со списком языков
Метод
Выпадающий список методов HTTP
Выпадающий список, включающий GET, POST и т.д.
IP-адрес происхождения
Если восходящий прокси поддерживает X-Forwarded-for (XFF), он будет использовать истинный адрес происхождения.
IP-адрес клиента. Он также может использовать несколько IP-адресов или подсетей.
10\.1\.2\.* это 10.1.2.0 /24 подсеть10\
.1\.2\.3|10\.1\.2\.4 Используйте | для нескольких IP-адресов
Путь
Путь к веб-сайту
/mywebsite/index.asp
ПОСТ
Метод запроса POST
Проверка данных, загружаемых на веб-сайт
Запрос
Имя и значение запроса, может принимать либо имя запроса, либо также значение
"Best=jetNEXUS", где соответствие - Best, а значение - edgeNEXUS
Строка запроса
Вся строка запроса после символа ?
 
Запрос куки
Имя файла cookie, запрашиваемого клиентом
MS-WSMAN=afYfn1CDqqCDqUD::
Заголовок запроса
Любой заголовок HTTP
Referrer, User-Agent, From, Date
Версия для запросов
Версия HTTP
HTTP/1.0 ИЛИ HTTP/1.1
Орган реагирования
Определяемая пользователем строка в теле ответа
Сервер UP
Код ответа
Код HTTP для ответа
200 OK, 304 Not Modified
Ответное печенье
Имя файла cookie, отправленного сервером
MS-WSMAN=afYfn1CDqqCDqUD::
Заголовок ответа
Любой заголовок HTTP
Referrer, User-Agent, From, Date
Версия ответа
Версия HTTP, отправленная сервером
HTTP/1.0 ИЛИ HTTP/1.1
Источник IP
Либо IP-адрес источника, IP-адрес прокси-сервера или другой агрегированный IP-адрес
ClientIP
, Proxy IP, Firewall IP. Можно также использовать несколько IP и подсетей. Точки необходимо экранировать, так как они являются RegEX. Пример 10\.1\.2\.3 - 10.1.2.3
 
Матч
Поле Match может быть выпадающим или текстовым значением и определяется в зависимости от значения в поле Condition. Например, если условие установлено на Host, поле Match недоступно. Если условие установлено на <form>, поле Match отображается как текстовое поле, а если условие POST, поле Match представляется как выпадающий список, содержащий соответствующие значения.
Доступны следующие варианты:
МАТЧ
ОПИСАНИЕ
ПРИМЕР
Принять
Типы содержимого, которые допустимы
Принять: текст/plain
Accept-Encoding
Допустимые кодировки
Accept-Encoding: <compress | gzip | deflate | sdch | identity>.
Accept-Language
Приемлемые языки для ответа
Язык приема: en-US
Accept-Ranges
Какие типы диапазонов частичного содержимого поддерживает данный сервер
Диапазон приема: байты
Авторизация
Учетные данные для аутентификации по протоколу HTTP
Авторизация: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
Зарядка -
Содержит информацию о расходах, связанных с применением запрашиваемого метода
 
Content-Encoding
Тип используемого кодирования
Content-Encoding: gzip
Content-Length
Длина тела ответа в октетах (8-битных байтах)
Content-Length: 348
Content-Type
Тип mime тела запроса (используется с запросами POST и PUT).
Content-Type: application/x-www-form-urlencoded
Печенье
HTTP-куки, ранее отправленные сервером с помощью Set-Cookie (см. ниже).
Cookie: $Version=1; Skin=new;
Дата
Дата и время получения сообщения
Дата = "Дата" ":" HTTP-дата
ETag
Идентификатор для конкретной версии ресурса, часто дайджест сообщения.
ETag: "aed6bdb8e090cd1:0".
С сайта
Адрес электронной почты пользователя, делающего запрос
От: user@example.com
If-Modified-Since
Позволяет возвращать сообщение 304 Not Modified, если содержимое не изменилось
If-Modified-Since: Sat, 29 Oct 1994 19:43:31 GMT
Last-Modified
Дата последнего изменения для запрашиваемого объекта, в формате RFC 2822
Last-Modified: Tue, 15 Nov 1994 12:45:26 GMT
Pragma
Реализация: Специфические заголовки, которые могут иметь различные эффекты в любой точке цепочки запрос-ответ.
Pragma: no-cache
Реферрер
Адрес предыдущей веб-страницы, с которой была получена ссылка на текущую запрашиваемую страницу
Реферер: HTTP://www.edgenexus.io
Сервер
Имя для сервера
Сервер: Apache/2.4.1 (Unix)
Set-Cookie
HTTP-куки
Set-Cookie: UserID=JohnDoe; Max-Age=3600; Version=1
User-Agent
Строка агента пользователя
User-Agent: Mozilla/5.0 (совместимый; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
Варьировать
Сообщает нижестоящим прокси-серверам, как сопоставить заголовки будущих запросов, чтобы решить,
можно ли
использовать кэшированный ответ вместо того, чтобы запрашивать новый ответ
у исходного сервера.
Vary: User-Agent
X-Powered-By
Указывает технологию (например, ASP.NET, PHP, JBoss), поддерживающую веб-приложение
X-Powered-By: PHP/5.4.0
 
Чувства
Поле Sense - это выпадающее булево поле, которое содержит варианты Does или Doesn't.
Проверьте
Поле Проверка позволяет установить контрольные значения для условия.
Доступны следующие варианты: Содержать, Конец, Равный, Существующий, Имеет длину, Соответствует RegEx, Соответствует списку, Начало, Превышает длину
ПРОВЕРЬТЕ
ОПИСАНИЕ
ПРИМЕР
Существовать
Здесь не важна детальность условия, только то, что оно существует/не существует
Хозяин - существует
Начало
Строка начинается со значения
Путь - Does - Start - /secure
Конец
Строка заканчивается значением
Путь - Делает - Конец - .jpg
Содержать
Строка содержит значение
Заголовок запроса - Принимать - Есть - Содержит - изображение
Равный
Строка равна значению
Host - Does - Equal - www.jetnexus.com
Иметь длину
Строка имеет длину, равную значению
Host - Does - Have Length - 16www.jetnexus.com
= TRUEwww.jetnexus.co.uk
= FALSE
Соответствие RegEx
Позволяет ввести полное регулярное выражение, совместимое с Perl
Origin IP - Does - Match Regex - 10\...* | 11\...*
 
Шаги для добавления условия
Добавить новое условие flightPATH очень просто. Пример показан выше.
1.     Нажмите кнопку Добавить новый в области Условие.
2.     Выберите условие из выпадающего списка. В качестве примера возьмем Host. Вы также можете ввести текст в поле, и ADC отобразит значение в выпадающем списке.
3.     Выберите чувство. Например, Does
4.     Выберите проверку. Например, Contain
5.     Выберите значение. Например, mycompany.com
Приведенный выше пример показывает, что есть два условия, оба из которых должны быть ИСТИНОЙ, чтобы правило было выполнено
·     Первое - проверка того, что запрашиваемый объект является изображением
·     Второй проверяет, является ли хост в URL www.imagepool.com.
Оценка
Возможность добавления определяемых переменных - это очень важная возможность. Обычные АЦП предлагают эту возможность с помощью сценариев или опций командной строки, которые не являются идеальными для всех. АЦП позволяет вам определить любое количество переменных с помощью простого в использовании графического интерфейса, как показано и описано ниже.
Определение переменной flightPATH состоит из четырех записей, которые необходимо сделать.
·     Переменная - это имя переменной
·     Источник - выпадающий список возможных точек источника
·     Деталь - выбор значений из выпадающего списка или ручной ввод.
·     Значение - значение, которое хранит переменная, может быть буквенно-цифровым значением или RegEx для тонкой настройки.
Встроенные переменные:
Встроенные переменные уже жестко закодированы, поэтому вам не нужно создавать для них запись оценки.
Вы можете использовать любую из переменных, перечисленных ниже в разделе "Действие".
Объяснение каждой переменной находится в таблице "Условия" выше.
·     Метод = $method$
·     Path = $path$
·     Querystring = $querystring$
·     Sourceip = $sourceip$
·     Код ответа (текст также включает "200 OK") = $resp$
·     Host = $host$
·     Версия = $version$
·     Клиентский порт = $clientport$
·     Clientip = $clientip$
·     Геолокация = $geolocation$"
ДЕЙСТВИЕ
ЦЕЛЬ
Действие = Перенаправление 302
Цель = HTTPs://$host$/404.html
Действие = Журнал
Target = Клиент из $sourceip$:$sourceport$ только что сделал запрос $path$ page
 
Объяснение:
·     Клиент, обращающийся к несуществующей странице, как правило, получает в браузере страницу "Ошибка 404".
·     Вместо этого пользователь перенаправляется на исходное имя хоста, которое он использовал, но неверный путь заменяется на 404.html
·     В Syslog добавляется запись: "Клиент с 154.3.22.14:3454 только что запросил страницу wrong.html".
Действие
Следующим этапом процесса является добавление действия, связанного с правилом и условием flightPATH.
В этом примере мы хотим переписать часть пути URL, чтобы отразить URL, набранный пользователем.
·     Нажмите Добавить новый
·     Выберите Rewrite Path в раскрывающемся меню Action
·     В поле Target введите $path$/myimages
·     Нажмите Обновить
Это действие добавит /myimages к пути, так что окончательный URL станет www.imagepool.com/myimages.
Применение правила flightPATH
Применение любого правила flightPATH осуществляется на вкладке flightPATH каждого VIP/VS.
·     Перейдите в раздел Services > IP Services и выберите VIP, которому вы хотите назначить правило flightPATH.
·     Вы увидите список реальных серверов, показанный ниже
·     Перейдите на вкладку flightPATH
·     Выберите правило flightPATH, которое вы настроили, или одно из предварительно созданных правил. При необходимости можно выбрать несколько правил flightPATH.
·     Перетащите выбранный набор в раздел Applied flightPATHs или нажмите кнопку со стрелкой >>.
·     Правило будет перемещено в правую часть и автоматически применено.