mirror of
https://github.com/1Panel-dev/1Panel.git
synced 2025-12-19 05:49:02 +08:00
113 lines
3.6 KiB
Go
113 lines
3.6 KiB
Go
package dto
|
|
|
|
type FirewallBaseInfo struct {
|
|
Name string `json:"name"`
|
|
IsExist bool `json:"isExist"`
|
|
IsActive bool `json:"isActive"`
|
|
IsInit bool `json:"isInit"`
|
|
IsBind bool `json:"isBind"`
|
|
Version string `json:"version"`
|
|
PingStatus string `json:"pingStatus"`
|
|
}
|
|
|
|
type RuleSearch struct {
|
|
PageInfo
|
|
Info string `json:"info"`
|
|
Status string `json:"status"`
|
|
Strategy string `json:"strategy"`
|
|
Type string `json:"type" validate:"required"`
|
|
}
|
|
|
|
type FirewallOperation struct {
|
|
Operation string `json:"operation" validate:"required,oneof=start stop restart disablePing enablePing"`
|
|
WithDockerRestart bool `json:"withDockerRestart"`
|
|
}
|
|
|
|
type PortRuleOperate struct {
|
|
ID uint `json:"id"`
|
|
Operation string `json:"operation" validate:"required,oneof=add remove"`
|
|
Chain string `json:"chain"`
|
|
Address string `json:"address"`
|
|
Port string `json:"port" validate:"required"`
|
|
Protocol string `json:"protocol" validate:"required,oneof=tcp udp tcp/udp"`
|
|
Strategy string `json:"strategy" validate:"required,oneof=accept drop"`
|
|
|
|
Description string `json:"description"`
|
|
}
|
|
|
|
type ForwardRuleOperate struct {
|
|
ForceDelete bool `json:"forceDelete"`
|
|
Rules []struct {
|
|
Operation string `json:"operation" validate:"required,oneof=add remove"`
|
|
Num string `json:"num"`
|
|
Protocol string `json:"protocol" validate:"required,oneof=tcp udp tcp/udp"`
|
|
Interface string `json:"interface"`
|
|
Port string `json:"port" validate:"required"`
|
|
TargetIP string `json:"targetIP"`
|
|
TargetPort string `json:"targetPort" validate:"required"`
|
|
} `json:"rules"`
|
|
}
|
|
|
|
type UpdateFirewallDescription struct {
|
|
Type string `json:"type"`
|
|
Chain string `json:"chain"`
|
|
SrcIP string `json:"srcIP"`
|
|
DstIP string `json:"dstIP"`
|
|
SrcPort string `json:"srcPort"`
|
|
DstPort string `json:"dstPort"`
|
|
Protocol string `json:"protocol"`
|
|
Strategy string `json:"strategy" validate:"required,oneof=accept drop"`
|
|
|
|
Description string `json:"description"`
|
|
}
|
|
|
|
type AddrRuleOperate struct {
|
|
ID uint `json:"id"`
|
|
Operation string `json:"operation" validate:"required,oneof=add remove"`
|
|
Address string `json:"address" validate:"required"`
|
|
Strategy string `json:"strategy" validate:"required,oneof=accept drop"`
|
|
|
|
Description string `json:"description"`
|
|
}
|
|
|
|
type PortRuleUpdate struct {
|
|
OldRule PortRuleOperate `json:"oldRule"`
|
|
NewRule PortRuleOperate `json:"newRule"`
|
|
}
|
|
|
|
type AddrRuleUpdate struct {
|
|
OldRule AddrRuleOperate `json:"oldRule"`
|
|
NewRule AddrRuleOperate `json:"newRule"`
|
|
}
|
|
|
|
type BatchRuleOperate struct {
|
|
Type string `json:"type" validate:"required"`
|
|
Rules []PortRuleOperate `json:"rules"`
|
|
}
|
|
|
|
type IptablesOp struct {
|
|
Name string `json:"name" validate:"required,oneof=1PANEL_INPUT 1PANEL_OUTPUT 1PANEL_BASIC"`
|
|
Operate string `json:"operate" validate:"required,oneof=init-base init-forward init-advance bind-base unbind-base bind unbind"`
|
|
}
|
|
|
|
type IptablesRuleOp struct {
|
|
Operation string `json:"operation" validate:"required,oneof=add remove"`
|
|
ID uint `json:"id"`
|
|
Chain string `json:"chain" validate:"required,oneof=1PANEL_BASIC 1PANEL_BASIC_BEFORE 1PANEL_INPUT 1PANEL_OUTPUT"`
|
|
Protocol string `json:"protocol"`
|
|
SrcIP string `json:"srcIP"`
|
|
SrcPort uint `json:"srcPort"`
|
|
DstIP string `json:"dstIP"`
|
|
DstPort uint `json:"dstPort"`
|
|
Strategy string `json:"strategy" validate:"required,oneof=accept drop reject"`
|
|
Description string `json:"description"`
|
|
}
|
|
|
|
type IptablesBatchOperate struct {
|
|
Rules []IptablesRuleOp `json:"rules"`
|
|
}
|
|
|
|
type IptablesChainStatus struct {
|
|
IsBind bool `json:"isBind"`
|
|
DefaultStrategy string `json:"defaultStrategy"`
|
|
}
|