2024-05-17 18:30:33 +08:00
|
|
|
// Copyright 2022 GoEdge goedge.cdn@gmail.com. All rights reserved.
|
2022-01-09 17:07:37 +08:00
|
|
|
|
|
|
|
|
package firewalls
|
|
|
|
|
|
|
|
|
|
// FirewallInterface 防火墙接口
|
|
|
|
|
type FirewallInterface interface {
|
|
|
|
|
// Name 名称
|
|
|
|
|
Name() string
|
|
|
|
|
|
|
|
|
|
// IsReady 是否已准备被调用
|
|
|
|
|
IsReady() bool
|
|
|
|
|
|
2022-04-21 18:14:53 +08:00
|
|
|
// IsMock 是否为模拟
|
|
|
|
|
IsMock() bool
|
|
|
|
|
|
2022-01-09 17:07:37 +08:00
|
|
|
// AllowPort 允许端口
|
|
|
|
|
AllowPort(port int, protocol string) error
|
|
|
|
|
|
|
|
|
|
// RemovePort 删除端口
|
|
|
|
|
RemovePort(port int, protocol string) error
|
|
|
|
|
|
|
|
|
|
// RejectSourceIP 拒绝某个源IP连接
|
|
|
|
|
RejectSourceIP(ip string, timeoutSeconds int) error
|
|
|
|
|
|
|
|
|
|
// DropSourceIP 丢弃某个源IP数据
|
2022-08-04 11:01:16 +08:00
|
|
|
// ip 要封禁的IP
|
|
|
|
|
// timeoutSeconds 过期时间
|
|
|
|
|
// async 是否异步
|
|
|
|
|
DropSourceIP(ip string, timeoutSeconds int, async bool) error
|
2022-01-09 17:07:37 +08:00
|
|
|
|
|
|
|
|
// RemoveSourceIP 删除某个源IP
|
|
|
|
|
RemoveSourceIP(ip string) error
|
|
|
|
|
}
|