F5-iRule

1. 编辑工具 - F5-iRule Editor

if 用法及log日志打印

when HTTP_REQUEST {
    # successed
    if  {[HTTP::uri] contains "/soap/abc?action=save"} {
        reject
    }
    # successed log
    if  {[HTTP::uri] contains "/soap/bee?action=save"} {
        log local0. "-------soap/bee----------"
        log local0. "HTTP::uri:[HTTP::uri]"
        log local0. "HTTP::path:[HTTP::path]"
        log local0. "HTTP::query:[HTTP::query]"
        log local0. "HTTP::method:[HTTP::method]"
    }
   
    # successed
    switch -glob [string tolower [HTTP::uri]] {
        "/soap/fuleyou?action=save" {
            switch -glob [string tolower [HTTP::method]] {
                "post" {
                    reject
                }
                "get" {
                    log local0. "-------soap/fuleyou----------"
                    log local0. "HTTP::uri:[HTTP::uri]"
                    log local0. "HTTP::path:[HTTP::path]"
                    log local0. "HTTP::query:[HTTP::query]"
                    log local0. "HTTP::method:[HTTP::method]"
                }
            }
        }
    }

2. switch用法

#F5规则根据路径path屏蔽相关接口
when HTTP_REQUEST {
set s_path [HTTP::path] set s_query [HTTP::query] switch -glob [string tolower $s_path] { "/soap/pswd" { switch -glob [string tolower $s_query] { "action=sign*" { reject } "action=logout*" { reject } "action=reset*" { reject } "action=update*" { reject } } }
}

3. F5-ip 白名单

ip_block_irules ( my_whitelist为自定义的 data group list)

when CLIENT_ACCEPTED {
  if {[ class match [IP::client_addr] equals my_whitelist ]} {
       pool pool-app
   }
   else {reject}
}
**************************************************************************************
当你的才华还撑不起你的野心的时候,你就应该静下心来学习;当你的能力还驾驭不了你的目标时,就应该沉下心来,历练;梦想,不是浮躁,而是沉淀和积累,只有拼出来的美丽,没有等出来的辉煌,机会永远是留给最渴望的那个人,学会与内心深处的你对话,问问自己,想 要怎样的人生,静心学习,耐心沉淀,送给自己,共勉。
**************************************************************************************
原文地址:https://www.cnblogs.com/macoffee/p/14809388.html