{"id":13709680,"url":"https://github.com/bitflipp/gerberos","last_synced_at":"2025-05-06T16:32:11.865Z","repository":{"id":42506926,"uuid":"294348969","full_name":"bitflipp/gerberos","owner":"bitflipp","description":"ipset/nftables-based banning utility","archived":false,"fork":false,"pushed_at":"2024-07-20T16:06:53.000Z","size":141,"stargazers_count":11,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-11-13T19:40:42.118Z","etag":null,"topics":["ban-hosts","ban-management","banning-utility","golang","ipfilter","ipset","nft","nftables","regex","security","security-tools","unix","watcher"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bitflipp.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-09-10T08:24:36.000Z","updated_at":"2024-09-24T20:55:29.000Z","dependencies_parsed_at":"2024-11-13T19:33:54.888Z","dependency_job_id":"f91fdcf9-1b6b-482e-b6ec-da94a9c38fbe","html_url":"https://github.com/bitflipp/gerberos","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bitflipp%2Fgerberos","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bitflipp%2Fgerberos/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bitflipp%2Fgerberos/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bitflipp%2Fgerberos/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bitflipp","download_url":"https://codeload.github.com/bitflipp/gerberos/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252721082,"owners_count":21793748,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ban-hosts","ban-management","banning-utility","golang","ipfilter","ipset","nft","nftables","regex","security","security-tools","unix","watcher"],"created_at":"2024-08-02T23:00:43.766Z","updated_at":"2025-05-06T16:32:11.496Z","avatar_url":"https://github.com/bitflipp.png","language":"Go","funding_links":[],"categories":["Security"],"sub_categories":["Audit / Response"],"readme":"# gerberos\n\ngerberos scans sources for lines matching regular expressions and containing IPv4 or IPv6 addresses and performs actions on those addresses.\nPossible sources are (not necessarily existant) non-directory files, systemd journals, kernel messages, and standard outputs of arbitrary processes.\nAddresses can be logged or added to ipsets or nft rulesets that gerberos will manage autonomously.\n\nMinimal additional logic is applied. This is to adhere to the [Unix philosophy](https://en.wikipedia.org/wiki/Unix_philosophy), but impacts gerberos' out-of-the-box usefulness for specific use cases when compared to tools like [fail2ban](https://github.com/fail2ban/fail2ban).\n\n## Requirements\n\n### ipset backend\n\n- ipset 6.34\n- iptables 1.6.1\n\n### nft backend\n\n- nftables v0.9.3 (tested on Ubuntu 20.04)\n\n### Development only\n\n- Go 1.18\n- GNU Make 4.3 (optional)\n- pgrep (system tests only, optional)\n\n## Build\n\n`make build`\n\n## Test\n\n### Unit tests only\n\n`make test`\n\n### Unit and system tests\n\nRequires ipset, iptables, and nftables to be installed.\n\n`make test_system`\n\n## Example configuration file (TOML)\n\nSee [gerberos.toml](gerberos.toml).\n\n## Example systemd service file\n\nSee [gerberos.service](gerberos.service).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbitflipp%2Fgerberos","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbitflipp%2Fgerberos","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbitflipp%2Fgerberos/lists"}