slackhq/go-audit là dự án mã nguồn mở trên GitHub với 1.7k sao, viết chủ yếu bằng Go. go-audit is an alternative to the auditd daemon that ships with many distros
Tóm tắt dựng từ metadata GitHub của chính dự án — chưa có bài review TopGit. Trang sẽ tự động cập nhật khi bài review đầy đủ được xuất bản.
VÌ SAO CHƯA CÓ REVIEW
TopGit viết bài đầy đủ cho repo có nhiều sao nhất và được yêu cầu nhiều nhất. Trang này là snapshot trong thời gian chờ — xem README gốc ở tab READ ME.
go-audit is an alternative to the auditd daemon that ships with many distros.
After having created an auditd audisp plugin to convert audit logs to json,
I became interested in creating a replacement for the existing daemon.
Goals
Safe : Written in a modern language that is type safe and performant
Fast : Never ever ever ever block if we can avoid it
Outputs json : Yay
Pluggable pipelines : Can write to syslog, local file, Graylog2 or stdout. Additional outputs are easily written.
Connects to the linux kernel via netlink (info here and here)
Usage
Installation
Install golang, version 1.14 or greater is required
Clone the repo
git clone (this repo)
cd go-audit
Build the binary
make
Copy the binary go-audit to wherever you'd like
Testing
make test - run the unit test suite
make test-cov-html - run the unit tests and open up the code coverage results
make bench - run the benchmark test suite
make bench-cpu - run the benchmark test suite with cpu profiling
make bench-cpulong - run the benchmark test suite with cpu profiling and try to get some gc collection
Running as a service
Check the contrib folder, it contains examples for how to run go-audit as a proper service on your machine.
Example Config
See go-audit.yaml.example
FAQ
I am seeing Error during message receive: no buffer space available in the logs
This is because go-audit is not receiving data as quickly as your system is generating it. You can increase
the receive buffer system wide and maybe it will help. Best to try and reduce the amount of data go-audit has
to handle.
If reducing audit velocity is not an option you can try increasing socket_buffer.receive in your config.
See Example Config for more information
socket_buffer:
receive: <some number bigger than (the current value * 2)>
Sometime files don't have a name, only inode, what gives?
The kernel doesn't always know the filename for file access. Figuring out the filename from an inode is expensive and
error prone.
You can map back to a filename, possibly not the filename, that triggured the audit line though.
Trang TopGit này là một snapshot — tab "Readme" hiển thị nguyên văn README của repo (đã bỏ link, giữ ảnh). Repo GitHub ở github.com/slackhq/go-audit là nguồn chính thức.
slackhq/go-audit có bao nhiêu sao?
slackhq/go-audit có 1.7k sao GitHub — tải lại trang để xem số mới nhất, hoặc xem trực tiếp github.com/slackhq/go-audit. TopGit phản chiếu số sao của GitHub nhưng không cam kết đến từng phút.
slackhq/go-audit có phải mã nguồn mở không?
Có — slackhq/go-audit phát hành theo license MIT, nghĩa là mã nguồn mở để đọc, fork và (tùy license) tái sử dụng. Mã: github.com/slackhq/go-audit.
slackhq/go-audit có website riêng không?
TopGit chưa ghi nhận URL trang chủ cho slackhq/go-audit. Phần README ở tab phía trên thường có link demo, hoặc xem mô tả GitHub của repo.
slackhq/go-audit là gì?
slackhq/go-audit (slackhq/go-audit) là dự án Go trên GitHub. Theo mô tả gốc: go-audit is an alternative to the auditd daemon that ships with many distros
Đọc đầy đủ README ở tab phía trên.
Chưa chắc go-audit có hợp với bạn?
Để ChatGPT, Claude hoặc Perplexity tìm hiểu giúp — bấm bên dưới và xem AI nói gì về go-audit.