EdgeADC - Version 5.00.1986
User Guide
×
Menu

Adição de uma nova regra flightPATH

Campo
Descrição
Nome do FlightPATH
Este campo é para o nome da regra flightPATH. O nome fornecido aqui aparece e é referenciado noutras partes do ADC.
Aplicado a VS
Esta coluna é só de leitura e mostra o VIP ao qual a regra flightPATH é aplicada.
Descrição
Valor que representa uma descrição fornecida para efeitos de legibilidade.
Passos para adicionar uma regra flightPATH
1.     Primeiro, clique no botão Adicionar novo localizado na secção Detalhes.
2.     Introduza um nome para a sua regra. Exemplo Auth2
3.     Introduza uma descrição da sua regra
4.     Quando a regra tiver sido aplicada a um serviço, verá a coluna Aplicado a ser preenchida automaticamente com um endereço IP e um valor de porta
5.     Não se esqueça de premir o botão Atualizar para guardar as suas alterações ou, se cometer um erro, basta premir Cancelar para voltar ao estado anterior.
Estado
Uma regra flightPATH pode ter qualquer número de condições. As condições funcionam numa base AND, o que lhe permite definir a condição em que a ação é desencadeada. Se pretender utilizar uma condição OR, crie regras flightPATH adicionais e aplique-as ao VIP pela ordem correta.
Também pode utilizar RegEx selecionando Match RegEx no campo Check e o valor RegEx no campo Value. A inclusão da avaliação RegEx alarga tremendamente a capacidade do flightPATH.
Criar uma nova condição flightPATH
Em primeiro lugar, é necessário selecionar um valor na coluna Condição.
Fornecemos várias condições no menu suspenso e cobrimos todos os cenários previstos. Quando forem adicionadas novas condições, estas estarão disponíveis através das actualizações do Jetpack.
As opções disponíveis são:
CONDIÇÃO
DESCRIÇÃO
EXEMPLO
<form>
Os formulários HTML são utilizados para transmitir dados a um servidor
Exemplo "o formulário não tem comprimento 0"
Localização GEO
Compara o endereço IP de origem com os códigos de país ISO 3166
A localização GEO é igual a GB, OU a localização GEO é igual a Alemanha
Anfitrião
Anfitrião extraído do URL
www.mywebsite.com ou 192.168.1.1
Língua
Idioma extraído do cabeçalho HTTP do idioma
Esta condição produzirá um menu suspenso com uma lista de idiomas
Método
Lista pendente de métodos HTTP
Menu suspenso que inclui GET, POST, etc
Origem IP
Se o proxy a montante suportar X-Forwarded-for (XFF), utilizará o verdadeiro endereço de origem
IP do cliente. Ele também pode usar vários IPs ou sub-redes.
10\.1\.2\.* é a sub-rede 10.1.2.0 /24
10\.1\.2\.3|10\.1\.2\.4 Use | para vários IPs
Caminho
Caminho do sítio Web
/mywebsite/index.asp
POST
Método de pedido POST
Verificar os dados que estão a ser carregados num sítio Web
Consulta
Nome e valor de uma consulta e pode aceitar o nome da consulta ou também um valor
"Best=jetNEXUS" Em que a correspondência é Best e o valor é edgeNEXUS
Cadeia de caracteres de consulta
Toda a cadeia de consulta após o carácter ?
 
Pedir cookie
Nome de um cookie solicitado por um cliente
MS-WSMAN=afYfn1CDqqCDqUD::
Cabeçalho do pedido
Qualquer cabeçalho HTTP
Referenciador, User-Agent, De, Data
Versão de pedido
A versão HTTP
HTTP/1.0 OU HTTP/1.1
Corpo da resposta
Uma cadeia definida pelo utilizador no corpo da resposta
Servidor UP
Código de resposta
O código HTTP da resposta
200 OK, 304 Não Modificado
Biscoito de resposta
O nome de um cookie enviado pelo servidor
MS-WSMAN=afYfn1CDqqCDqUD::
Cabeçalho de resposta
Qualquer cabeçalho HTTP
Referenciador, User-Agent, De, Data
Versão de resposta
A versão HTTP enviada pelo servidor
HTTP/1.0 OU HTTP/1.1
Fonte IP
O IP de origem, o IP do servidor proxy ou algum outro endereço IP agregado
IP do cliente, IP do proxy, IP da firewall. Também pode usar vários IPs e sub-redes. Os pontos devem ser escapados, pois são RegEX. Exemplo 10\.1\.2\.3 é 10.1.2.3
 
