Skip to main content

hids

函数名函数描述/介绍
hids.CPUAverageCPUAverage 获取当前系统的 CPU 使用率平均值
hids.CPUAverageCallbackCPUPercentCallback 当 CPU 使用率平均值发生变化时,调用 callback 函数
hids.CPUPercentCPUPercent 获取当前系统的 CPU 使用率
hids.CPUPercentCallbackCPUPercentCallback 当 CPU 使用率发生变化时,调用 callback 函数
hids.CheckAuditSystem
hids.GetConnectionStatsGetConnectionStats 获取连接统计信息
hids.GetConnectionsByPidGetConnectionsByPid 获取指定进程的连接
hids.GetConnectionsByPortGetConnectionsByPort 获取指定端口的连接
hids.GetCurrentProcessInfoGetCurrentProcessInfo 获取当前进程信息
hids.GetEstablishedConnectionsGetEstablishedConnections 获取已建立的连接
hids.GetFileHashMD5GetFileHashMD5 获取文件MD5哈希
hids.GetFileHashSHA256GetFileHashSHA256 获取文件SHA256哈希
hids.GetListeningPortsGetListeningPorts 获取所有监听端口
hids.GetProcessAncestorsGetProcessAncestors 获取进程的所有祖先进程(父进程链)
hids.GetProcessByPidGetProcessByPid 根据PID获取进程详细信息
hids.GetProcessChildrenGetProcessChildren 获取进程的所有子进程
hids.GetProcessParentGetProcessParent 获取进程的父进程信息
hids.GetProcessTreeGetProcessTree 获取进程树(从指定PID开始,或从init进程开始)
hids.GetTCPConnectionsGetTCPConnections 获取TCP连接列表
hids.GetUDPConnectionsGetUDPConnections 获取UDP连接列表
hids.InitInit 初始化全局健康管理器
hids.KillProcessKillProcess 终止进程
hids.MemoryPercentMemoryPercent 获取当前系统的内存使用率
hids.MemoryPercentCallbackMemoryPercentCallback 当内存使用率发生变化时,调用 callback
hids.NetstatNetstat 获取网络连接列表(类似netstat命令)
hids.NewAuditMonitor
hids.NewConnectionFilterNewConnectionFilter 创建新的连接过滤器
hids.NewConnectionMonitorNewConnectionMonitor 创建连接监控器
hids.NewProcessFilterNewProcessFilter 创建新的进程过滤器
hids.NewProcessMonitorNewProcessMonitor 创建进程监控器
hids.NewWhitelistRuleNewWhitelistRule 创建新的白名单规则
hids.PSPS 获取进程列表,可选择使用过滤器
hids.ProcessExistsProcessExists 检查指定PID的进程是否存在
hids.SetMonitorIntervalSetMonitorInterval 设置全局健康管理器的监控间隔(单位:秒),如果在全局健康管理器运行时调用,会重置全局健康管理器
hids.ShowMonitorIntervalShowMonitorInterval 在标准输出中输出全局健康管理器的监控间隔(单位:秒)
hids.WatchAuditEventsWatchAuditEvents 简化的监控函数 - 监控audit事件
hids.WatchConnectionsWatchConnections 简单的连接监控函数,监控指定时长后返回事件列表
hids.WatchProcessWatchProcess 简单的进程监控函数,监控指定时长后返回事件列表
hids.WithAuditBufferSizeWithAuditBufferSize 设置缓冲区大小
hids.WithAuditFilterCommandsWithAuditFilterCommands 设置命令过滤器(支持正则)
hids.WithAuditFilterLoginUsersWithAuditFilterLoginUsers 设置原始登录用户过滤器(按 LoginUser 过滤) 过滤原始登录的用户(例如 SSH 登录的用户,即使后来 su 到其他用户)
hids.WithAuditFilterUsersWithAuditFilterUsers 设置当前用户过滤器(按 Username 过滤) 过滤当前执行操作的用户(例如 su 后的用户)
hids.WithAuditMonitorCommandWithAuditMonitorCommand 设置是否监控命令执行事件
hids.WithAuditMonitorLoginWithAuditMonitorLogin 设置是否监控登录事件
hids.WithConnectionFilterWithConnectionFilter 设置连接过滤器
hids.WithConnectionHistoryWithConnectionHistory 启用历史记录
hids.WithConnectionMonitorIntervalWithConnectionMonitorInterval 设置监控间隔
hids.WithOnCommandEventWithOnCommandEvent 设置命令执行事件回调
hids.WithOnConnectionDisappearWithOnConnectionDisappear 设置连接消失回调
hids.WithOnLoginEventWithOnLoginEvent 设置登录事件回调
hids.WithOnNewConnectionWithOnNewConnection 设置新连接回调
hids.WithOnProcessCreateWithOnProcessCreate 设置进程创建回调
hids.WithOnProcessExitWithOnProcessExit 设置进程退出回调
hids.WithProcessMonitorIntervalWithProcessMonitorInterval 设置监控间隔
hids.WithWhitelistWithWhitelist 设置进程白名单规则

