{"id":13545723,"url":"https://github.com/Netflix-Skunkworks/stethoscope","last_synced_at":"2025-04-02T16:30:40.764Z","repository":{"id":39722282,"uuid":"78471512","full_name":"Netflix-Skunkworks/stethoscope","owner":"Netflix-Skunkworks","description":"Personalized, user-focused recommendations for employee information security.","archived":false,"fork":false,"pushed_at":"2023-08-01T22:40:28.000Z","size":1530,"stargazers_count":2005,"open_issues_count":44,"forks_count":115,"subscribers_count":342,"default_branch":"master","last_synced_at":"2025-03-24T18:11:23.159Z","etag":null,"topics":["education","security","user-focused-security"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Netflix-Skunkworks.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","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":"AUTHORS"}},"created_at":"2017-01-09T21:39:48.000Z","updated_at":"2025-03-17T14:46:37.000Z","dependencies_parsed_at":"2024-01-12T03:36:14.894Z","dependency_job_id":"78a6b1e0-6cab-4978-b13b-300da825620d","html_url":"https://github.com/Netflix-Skunkworks/stethoscope","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Netflix-Skunkworks%2Fstethoscope","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Netflix-Skunkworks%2Fstethoscope/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Netflix-Skunkworks%2Fstethoscope/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Netflix-Skunkworks%2Fstethoscope/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Netflix-Skunkworks","download_url":"https://codeload.github.com/Netflix-Skunkworks/stethoscope/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246523874,"owners_count":20791444,"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":["education","security","user-focused-security"],"created_at":"2024-08-01T11:01:12.076Z","updated_at":"2025-04-02T16:30:40.739Z","avatar_url":"https://github.com/Netflix-Skunkworks.png","language":"Python","funding_links":[],"categories":["Python","\u003ca id=\"1d9dec1320a5d774dc8e0e7604edfcd3\"\u003e\u003c/a\u003e工具-新添加的"],"sub_categories":["\u003ca id=\"8f1b9c5c2737493524809684b934d49a\"\u003e\u003c/a\u003e文章\u0026\u0026视频"],"readme":"# Stethoscope: User-Focused Security\n\n![Giraffe logo](stethoscope/ui/public/static/images/giraffe-small.png)\n\nStethoscope is a web application that collects information from existing device data sources (e.g.,\nJAMF or LANDESK) on a given user’s devices and gives them clear and specific recommendations for\nsecuring their systems. An overview is available on the [Netflix Tech\nBlog](http://techblog.netflix.com/2017/02/introducing-netflix-stethoscope.html).\n\n[![Join the chat at https://gitter.im/Netflix-Stethoscope/Lobby](https://badges.gitter.im/Netflix-Stethoscope/Lobby.svg)](https://gitter.im/Netflix-Stethoscope/Lobby?utm_source=badge\u0026utm_medium=badge\u0026utm_campaign=pr-badge\u0026utm_content=badge)\n[![Apache 2.0](https://img.shields.io/github/license/Netflix/stethoscope.svg)](http://www.apache.org/licenses/LICENSE-2.0)\n[![NetflixOSS Lifecycle](https://img.shields.io/osslifecycle/Netflix/stethoscope.svg)]()\n[![Build Status](https://travis-ci.org/Netflix/stethoscope.svg?branch=master)](https://travis-ci.org/Netflix/stethoscope)\n\n![Stethoscope screenshot](docs/images/screenshot.png)\n\n## Quickstart\n\nIf you have [node] (version 6.4+) and npm (included with node) installed already and just want to play around with the front end, run:\n\n`make install-develop-ui`\n\n\n## What is Stethoscope?\n\n### Main Features\n\n- Retrieves device information from:\n  - JAMF\n  - LANDESK\n  - G Suite (Google) Mobile Management\n  - bitFit\n- Evaluates status of various security practices, including:\n  - Disk encryption\n  - Firewall\n  - Screen saver lock/password\n  - Operating system up-to-date\n  - Operating system auto-update\n  - Not jailbroken/rooted\n  - Software presence (e.g., for monitoring tools)\n- Merges associated device records\n- Plugin architecture:\n  - Easy to add data sources, practices, and other components\n  - Examples and base plugins for communicating with Elasticsearch and HTTP REST APIs\n\n## Getting Started\n\nStethoscope consists of two primary pieces: a Python-based back-end and a React-based front-end.\nNginx is used to serve static files and route traffic to the back-end.\n\nThe easiest way to get up-and-running quickly is through the provided Docker configuration.\n\n### Docker\n\nTo run with [Docker](https://www.docker.com/), first install Docker\n([standard](https://docs.docker.com/mac/) or [beta](https://beta.docker.com/)).\n\nWe have provided a [Docker Compose](https://docs.docker.com/compose/) file, `docker-compose.yml`,\nthat defines the services that make up Stethoscope. To start these services, run:\n\n```sh\ndocker-compose up\n```\n\nThen connect to the main Nginx web server at `http://localhost:5000`.\n\n#### Troubleshooting\n\nIf you encounter the following error, you likely need to upgrade `docker-compose` to version 1.10 or\nhigher.\n\n\u003e ERROR: In file './docker-compose.yml' service 'version' doesn't have any configuration options.\n\u003e All top level keys in your docker-compose.yml must map to a dictionary of configuration options.\n\n## Next Steps\n\nOur full documentation is available at \u003chttps://stethoscope.readthedocs.org\u003e.\n\n\n## LICENSE\n\nCopyright 2016, 2017 Netflix, Inc.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n\u003chttp://www.apache.org/licenses/LICENSE-2.0\u003e\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n\n\n[Flask]: http://flask.pocoo.org/\n[FreeTDS]: http://www.freetds.org\n[Homebrew]: https://brew.sh\n[Klein]: https://github.com/twisted/klein\n[Twisted]: https://twistedmatrix.com/\n[pyenv-virtualenv]: https://github.com/yyuu/pyenv-virtualenv\n[pyenv]: https://github.com/yyuu/pyenv\n[tox]: https://tox.readthedocs.io/\n[virtualenv]: https://virtualenv.pypa.io\n[create-react-app]: https://github.com/facebookincubator/create-react-app\n[Docker]: https://www.docker.com/\n[node]: https://nodejs.org/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FNetflix-Skunkworks%2Fstethoscope","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FNetflix-Skunkworks%2Fstethoscope","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FNetflix-Skunkworks%2Fstethoscope/lists"}