Jogo
O campo Correspondência pode ser um menu pendente ou um valor de texto e é definível consoante o valor no campo Condição. Por exemplo, se a Condição for definida como Host, o campo Correspondência não estará disponível. Se a Condição estiver definida como <form>, o campo Corresponder é apresentado como um campo de texto e, se a Condição for POST, o campo Corresponder é apresentado como um drop-down que contém valores pertinentes.
As opções disponíveis são:
COMBINAÇÃO
DESCRIÇÃO
EXEMPLO
Aceitar
Tipos de conteúdo aceitáveis
Aceitar: text/plain
Aceitar codificação
Codificações aceitáveis
Aceitar codificação: <compress | gzip | deflate | sdch | identity>
Aceitar-Língua
Línguas aceitáveis para a resposta
Accept-Language: en-US
Aceitar intervalos
Que tipos de intervalo de conteúdo parcial este servidor suporta
Accept-Ranges: bytes
Autorização
Credenciais de autenticação para autenticação HTTP
Autorização: Básica QWxhZGRpbjpvcGVuIHNlc2FtZQ==
Carregar-até
Contém informações contabilísticas relativas aos custos de aplicação do método solicitado
 
Content-Encoding
O tipo de codificação utilizado
Content-Encoding: gzip
Comprimento do conteúdo
O comprimento do corpo da resposta em octetos (bytes de 8 bits)
Content-Length: 348
Tipo de conteúdo
O tipo mime do corpo do pedido (utilizado com pedidos POST e PUT)
Content-Type: application/x-www-form-urlencoded
Biscoito
Um cookie HTTP previamente enviado pelo servidor com Set-Cookie (abaixo)
Cookie: $Version=1; Skin=new;
Data
Data e hora em que a mensagem foi originada
Date = "Date" ":" HTTP-date
ETag
Um identificador para uma versão específica de um recurso, frequentemente um resumo de mensagem
ETag: "aed6bdb8e090cd1:0"
De
O endereço de correio eletrónico do utilizador que faz o pedido
De: user@example.com
Se-Modificado-Desde
Permite que seja devolvido um 304 Not Modified se o conteúdo não for alterado
If-Modified-Since: Sat, 29 Oct 1994 19:43:31 GMT
Última modificação
A data da última modificação do objeto pedido, no formato RFC 2822
Last-Modified: Tue, 15 Nov 1994 12:45:26 GMT
Pragma
Implementação: Cabeçalhos específicos que podem ter vários efeitos em qualquer ponto da cadeia pedido-resposta.
Pragma: no-cache
Referenciador
Endereço da página Web anterior a partir da qual se seguiu uma ligação para a página atualmente solicitada
Referenciador: HTTP://www.edgenexus.io
Servidor
Um nome para o servidor
Servidor: Apache/2.4.1 (Unix)
Set-Cookie
Um cookie HTTP
Set-Cookie: UserID=JohnDoe; Max-Age=3600; Version=1
Agente do utilizador
A cadeia do agente do utilizador do agente do utilizador
User-Agent: Mozilla/5.0 (compatível; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
Variar
Diz aos proxies a jusante como fazer corresponder os cabeçalhos de pedidos futuros para decidir
se a resposta em cache pode ser usada em vez de solicitar uma nova
do servidor de origem
Vary: User-Agent
X-Powered-By
Especifica a tecnologia (por exemplo, ASP.NET, PHP, JBoss) que suporta a aplicação Web
X-Powered-By: PHP/5.4.0
 
Sentido
O campo Sentido é um campo booleano pendente e contém as opções Faz ou Não faz.
Verificar
O campo Verificar permite a definição de valores de controlo em relação à Condição.
As opções disponíveis são: Contain, End, Equal, Exist, Have Length, Match RegEx, Match List, Start, Exceed Length
VERIFICAR
DESCRIÇÃO
EXEMPLO
Existir
Não se preocupa com o pormenor da condição, apenas com o facto de existir ou não existir
Host> Does> Exist
Início
A cadeia começa com o valor
Caminho> Does> Start> /secure
Fim
A cadeia termina com o valor
Caminho> Does> End - .jpg
Conter
A cadeia de caracteres contém efetivamente o valor
Request Header> Accept> Does> Contain> image
Igual
A cadeia de caracteres é igual ao valor
Anfitrião> Does> Equal> www.edgenexus.io
Ter comprimento
A cadeia tem um comprimento do valor
Anfitrião> O> tem comprimento> 16
www.edgenexus.io = VERDADEIRO
www.edgenexus.com = FALSO
Corresponder RegEx
Permite-lhe introduzir uma expressão regular completa compatível com Perl
IP de origem> Does> Match Regex
Lista de jogos
Permite-lhe fazer corresponder o valor a uma lista de valores. Isso é útil quando há, digamos, endereços IP específicos que precisam ser comparados. Os valores são separados por vírgulas (,) ou pip (|).
Source IP>  Does > Match List > 10.10.10.1, 10.10.10.2, 10.10.10.3 etc
Exceder o comprimento
Permite-lhe verificar se o valor excede o comprimento especificado.
Caminho > Faz > Excede o comprimento > 200
 
Passos para adicionar uma condição
Adicionar uma nova condição flightPATH é muito fácil. Um exemplo é mostrado acima.
1.     Clique no botão Adicionar novo na área Condição.
2.     Selecione uma condição na caixa pendente. Tomemos como exemplo o Anfitrião. Também pode escrever no campo, e o ADC mostrará o valor numa lista pendente.
3.     Escolha um Sentido. Por exemplo, Será que
4.     Selecionar uma verificação. Por exemplo, Conter
5.     Escolha um valor. Por exemplo, mycompany.com
O exemplo acima mostra que existem duas condições que têm de ser VERDADEIRAS para que a regra seja concluída
     A primeira é verificar se o objeto pedido é uma imagem
     O segundo verifica se o anfitrião no URL é www.imagepool.com
Avaliação
A capacidade de adicionar variáveis definíveis é uma capacidade atraente. Outros ADCs oferecem essa capacidade usando opções de script ou de linha de comando que não são ideais para qualquer pessoa. O EdgeADC permite-lhe definir qualquer número de variáveis através de uma GUI fácil de utilizar, como se mostra e descreve abaixo.
A definição da variável flightPATH inclui quatro entradas que precisam de ser efectuadas.
     Variável - este é o nome da variável
     Fonte - uma lista pendente de possíveis pontos de origem
     Detalhe - selecione valores a partir de uma lista pendente ou digite-os manualmente.
     Valor - o valor que a variável contém e pode ser um valor alfanumérico ou um RegEx para ajuste fino.
Variáveis incorporadas:
As variáveis incorporadas já foram codificadas, pelo que não é necessário criar uma entrada de análise para elas.
Pode utilizar qualquer uma das variáveis listadas abaixo na secção Ação.
     $sourceip$ - O endereço IP de origem do pedido
     $sourceport$ - A porta de origem que foi utilizada
     $clientip$ - O endereço IP do cliente
     $clientport$ - A porta utilizada pelo cliente
     $host$ - O anfitrião indicado no pedido
     $method$ - O método utilizado: GET, POST, etc.
     $path$ - O caminho especificado no pedido
     $querystring$ - A querystring utilizada no pedido
     $version$ - A versão do pedido HTTP no REQUEST (atualmente só são permitidas as versões 1 e 1.1).
     $resp$ - A RESPOSTA do servidor, por exemplo, 200OK, 404, etc.
     $geolocation$ - A localização GEO de onde o pedido foi originado.
ACÇÃO
ALVO
Ação = Redirecionar 302
Destino = HTTPs://$host$/404.html
Ação = Registo
Target = Um cliente de $sourceip$:$sourceport$ acabou de efetuar um pedido de página $path$
 
Explicação:
     Um cliente que aceda a uma página que não existe seria normalmente confrontado com a página de erro 404 do browser
     Em vez disso, o utilizador é redireccionado para o nome de anfitrião original que utilizou, mas o caminho incorreto é substituído por 404.html
     É adicionada uma entrada ao Syslog que diz: "Um cliente de 154.3.22.14:3454 acabou de pedir a página wrong.html".
Ação
A fase seguinte do processo consiste em adicionar uma ação associada à regra e condição flightPATH.
Neste exemplo, queremos reescrever a parte do caminho do URL para refletir o URL digitado pelo utilizador.
     Clique em Adicionar novo
     Escolha Reescrever caminho no menu suspenso Ação
     No campo Destino, digite $path$/myimages
     Clique em Atualizar
Esta ação irá adicionar /myimages ao caminho, pelo que o URL final passa a ser www.imagepool.com/myimages
Ação
Descrição
Exemplo
Adicionar cookie de pedido
Adicionar cookie de pedido detalhado na secção Destino com valor na secção Dados
Target= Cookie Data= MS-WSMAN=afYfn1CDqqCDqCVii
Adicionar cabeçalho do pedido
Adicionar um cabeçalho de pedido do tipo Target com valor na secção Data
Target= Aceitar Dados= imagem/png
Adicionar cookie de resposta
Adicionar o cookie de resposta detalhado na secção Destino com o valor na secção Dados
Target= Cookie Data= MS-WSMAN=afYfn1CDqqCDqCVii
Adicionar cabeçalho de resposta
Adicionar cabeçalho de pedido detalhado na secção Destino com valor na secção Dados
Target= Cache-Control Data= max-age=8888888
Corpo Substituir tudo
Pesquisar o corpo da resposta e substituir todas as instâncias
Target= http:// (Cadeia de pesquisa) Data= https:// (Cadeia de substituição)
Corpo Substituir primeiro
Pesquisar o corpo da resposta e substituir apenas a primeira instância
Target= http:// (Cadeia de pesquisa) Data= https:// (Cadeia de substituição)
Corpo Substituir Último
Pesquisar o corpo da resposta e substituir apenas a última instância
Target= http:// (Cadeia de pesquisa) Data= https:// (Cadeia de substituição)
Gota
Isto fará com que a ligação seja interrompida
Objetivo= N/A Dados= N/A
Correio eletrónico
Enviará uma mensagem de correio eletrónico para o endereço configurado em Eventos de correio eletrónico. Pode utilizar uma variável como endereço ou mensagem
Target= "flightPATH enviou este evento por correio eletrónico" Data= N/A
Evento de registo
Isto irá registar um evento no registo do sistema
Target= "flightPATH has logged this in syslog" Data= N/A
Redirecionar 301
Isto irá emitir um redireccionamento permanente
Objetivo= http://www.edgenexus.io Dados= N/A
Redirecionar 302
Isto irá emitir um redireccionamento temporário
Objetivo= http://www.edgenexus.io Dados= N/A
Remover cookie de pedido
Remover o cookie de pedido detalhado na secção Destino
Target= Cookie Data= MS-WSMAN=afYfn1CDqqCDqCVii
Remover o cabeçalho do pedido
Remover o cabeçalho do pedido detalhado na secção Destino
Destino=Dados do servidor=N/A
Remover resposta
Remover o cookie de resposta detalhado na secção Alvo Cookie
Objetivo=jnAccel
Remover resposta
Remover o cabeçalho de resposta detalhado na secção Destino Cabeçalho
Alvo= Etag Dados= N/A
Substituir o cookie de pedido
Substituir o cookie de pedido detalhado na secção Destino pelo valor na secção Dados
Target= Cookie Data= MS-WSMAN=afYfn1CDqqCDqCVii
Substituir o cabeçalho do pedido
Substituir o cabeçalho do pedido no Target pelo valor Data
Target= Connection Data= keep-alive
Substituir
Substituir o cookie de resposta detalhado na secção Destino pelo valor na secção Dados Cookie
Target=jnAccel=afYfn1CDqqCDqCVii Date=MSWSMAN=afYfn1CDqqCDqCVii
Substituir Resposta
Substituir o cabeçalho de resposta detalhado na secção Destino pelo valor na secção Dados Cabeçalho
Alvo= Dados do servidor= Retidos por razões de segurança
Reescrever caminho
Isto permitir-lhe-á redirecionar o pedido para um novo URL com base na condição
Target= /test/path/index.html$querystring$ Data= N/A
Utilizar um servidor seguro
Selecionar o servidor seguro ou serviço virtual a utilizar
Target=192.168.101:443 Data=N/A
Utilizar
Selecionar o servidor ou serviço virtual a utilizar
Alvo= 192.168.101:80 Dados= N/A
Encriptar cookie
Isto irá encriptar os cookies em 3DES e depois codificá-los em base64
Target= Introduzir o nome do cookie a ser encriptado, pode utilizar o * como um wild card no final Data= Introduzir uma frase-passe para a encriptação
 
Um cenário de regra flightPATH
Um cliente tem um sítio de comércio eletrónico e está a ter problemas com o bloqueio de cookies pelas versões mais recentes de um browser.
O cliente rastreia os problemas e descobre que a causa principal é a falta de etiquetagem "segura" e "no mesmo sítio" para os cookies em questão.
Vejamos como o flightPATH pode ajudar.
     Temos um cookie com o nome 'wp_woocommerce_session_97929973749972642'
     O nome do cookie é "wp_woocommerce_session_" com um valor de ID único aleatório de "97929973749972642" gerado pelo sistema de comércio eletrónico.
     As etiquetas para as etiquetas "same-site" e "secure" parecem estar em branco, pelo que o cookie é bloqueado pelas novas restrições de segurança do browser.
     Para evitar que isso aconteça, podemos criar as seguintes regras flightPATH.
     flightPATH Regra para o ID da sessão
o     Condição:
Deixar em branco
o     Avaliação:
Variável = $variable_1$
Fonte = cookie de resposta
Detalhe = wp_woocommerce_session_*
o     Ação
Ação = Substituir o cookie de resposta
Target = wp_woocommerce_session_*
Dados = $variable_1$
     Regra flightPATH para etiquetas
o     Condição:
Condição = Cookie de resposta
Correspondência = woocommerce_cart_hash
Sense = Faz
Verificar = Existe
Valor = Deixar em branco
o     Avaliação:
Variável = $variavel_2$
Fonte = Cookie de resposta
Detalhe = woocommerce_cart_hash
Valor = Deixar em branco
o     Ação:
Ação = Substituir o cookie de resposta
Target = woocommerce_cart_hash
Dados = $variable_2$,SameSite=None,Secure
Agora aplica as regras ao(s) serviço(s) virtual(ais) que as requerem.