{"id":13826421,"url":"https://github.com/snorby/snorby","last_synced_at":"2025-05-16T04:03:36.304Z","repository":{"id":1107855,"uuid":"975050","full_name":"Snorby/snorby","owner":"Snorby","description":"Ruby On Rails Application For Network Security Monitoring","archived":false,"fork":false,"pushed_at":"2023-06-06T20:32:27.000Z","size":9580,"stargazers_count":1012,"open_issues_count":133,"forks_count":225,"subscribers_count":81,"default_branch":"master","last_synced_at":"2025-04-09T17:20:30.765Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Snorby.png","metadata":{"files":{"readme":"README.md","changelog":"ChangeLog.md","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}},"created_at":"2010-10-09T19:09:49.000Z","updated_at":"2025-03-12T14:56:03.000Z","dependencies_parsed_at":"2023-07-06T11:16:25.829Z","dependency_job_id":null,"html_url":"https://github.com/Snorby/snorby","commit_stats":{"total_commits":809,"total_committers":45,"mean_commits":"17.977777777777778","dds":"0.17305315203955496","last_synced_commit":"6185b3e0b3b35d3f414efdee81c0a00c9aa3893b"},"previous_names":[],"tags_count":36,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Snorby%2Fsnorby","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Snorby%2Fsnorby/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Snorby%2Fsnorby/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Snorby%2Fsnorby/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Snorby","download_url":"https://codeload.github.com/Snorby/snorby/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254464891,"owners_count":22075570,"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":[],"created_at":"2024-08-04T09:01:37.266Z","updated_at":"2025-05-16T04:03:36.203Z","avatar_url":"https://github.com/Snorby.png","language":"HTML","funding_links":[],"categories":["\u003ca id=\"7bf0f5839fb2827fdc1b93ae6ac7f53d\"\u003e\u003c/a\u003e工具"],"sub_categories":["\u003ca id=\"b346105580b0240d693020ce8719ebca\"\u003e\u003c/a\u003e未分类"],"readme":"# Snorby\n\n* [github.com/Snorby/snorby](http://github.com/Snorby/snorby/)\n* [github.com/Snorby/snorby/issues](http://github.com/Snorby/snorby/issues)\n* [github.com/Snorby/snorby/wiki](http://github.com/Snorby/snorby/wiki)\n* irc.freenode.net #snorby\n\n## Description\n\nSnorby is a ruby on rails web application for network security monitoring that interfaces with current popular intrusion detection systems (Snort, Suricata and Sagan). The basic fundamental concepts behind Snorby are **simplicity**, organization and power. The project goal is to create a free, open source and highly competitive application for network monitoring for both private and enterprise use.\n\n## Requirements\n\n* Snort\n* Ruby \u003e= 2.5\n* Rails \u003e= 3.0.0\n\n## Install\n\n* Get Snorby from the download section or use the latest edge release via git.\n\n\t`git clone git://github.com/Snorby/snorby.git`\n\n* Move into the Snorby directory\n\n\t`cd snorby`\n\n\n* Install Gem Dependencies  (make sure you have bundler installed: `gem install bundler`)\n\t\nUbuntu 18.04 \u003e\n\n\tapt-get install ruby-graphviz ruby-dev ruby ruby-bundler rake ruby-rails \n\t\t\t\n\tgem install rubygems-bundler\n\t\t\t\n\tgem install rbundler -v 1.16.1\n\t\t\t\n\tgem install bundler -v 1.16.1\n\n\t`$ bundle install`\n\t\n\t* NOTE: If you get missing gem issues in production use `bundle install --path vendor/cache`\n\n\t* If your system gems are updated beyond the gemfile.lock you should use as an example `bundle exec rake snorby:setup` \n\n\t* If running `bundle exec {app}` is painful you can safely install binstubs by `bundle install --binstubs` \n\t\n* Install wkhtmltopdf\n\n\t`pdfkit --install-wkhtmltopdf`\n\n\t* If this fails - visit https://github.com/pdfkit/pdfkit#wkhtmltopdf for other options\n\n* Edit the Snorby configuration files\n\n\t* `config/snorby_config.yml`\n\t* `config/database.yml`\n\t* `config/initializers/mail_config.rb`\n\t\n\t* Templates can be found in `config/snorby_config.yml.example`, `config/database.yml.example` and `config/initializers/mail_config.example.rb` respectively.\n\n* Run the Snorby setup\n\n\t`rake snorby:setup`\n\t\n\t* NOTE: If you get warning such as \"already initialized constant PDF\", you can fix it by running these commands :\n\n\t```\n\tsed -i 's/\\(^.*\\)\\(Mime::Type.register.*application\\/pdf.*$\\)/\\1if Mime::Type.lookup_by_extension(:pdf) != \"application\\/pdf\"\\n\\1  \\2\\n\\1end/' vendor/cache/ruby/*.*.*/bundler/gems/ezprint-*/lib/ezprint/railtie.rb\n\tsed -i 's/\\(^.*\\)\\(Mime::Type.register.*application\\/pdf.*$\\)/\\1if Mime::Type.lookup_by_extension(:pdf) != \"application\\/pdf\"\\n\\1  \\2\\n\\1end/' vendor/cache/ruby/*.*.*/gems/actionpack-*/lib/action_dispatch/http/mime_types.rb\n\tsed -i 's/\\(^.*\\)\\(Mime::Type.register.*application\\/pdf.*$\\)/\\1if Mime::Type.lookup_by_extension(:pdf) != \"application\\/pdf\"\\n\\1  \\2\\n\\1end/' vendor/cache/ruby/*.*.*/gems/railties-*/guides/source/action_controller_overview.textile\n\t```\n\n* Start Rails\n\n\tFor instance with `rails server` or `bundle exec rails server` and point a browser to localhost:3000\n\tor whatever you put in `config/snorby_config.yml`.\n\n* Log in and create new user\n\n\tIf you selected authentication_mode: database in `config/snorby_config.yml` the default user credentials are:\n\t* Email: **snorby@example.com**\n\t* Password: **snorby**\n\t\n\tAfter logging in go to **Administration** / **Users**, click **Add user** and fill out the form to create\n\ta personal account with administrator privileges before you delete the default user.\n\n* Once all options have been configured and snorby is up and running\n\n\t* Make sure you start the Snorby Worker from the Administration page.\n\t* Make sure that both the `DailyCache` and `SensorCache` jobs are running.\n\t\n* NOTE - If you do not run Snorby with passenger (http://www.modrails.com) people remember to start rails in production mode.\n\n\t`rails -e production`\n\t\n## Updating Snorby\n\nIn the root Snorby directory type the following command:\n\n\t`git pull origin master`\n\t\nOnce the pull has competed successfully run the Snorby update rake task:\n\n\t`rake snorby:update`\n\t\n# Helpful Commands\n\nYou can open the rails console at anytime and interact with the Snorby environment. Below are a few helpful commands that may be useful:\n\n * Open the rails console by typing `rails c` in the Snorby root directory\n * You should never really need to run the below commands. They are all available within the\n\tSnorby interface but documented here just in case.\n\n**Snorby Worker**\n\n\tSnorby::Worker.stop      # Stop The Snorby Worker\n\tSnorby::Worker.start     # Start The Snorby Worker\n\tSnorby::Worker.restart   # Restart The Snorby Worker\n\n**Snorby Cache Jobs**\n\t\n\t# This will manually run the sensor cache job - pass true or false for verbose output\n\tSnorby::Jobs::SensorCacheJob.new(true).perform`\n\n\t# This will manually run the daily cache job - once again passing true or false for verbose output\n\tSnorby::Jobs::DailyCacheJob.new(true).perform\n\n\t# Clear All Snorby Cache - You must pass true to this method call for confirmation.\n\tSnorby::Jobs.clear_cache\n\n\t# If the Snorby worker is running this will start the cache jobs and set the run_at time for the current time.\n\tSnorby::Jobs.run_now!\n\n## License\n\nPlease refer to the LICENSE file found in the root of the snorby project.\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsnorby%2Fsnorby","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsnorby%2Fsnorby","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsnorby%2Fsnorby/lists"}