函数定义#

CPUAverage#

详细描述#

CPUAverage 获取当前系统的 CPU 使用率平均值

Example:

printf("%f%%\n", hids.CPUAverage())

定义#

CPUAverage() float64

返回值#

返回值(顺序)返回值类型返回值解释
r1float64

CPUAverageCallback#

详细描述#

CPUPercentCallback 当 CPU 使用率平均值发生变化时,调用 callback 函数

Example:

hids.Init()hids.CPUAverageCallback(func(i) {if (i > 50) { println("cpu average precent is over 50%") } // 当 CPU 使用率平均值超过50%时输出信息})

定义#

CPUAverageCallback(callback func(i float64))

参数#

参数名参数类型参数解释
callbackfunc(i float64)

CPUPercent#

详细描述#

CPUPercent 获取当前系统的 CPU 使用率

Example:

printf("%f%%\n", hids.CPUPercent())

定义#

CPUPercent() float64

返回值#

返回值(顺序)返回值类型返回值解释
r1float64

CPUPercentCallback#

详细描述#

CPUPercentCallback 当 CPU 使用率发生变化时,调用 callback 函数

Example:

hids.Init()hids.CPUPercentCallback(func(i) {if (i > 50) { println("cpu precent is over 50%") } // 当 CPU 使用率超过50%时输出信息})

定义#

CPUPercentCallback(callback func(i float64))

参数#

参数名参数类型参数解释
callbackfunc(i float64)

CheckAuditSystem#

详细描述#

定义#

CheckAuditSystem() (*AuditStatus, error)

返回值#

返回值(顺序)返回值类型返回值解释
r1*AuditStatus
r2error

GetConnectionStats#

详细描述#

GetConnectionStats 获取连接统计信息

Example:

stats, err = hids.GetConnectionStats()println("Total connections:", stats.Total)println("TCP connections:", stats.TCPCount)println("Listening ports:", stats.ListenCount)

定义#

GetConnectionStats() (*ConnectionStats, error)

返回值#

返回值(顺序)返回值类型返回值解释
r1*ConnectionStats
r2error

GetConnectionsByPid#

详细描述#

GetConnectionsByPid 获取指定进程的连接

Example:

conns, err = hids.GetConnectionsByPid(1234)

定义#

GetConnectionsByPid(pid int32) ([]*ConnectionInfo, error)

参数#

参数名参数类型参数解释
pidint32

返回值#

返回值(顺序)返回值类型返回值解释
r1[]*ConnectionInfo
r2error

GetConnectionsByPort#

详细描述#

GetConnectionsByPort 获取指定端口的连接

Example:

conns, err = hids.GetConnectionsByPort(80)

定义#

GetConnectionsByPort(port uint32) ([]*ConnectionInfo, error)

参数#

参数名参数类型参数解释
portuint32

返回值#

返回值(顺序)返回值类型返回值解释
r1[]*ConnectionInfo
r2error

GetCurrentProcessInfo#

详细描述#

GetCurrentProcessInfo 获取当前进程信息

Example:

info, err = hids.GetCurrentProcessInfo()println("Current PID:", info.Pid)

定义#

GetCurrentProcessInfo() (*ProcessInfo, error)

返回值#

返回值(顺序)返回值类型返回值解释
r1*ProcessInfo
r2error

GetEstablishedConnections#

详细描述#

GetEstablishedConnections 获取已建立的连接

Example:

conns, err = hids.GetEstablishedConnections()

定义#

GetEstablishedConnections() ([]*ConnectionInfo, error)

返回值#

返回值(顺序)返回值类型返回值解释
r1[]*ConnectionInfo
r2error

GetFileHashMD5#

详细描述#

GetFileHashMD5 获取文件MD5哈希

Example:

hash = hids.GetFileHashMD5("/usr/bin/nginx")

定义#

GetFileHashMD5(path string) (string, error)

参数#

参数名参数类型参数解释
pathstring

返回值#

返回值(顺序)返回值类型返回值解释
r1string
r2error

GetFileHashSHA256#

详细描述#

GetFileHashSHA256 获取文件SHA256哈希

Example:

hash = hids.GetFileHashSHA256("/usr/bin/nginx")

定义#

GetFileHashSHA256(path string) (string, error)

参数#

参数名参数类型参数解释
pathstring

返回值#

返回值(顺序)返回值类型返回值解释
r1string
r2error

GetListeningPorts#

详细描述#

GetListeningPorts 获取所有监听端口

Example:

conns, err = hids.GetListeningPorts()for _, conn := range conns {
    println("Port:", conn.LocalPort, "PID:", conn.Pid)
}

定义#

GetListeningPorts() ([]*ConnectionInfo, error)

返回值#

返回值(顺序)返回值类型返回值解释
r1[]*ConnectionInfo
r2error

GetProcessAncestors#

详细描述#

GetProcessAncestors 获取进程的所有祖先进程(父进程链)

Example:

ancestors, err = hids.GetProcessAncestors(1234)
    for _, ancestor := range ancestors {        println("Ancestor PID:", ancestor.Pid, "Name:", ancestor.Name)    }

定义#

GetProcessAncestors(pid int32) ([]*ProcessInfo, error)

参数#

参数名参数类型参数解释
pidint32

返回值#

返回值(顺序)返回值类型返回值解释
r1[]*ProcessInfo
r2error

GetProcessByPid#

详细描述#

GetProcessByPid 根据PID获取进程详细信息

Example:

info, err = hids.GetProcessByPid(1234)
    if err == nil {        println("Process Name:", info.Name)        println("Process User:", info.Username)    }

定义#

GetProcessByPid(pid int32) (*ProcessInfo, error)

参数#

参数名参数类型参数解释
pidint32

返回值#

返回值(顺序)返回值类型返回值解释
r1*ProcessInfo
r2error

GetProcessChildren#

详细描述#

GetProcessChildren 获取进程的所有子进程

Example:

children, err = hids.GetProcessChildren(1234)
    for _, child := range children {        println("Child PID:", child.Pid, "Name:", child.Name)    }

定义#

GetProcessChildren(pid int32) ([]*ProcessInfo, error)

参数#

参数名参数类型参数解释
pidint32

返回值#

返回值(顺序)返回值类型返回值解释
r1[]*ProcessInfo
r2error

GetProcessParent#

详细描述#

GetProcessParent 获取进程的父进程信息

Example:

parent, err = hids.GetProcessParent(1234)
    if err == nil {        println("Parent PID:", parent.Pid, "Name:", parent.Name)    }

定义#

GetProcessParent(pid int32) (*ProcessInfo, error)

参数#

参数名参数类型参数解释
pidint32

返回值#

返回值(顺序)返回值类型返回值解释
r1*ProcessInfo
r2error

GetProcessTree#

详细描述#

GetProcessTree 获取进程树(从指定PID开始,或从init进程开始)

Example:

// 获取指定进程的进程树tree, err = hids.GetProcessTree(1234)
// 获取整个系统的进程树tree, err = hids.GetProcessTree(1)

定义#

GetProcessTree(rootPid int32) (*ProcessTreeNode, error)

参数#

参数名参数类型参数解释
rootPidint32

返回值#

返回值(顺序)返回值类型返回值解释
r1*ProcessTreeNode
r2error

GetTCPConnections#

详细描述#

GetTCPConnections 获取TCP连接列表

Example:

conns, err = hids.GetTCPConnections()

定义#

GetTCPConnections() ([]*ConnectionInfo, error)

返回值#

返回值(顺序)返回值类型返回值解释
r1[]*ConnectionInfo
r2error

GetUDPConnections#

详细描述#

GetUDPConnections 获取UDP连接列表

Example:

conns, err = hids.GetUDPConnections()

定义#

GetUDPConnections() ([]*ConnectionInfo, error)

返回值#

返回值(顺序)返回值类型返回值解释
r1[]*ConnectionInfo
r2error

Init#

详细描述#

Init 初始化全局健康管理器

Example:

hids.Init()

定义#

Init()

KillProcess#

详细描述#

KillProcess 终止进程

Example:

err = hids.KillProcess(1234)

定义#

KillProcess(pid int32) error

参数#

参数名参数类型参数解释
pidint32

返回值#

返回值(顺序)返回值类型返回值解释
r1error

MemoryPercent#

详细描述#

MemoryPercent 获取当前系统的内存使用率

Example:

printf("%f%%\n", hids.MemoryPercent())

定义#

MemoryPercent() float64

返回值#

返回值(顺序)返回值类型返回值解释
r1float64

MemoryPercentCallback#

详细描述#

MemoryPercentCallback 当内存使用率发生变化时,调用 callback

Example:

hids.Init()hids.MemoryPercentCallback(func(i) {if (i > 50) { println("memory precent is over 50%") } // 当内存使用率超过50%时输出信息})

定义#

MemoryPercentCallback(callback func(i float64))

参数#

参数名参数类型参数解释
callbackfunc(i float64)

Netstat#

详细描述#

Netstat 获取网络连接列表(类似netstat命令)

Example:

// 获取所有连接conns, err = hids.Netstat()
// 使用过滤器filter = hids.NewConnectionFilter()filter.Status = "LISTEN"conns, err = hids.Netstat(filter)

定义#

Netstat(filters ...*ConnectionFilter) ([]*ConnectionInfo, error)

参数#

参数名参数类型参数解释
filters...*ConnectionFilter

返回值#

返回值(顺序)返回值类型返回值解释
r1[]*ConnectionInfo
r2error

NewAuditMonitor#

详细描述#

定义#

NewAuditMonitor(opts ...AuditMonitorOption) (*AuditMonitor, error)

参数#

参数名参数类型参数解释
opts...AuditMonitorOption

返回值#

返回值(顺序)返回值类型返回值解释
r1*AuditMonitor
r2error

NewConnectionFilter#

详细描述#

NewConnectionFilter 创建新的连接过滤器

Example:

filter = hids.NewConnectionFilter()filter.Status = "LISTEN"filter.Protocol = "tcp"conns = hids.Netstat(filter)

定义#

NewConnectionFilter() *ConnectionFilter

返回值#

返回值(顺序)返回值类型返回值解释
r1*ConnectionFilter

NewConnectionMonitor#

详细描述#

NewConnectionMonitor 创建连接监控器

Example:

monitor = hids.NewConnectionMonitor(
    hids.WithConnectionMonitorInterval(1),    hids.WithOnNewConnection(func(event) {        println("New connection:", event.Connection.LocalAddr, "->", event.Connection.RemoteAddr)    }),
)

定义#

NewConnectionMonitor(opts ...ConnectionMonitorOption) *ConnectionMonitor

参数#

参数名参数类型参数解释
opts...ConnectionMonitorOption

返回值#

返回值(顺序)返回值类型返回值解释
r1*ConnectionMonitor

NewProcessFilter#

详细描述#

NewProcessFilter 创建新的进程过滤器

Example:

filter = hids.NewProcessFilter()filter.Name = "nginx"processes = hids.PS(filter)

定义#

NewProcessFilter() *ProcessFilter

返回值#

返回值(顺序)返回值类型返回值解释
r1*ProcessFilter

NewProcessMonitor#

详细描述#

NewProcessMonitor 创建进程监控器

Example:

monitor = hids.NewProcessMonitor(
    hids.WithProcessMonitorInterval(1),    hids.WithOnProcessCreate(func(event) {        println("New process:", event.Process.Name)    }),
)

定义#

NewProcessMonitor(opts ...ProcessMonitorOption) *ProcessMonitor

参数#

参数名参数类型参数解释
opts...ProcessMonitorOption

返回值#

返回值(顺序)返回值类型返回值解释
r1*ProcessMonitor

NewWhitelistRule#

详细描述#

NewWhitelistRule 创建新的白名单规则

Example:

rule = hids.NewWhitelistRule()rule.Name = "nginx"rule.ExePath = "/usr/sbin/nginx"

定义#

NewWhitelistRule() *ProcessWhitelistRule

返回值#

返回值(顺序)返回值类型返回值解释
r1*ProcessWhitelistRule

PS#

详细描述#

PS 获取进程列表,可选择使用过滤器

Example:

// 获取所有进程processes, err = hids.PS()
// 使用过滤器filter = hids.NewProcessFilter()filter.Name = "nginx"processes, err = hids.PS(filter)

定义#

PS(filters ...*ProcessFilter) ([]*ProcessInfo, error)

参数#

参数名参数类型参数解释
filters...*ProcessFilter

返回值#

返回值(顺序)返回值类型返回值解释
r1[]*ProcessInfo
r2error

ProcessExists#

详细描述#

ProcessExists 检查指定PID的进程是否存在

Example:

exists = hids.ProcessExists(1234)

定义#

ProcessExists(pid int32) bool

参数#

参数名参数类型参数解释
pidint32

返回值#

返回值(顺序)返回值类型返回值解释
r1bool

SetMonitorInterval#

详细描述#

SetMonitorInterval 设置全局健康管理器的监控间隔(单位:秒),如果在全局健康管理器运行时调用,会重置全局健康管理器

Example:

hids.SetMonitorInterval(1)

定义#

SetMonitorInterval(i float64)

参数#

参数名参数类型参数解释
ifloat64

ShowMonitorInterval#

详细描述#

ShowMonitorInterval 在标准输出中输出全局健康管理器的监控间隔(单位:秒)

Example:

hids.ShowMonitorInterval()

定义#

ShowMonitorInterval()

WatchAuditEvents#

详细描述#

WatchAuditEvents 简化的监控函数 - 监控audit事件

Example:

ctx, cancel = context.WithTimeout(context.Background(), 10)defer cancel()err = hids.WatchAuditEvents(ctx, func(event) {
    println("Login:", event.Username)
}, func(event) {
    println("Command:", event.Command)
})

定义#

WatchAuditEvents(ctx context.Context, onLogin func(*LoginEvent), onCommand func(*CommandEvent)) error

参数#

参数名参数类型参数解释
ctxcontext.Context
onLoginfunc(*LoginEvent)
onCommandfunc(*CommandEvent)

返回值#

返回值(顺序)返回值类型返回值解释
r1error

WatchConnections#

详细描述#

WatchConnections 简单的连接监控函数,监控指定时长后返回事件列表

Example:

events, err = hids.WatchConnections(5) // 监控5秒for _, event := range events {
    println(event.Type, event.Connection.LocalAddr, "->", event.Connection.RemoteAddr)
}

定义#

WatchConnections(durationSeconds float64) ([]*ConnectionEvent, error)

参数#

参数名参数类型参数解释
durationSecondsfloat64

返回值#

返回值(顺序)返回值类型返回值解释
r1[]*ConnectionEvent
r2error

WatchProcess#

详细描述#

WatchProcess 简单的进程监控函数,监控指定时长后返回事件列表

Example:

events, err = hids.WatchProcess(5) // 监控5秒for _, event := range events {
    println(event.Type, event.Process.Name, event.Process.Pid)
}

定义#

WatchProcess(durationSeconds float64) ([]*ProcessEvent, error)

参数#

参数名参数类型参数解释
durationSecondsfloat64

返回值#

返回值(顺序)返回值类型返回值解释
r1[]*ProcessEvent
r2error

WithAuditBufferSize#

详细描述#

WithAuditBufferSize 设置缓冲区大小

Example:

monitor = hids.NewAuditMonitor(hids.WithAuditBufferSize(16384))

定义#

WithAuditBufferSize(size int) AuditMonitorOption

参数#

参数名参数类型参数解释
sizeint

返回值#

返回值(顺序)返回值类型返回值解释
r1AuditMonitorOption

WithAuditFilterCommands#

详细描述#

WithAuditFilterCommands 设置命令过滤器(支持正则)

Example:

monitor = hids.NewAuditMonitor(hids.WithAuditFilterCommands(".*ssh.*", "sudo"))

定义#

WithAuditFilterCommands(commands ...string) AuditMonitorOption

参数#

参数名参数类型参数解释
commands...string

返回值#

返回值(顺序)返回值类型返回值解释
r1AuditMonitorOption

WithAuditFilterLoginUsers#

详细描述#

WithAuditFilterLoginUsers 设置原始登录用户过滤器(按 LoginUser 过滤)

过滤原始登录的用户(例如 SSH 登录的用户,即使后来 su 到其他用户)

Example:

// 只监控原始登录用户为 root 的会话中的操作monitor = hids.NewAuditMonitor(hids.WithAuditFilterLoginUsers("root"))

定义#

WithAuditFilterLoginUsers(users ...string) AuditMonitorOption

参数#

参数名参数类型参数解释
users...string

返回值#

返回值(顺序)返回值类型返回值解释
r1AuditMonitorOption

WithAuditFilterUsers#

详细描述#

WithAuditFilterUsers 设置当前用户过滤器(按 Username 过滤)

过滤当前执行操作的用户(例如 su 后的用户)

Example:

// 只监控 matrix 用户执行的命令monitor = hids.NewAuditMonitor(hids.WithAuditFilterUsers("matrix", "admin"))

定义#

WithAuditFilterUsers(users ...string) AuditMonitorOption

参数#

参数名参数类型参数解释
users...string

返回值#

返回值(顺序)返回值类型返回值解释
r1AuditMonitorOption

WithAuditMonitorCommand#

详细描述#

WithAuditMonitorCommand 设置是否监控命令执行事件

Example:

monitor = hids.NewAuditMonitor(hids.WithAuditMonitorCommand(true))

定义#

WithAuditMonitorCommand(enable bool) AuditMonitorOption

参数#

参数名参数类型参数解释
enablebool

返回值#

返回值(顺序)返回值类型返回值解释
r1AuditMonitorOption

WithAuditMonitorLogin#

详细描述#

WithAuditMonitorLogin 设置是否监控登录事件

Example:

monitor = hids.NewAuditMonitor(hids.WithAuditMonitorLogin(true))

定义#

WithAuditMonitorLogin(enable bool) AuditMonitorOption

参数#

参数名参数类型参数解释
enablebool

返回值#

返回值(顺序)返回值类型返回值解释
r1AuditMonitorOption

WithConnectionFilter#

详细描述#

WithConnectionFilter 设置连接过滤器

定义#

WithConnectionFilter(filter *ConnectionFilter) ConnectionMonitorOption

参数#

参数名参数类型参数解释
filter*ConnectionFilter

返回值#

返回值(顺序)返回值类型返回值解释
r1ConnectionMonitorOption

WithConnectionHistory#

详细描述#

WithConnectionHistory 启用历史记录

定义#

WithConnectionHistory(maxHistory int) ConnectionMonitorOption

参数#

参数名参数类型参数解释
maxHistoryint

返回值#

返回值(顺序)返回值类型返回值解释
r1ConnectionMonitorOption

WithConnectionMonitorInterval#

详细描述#

WithConnectionMonitorInterval 设置监控间隔

定义#

WithConnectionMonitorInterval(seconds float64) ConnectionMonitorOption

参数#

参数名参数类型参数解释
secondsfloat64

返回值#

返回值(顺序)返回值类型返回值解释
r1ConnectionMonitorOption

WithOnCommandEvent#

详细描述#

WithOnCommandEvent 设置命令执行事件回调

Example:

monitor = hids.NewAuditMonitor(hids.WithOnCommandEvent(func(event) {
    println("Command:", event.Command, "by", event.Username)
}))

定义#

WithOnCommandEvent(callback func(*CommandEvent)) AuditMonitorOption

参数#

参数名参数类型参数解释
callbackfunc(*CommandEvent)

返回值#

返回值(顺序)返回值类型返回值解释
r1AuditMonitorOption

WithOnConnectionDisappear#

详细描述#

WithOnConnectionDisappear 设置连接消失回调

定义#

WithOnConnectionDisappear(callback func(event *ConnectionEvent)) ConnectionMonitorOption

参数#

参数名参数类型参数解释
callbackfunc(event *ConnectionEvent)

返回值#

返回值(顺序)返回值类型返回值解释
r1ConnectionMonitorOption

WithOnLoginEvent#

详细描述#

WithOnLoginEvent 设置登录事件回调

Example:

monitor = hids.NewAuditMonitor(hids.WithOnLoginEvent(func(event) {
    println("Login:", event.Username, "from", event.RemoteIP)
}))

定义#

WithOnLoginEvent(callback func(*LoginEvent)) AuditMonitorOption

参数#

参数名参数类型参数解释
callbackfunc(*LoginEvent)

返回值#

返回值(顺序)返回值类型返回值解释
r1AuditMonitorOption

WithOnNewConnection#

详细描述#

WithOnNewConnection 设置新连接回调

定义#

WithOnNewConnection(callback func(event *ConnectionEvent)) ConnectionMonitorOption

参数#

参数名参数类型参数解释
callbackfunc(event *ConnectionEvent)

返回值#

返回值(顺序)返回值类型返回值解释
r1ConnectionMonitorOption

WithOnProcessCreate#

详细描述#

WithOnProcessCreate 设置进程创建回调

Example:


    monitor = hids.NewProcessMonitor(hids.WithOnProcessCreate(func(event) {        println("New process:", event.Process.Name, "PID:", event.Process.Pid)    }))

定义#

WithOnProcessCreate(callback func(event *ProcessEvent)) ProcessMonitorOption

参数#

参数名参数类型参数解释
callbackfunc(event *ProcessEvent)

返回值#

返回值(顺序)返回值类型返回值解释
r1ProcessMonitorOption

WithOnProcessExit#

详细描述#

WithOnProcessExit 设置进程退出回调

Example:


    monitor = hids.NewProcessMonitor(hids.WithOnProcessExit(func(event) {        println("Process exited:", event.Process.Name, "PID:", event.Process.Pid)    }))

定义#

WithOnProcessExit(callback func(event *ProcessEvent)) ProcessMonitorOption

参数#

参数名参数类型参数解释
callbackfunc(event *ProcessEvent)

返回值#

返回值(顺序)返回值类型返回值解释
r1ProcessMonitorOption

WithProcessMonitorInterval#

详细描述#

WithProcessMonitorInterval 设置监控间隔

Example:

monitor = hids.NewProcessMonitor(hids.WithProcessMonitorInterval(2))

定义#

WithProcessMonitorInterval(seconds float64) ProcessMonitorOption

参数#

参数名参数类型参数解释
secondsfloat64

返回值#

返回值(顺序)返回值类型返回值解释
r1ProcessMonitorOption

WithWhitelist#

详细描述#

WithWhitelist 设置进程白名单规则

Example:

rules = [hids.NewWhitelistRule()]rules[0].Name = "nginx"monitor = hids.NewProcessMonitor(hids.WithWhitelist(rules))

定义#

WithWhitelist(rules []*ProcessWhitelistRule) ProcessMonitorOption

参数#

参数名参数类型参数解释
rules[]*ProcessWhitelistRule

返回值#

返回值(顺序)返回值类型返回值解释
r1ProcessMonitorOption