|
|
(236 revisões intermediárias por 2 usuários não estão sendo mostradas) |
Linha 1: |
Linha 1: |
− | =L7 Plugins=
| |
− | A dúvida de muitos usuários do Speedr quando se trata de Plugins é grande, e estou criando esse tópico para diminuir as inúmeras dúvidas!
| |
− | ==Qual a real utilidade do L7 Plugin? ==
| |
− | Os plugins do Speedr tem como principal ação interceptar o tráfego através de '''IP/CIDR, Domínios e URL''' visando melhorar ou otimizar ainda mais a performance do Speedr.
| |
− | =Como criar um Plugin?=
| |
− | Primeiramente você deverá abrir no seu navegador o painel do Speedr no endereço: http://ip_do_seu_speedr:8080 em seguida abra o '''APP L7 Plugins'''.
| |
− | <div class="img-responsive align-center">[[Arquivo:L7-PLUGIN-APP.png]]</div><div class="img-responsive align-center">[[Arquivo:L7-PLUGIN-INFO.png]]</div>
| |
| | | |
− | Ao abrir o APP L7 Plugins no canto superior você vai clicar em '''Novo'''.
| + | =Acesso Externo WEB= |
| | | |
− | ==Descrição== | + | ==IP > Firewall > Nat== |
− | Nessa janela inicial, você deverá preencher o Nome, Categoria, Descrição, esses dados não tem influencia nenhuma no funcionamento do Plugin, vai ajudar apenas na identificação do mesmo.
| |
− | <div class="img-responsive align-center">[[Arquivo:L7-PLUGIN-DESC.png]]</div>
| |
− | <p>'''IMPORTANTE: o ID não poderá ser duplicado, portanto na criação de um Plugin cuidado para não usar um ID já existente, pois o sistema não vai aceitar.'''</p>
| |
− | <p>'''Habilitado:''' Essa função vem desabilitada por padrão, você só deve habilitar, após concluir todas as configurações de seu Plugin, pois a partir do momento que for marcado o Plugin estará em funcionamento no seu Speedr. </p>
| |
− | # '''Ícone:''' Dêem preferência a imagens no formato '''JPG, PNG, GIF''' por ser mais leve não esqueçam que o sistema só vai permitir o tamanho máximo de '''16px 16px'''. Para adicionar um ícone é muito simples:
| |
− | # Clique em '''Escolher Arquivo''', procure o seu ícone e em seguida pressione o botão '''Importar'''.
| |
| | | |
− | =Condições de Ativação=
| + | '''Para adicionar clique no botão:''' ([[Arquivo:MikrotikBotaoAdd.png|link=]]) |
− | <p>Nessa área você pode configurar '''IP/CIDR, Header, URL/DOM Allow e Reject''' entre outros. </p>
| |
− | # '''Protocolo: ''' ALL, não precisa alterar, pois o FTP não tem tanta utilidade nos dias atuais.
| |
− | # '''Método: ''' O Speedr suporta os métodos '''GET, POST e HEAD''' você pode usar todos juntos.
| |
− | # '''Tam. Min. do Objeto: ''' O padrão mínimo é de '''0 bytes''', más é possível definir o limite mínimo em KBytes e Megabytes.
| |
− | # '''Prioridade: ''' A prioridade funciona na existência de 2 ou mais plugins que façam cache do mesmo conteúdo, se a prioridade do primeiro plugin é 10 e a do segundo é 15, o sistema automaticamente irá priorizar o plugin que tenha menor Prioridade, nesse caso é o 10.
| |
| | | |
− | ==IP/CIDR==
| + | *'''Aba General >''' |
− | Por padrão já vem definido o Default: ALLOW, para que todo IP ou Range seja liberado, porém você pode definir sem nenhuma complicação IP/CIDR para serem exclusivamente bloqueadas ou permitidas clicando em NOVO.
| + | **'''Chain: '''dstnat |
| + | **'''Protocol: '''tcp |
| + | **'''Dst. Port: '''8080 |
| + | **'''In. Interface: '''ether1 (Interface de Entrada de LINK) |
| | | |
− | ==URL/DOM Allow==
| + | <div class="img-responsive align-center">[[Arquivo:MikrotikIpFirewallNatAccExt1.png|link=]]</div> |
− | <div class="img-responsive align-center">[[Arquivo:L7-PLUGIN-ALLOW.png]]</div><div class="img-responsive align-center">[[Arquivo:L7-PLUGIN-MATCH.png]]</div> | |
| | | |
− | Esse área é realmente indispensável, pois é nela que você poderá definir os '''Domínios e URLs''' que o plugin irá capturar.
| |
− | <p>'''OBS: ''' O Default nesse caso é '''E''', porém você também pode optar pelo '''OU'''
| |
− | <BR>'''Qual a diferença? ''' No caso '''E''', o sistema vai verificar todos os domínios e testar com cada uma das URLs. No caso '''OU''', o sistema vai verificar todos os domínios e URLs individualmente sem unir domínio e URL.
| |
− | <BR>'''Posso adicionar quantos Domínios e URLs? ''' Não existe nenhum limite pré-estabelecido, caso queira adicionar vários lembre-se apenas do detalhe abaixo. </p>
| |
− | # '''PARTIAL MATCH: '''Considera apenas parte do Domínio ou URL.
| |
− | # '''FULL MATCH: '''O sistema vai verificar especificamente o que estiver digitado na String.
| |
− | # '''SPEED REGEX SENSITIVE/INSENSITIVE: '''Você poderia usar ‘’’REGEX’’’ (Expressões Regulares), na String, definindo se o sistema vai diferenciar Maiúsculas e Minúsculas .
| |
− | ==URL/DOM Reject ==
| |
− | <div class="img-responsive align-center">[[Arquivo:L7-PLUGIN-REJECT.png]]</div>
| |
− | Ao contrário da condição acima, esse Reject irá rejeitar (bypassar) todos os domínios e urls adicionados.
| |
| | | |
− | =Ação=
| + | *'''Aba Action>''' |
− | <div class="img-responsive align-center">[[Arquivo:L7-PLUGIN-ACAO.png]]</div>
| + | **'''Action: '''dst-nat |
− | Essa parte é muito importante, pois é nela vamos definir toda a reescrita, e como o Plugin vai identificar e reescrever!
| + | **'''To Address: '''10.10.150.2 (IP do Speedr) |
− | Em opções, já temos a descrição detalhada, então vamos proceder para próximo passo.
| + | **'''To Ports: '''8080 |
| | | |
− | ==Métodos de Reescrita:==
| + | <div class="img-responsive align-center">[[Arquivo:MikrotikIpFirewallNatAccExt2.PNG|link=]]</div> |
− | Vamos usar para exemplificar as reescritas a URL abaixo citada.<br>
| |
− | <p>'''URL COMPLETA: ''' http://wiki.brbyte.com/wiki/Especial:Arquivos_novos?like=btn&limit=50&offset=
| |
− | </p>
| |
− | ==REQ_R_URL:==
| |
− | '''STRING: ''' brbyte /
| |
− | <br>O sistema vai considerar a STRING + URL até o '''? '''.
| |
− | '''URL REESCRITA: '''http://speedr.brbyte/wiki/Especial:Arquivos_novos
| |
− | ==REQ_SCRIPT: ==
| |
− | '''STRING: '''|tld|/brbyte/|r_url_path|
| |
− | <BR>O sistema vai identificar todas as tags de identificação, |tld|, |r_url_path| entre outras.
| |
− | '''URL REESCRITA: ''' http://speedr.brbyte.com/wiki/Especial:Arquivos_novos
| |
− | ==REG_AND_REPL_SCRIPT: ==
| |
− | '''STRING: '''brbyte.midia/|url_path|
| |
− | <BR>Praticamente idêntico ao anterior, porém vai identificar os cabeçalhos.
| |
− | '''URL REESCRITA: ''' http://speedr.brbyte.midia/wiki/Especial:Arquivos_novos?like=btn&limit=50&offset=
| |
− | ==DYNASIG_NO_FALLBACK: ==
| |
− | '''STRING: ''' NULL
| |
− | <BR>Marca o objeto dinamicamente, com uma identificação única, podendo usar a NULL, pois não há necessidade de reescrita.
| |
− | ==DYNASIG_FALLBACK: ==
| |
− | O DYNASIG após uma tentativa falha de realizar a identificação do objeto, o mesmo será identificado com o método '''REG_AND_REPL_SCRIPT'''
| |
− | ==REDIRECT_URL_REWRITE: ==
| |
− | Reescreve a URL de Destino com a STRING digitada!
| |
− | STRING: google.com.br/brbyte
| |
− | '''URL REESCRITA: ''' google.com.br/brbyte
| |
− | =QOS=
| |
− | <div class="img-responsive align-center">[[Arquivo:L7-PLUGIN-QOS.png]]</div> | |
− | <p>Também é possível priorizar o tráfego marcando com TOS o MISS/HIT!</p>
| |
| | | |
− | =IMPORTANTE=
| |
− | <p>Sem parâmetros:
| |
| | | |
− | |tld|
| + | '''Regras''' |
− | Será substituída pelo TLD da presente requisição.
| + | /ip firewall nat |
− | Ex: http://videos00.abcd.cdn.com/ será substituído por “cdn.com”</p>
| + | add action=dst-nat chain=dstnat comment="SPEEDR - EXTERNO WEB" dst-port=8080 in-interface=\ |
| + | ether1 protocol=tcp to-addresses=10.10.150.2 to-ports=8080 |
| | | |
− | <p>|url_path|
| + | =Acesso Externo SSH= |
| | | |
− | Será substituída pela URL Path da presente requisição.
| + | ==IP > Firewall > Nat== |
− | Ex: http://abc.com/path00/path01?abc=req será substituída por “path00/path01?abc=req” </p>
| |
| | | |
| + | '''Para adicionar clique no botão:''' ([[Arquivo:MikrotikBotaoAdd.png|link=]]) |
| | | |
− | <p>|r_url_path|
| + | *'''Aba General >''' |
| + | **'''Chain: '''dstnat |
| + | **'''Protocol: '''tcp |
| + | **'''Dst. Port: '''2229 |
| + | **'''In. Interface: '''ether1 (Interface de Entrada de LINK) |
| | | |
− | Será substituída pela URL Path da presente requisição, eliminando tudo após o caracter ?, caso presente
| + | <div class="img-responsive align-center">[[Arquivo:MikrotikIpFirewallNatAccExt3.png|link=]]</div> |
| | | |
− | Ex: http://xyz.com/path00/abc?xyz.com será substituída por “path00/abc” </p>
| |
| | | |
− | <p>|last_url_path|
| + | *'''Aba Action>''' |
| + | **'''Action: '''dst-nat |
| + | **'''To Address: '''10.10.150.2 (IP do Speedr) |
| + | **'''To Ports: '''2229 |
| | | |
− | Substituída pela ultima parte do caminho presente na URL Path.
| + | <div class="img-responsive align-center">[[Arquivo:MikrotikIpFirewallNatAccExt4.png|link=]]</div> |
− | Ex: http://xyz.com/path00/path01/path02 sera substituida por “path02” </p>
| |
| | | |
− | <p>|last_r_url_path|
| |
| | | |
− | Substituída pela ultima parte do caminho presente na URL Path, eliminando tudo após o caracter ?, caso presente
| + | '''Regras''' |
− | Ex: http://xyz.com/path00/path01/abc?xyz.com será substituída por “abc” </p>
| + | /ip firewall nat |
| + | add action=dst-nat chain=dstnat comment="SPEEDR - EXTERNO SSH" dst-port=2229 in-interface=\ |
| + | ether1 protocol=tcp to-addresses=10.10.150.2 to-ports=2229 |
| | | |
− | <p>Com parâmetros (sempre numéricos):
| + | __NOEDITSECTION__ |
− | | + | [[Category:Teste]] |
− | |last_dirs=XX|
| |
− | | |
− | http://xyz.com/path00/path01/path02/path03
| |
− | | |
− | Caso XX == 00 – substitui por “path03”
| |
− | Caso XX == 01 – substitui por “path02/path03” </p>
| |
− | | |
− | <p>|r_last_dirs=XX|
| |
− | | |
− | Mesmo caso da anterior, mas elimina tudo após o caracter ?, caso presente. </p>
| |
− | | |
− | <p>|dir=XX|
| |
− | | |
− | Aponta um pedaço especifico na URLPath.
| |
− | | |
− | Ex:
| |
− | | |
− | http://xyz.com/path00/path01/path02/path03
| |
− | | |
− | Caso XX == 00 – substitui por “path00”
| |
− | Caso XX == 01 – substitui por “path01” </p>
| |
− | | |
− | <p>|r_dir=XX|
| |
− | | |
− | Mesmo caso da anterior, mas elimina tudo após o caracter ?, caso presente.
| |
− | | |
− | Acesso a variáveis da requisição:
| |
− | | |
− | Alem destas palavras chave, qualquer variável sendo passada em uma requisição podem ser utilizados na identificação do conteúdo, utilizando o caracter $
| |
− | | |
− | Ex: http://abc.com/req?var00=xyz&var01=123&abc=speedr
| |
− | | |
− | $var00$ seria substituído por xyz
| |
− | | |
− | $var01$ seria substituído por 123
| |
− | | |
− | $abc$ seria substituído por speedr
| |
− | | |
− | Qualquer variável não presente na URL será substituída pela string padrão NULL. </p>
| |