{"id":13424963,"url":"https://github.com/ContainerSSH/ContainerSSH","last_synced_at":"2025-03-15T18:36:11.361Z","repository":{"id":37088881,"uuid":"269202949","full_name":"ContainerSSH/ContainerSSH","owner":"ContainerSSH","description":"ContainerSSH: Launch containers on demand","archived":false,"fork":false,"pushed_at":"2025-03-13T01:40:11.000Z","size":5225,"stargazers_count":2780,"open_issues_count":49,"forks_count":85,"subscribers_count":21,"default_branch":"main","last_synced_at":"2025-03-13T11:02:37.455Z","etag":null,"topics":["containers","devsecops","docker","kubernetes","security","security-tools","ssh"],"latest_commit_sha":null,"homepage":"https://containerssh.io/","language":"Go","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/ContainerSSH.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":"auditlog/codec/Decoder.go","citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-06-03T21:57:39.000Z","updated_at":"2025-03-12T07:02:45.000Z","dependencies_parsed_at":"2024-01-06T19:38:18.744Z","dependency_job_id":"d3db70af-2333-411d-9c64-93b6158648cd","html_url":"https://github.com/ContainerSSH/ContainerSSH","commit_stats":null,"previous_names":["janoszen/containerssh"],"tags_count":22,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ContainerSSH%2FContainerSSH","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ContainerSSH%2FContainerSSH/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ContainerSSH%2FContainerSSH/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ContainerSSH%2FContainerSSH/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ContainerSSH","download_url":"https://codeload.github.com/ContainerSSH/ContainerSSH/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243775958,"owners_count":20346298,"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":["containers","devsecops","docker","kubernetes","security","security-tools","ssh"],"created_at":"2024-07-31T00:01:01.307Z","updated_at":"2025-03-15T18:36:06.344Z","avatar_url":"https://github.com/ContainerSSH.png","language":"Go","funding_links":[],"categories":["Go","Bastion hosts","security-tools","docker","\u003ca name=\"vm\"\u003e\u003c/a\u003eContainerization and virtualization"],"sub_categories":[],"readme":"[![ContainerSSH - Launch Containers on Demand](https://containerssh.github.io/images/logo-for-embedding.svg)](https://containerssh.io/)\n\n\u003c!--suppress HtmlDeprecatedAttribute --\u003e\n\u003ch1 align=\"center\"\u003eAn SSH Server that Launches Containers in Kubernetes and Docker\u003c/h1\u003e\n\n[![Documentation: available](https://img.shields.io/badge/documentation-available-green)](https://containerssh.io/)\n[![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/ContainerSSH/ContainerSSH/main.yml?\u0026branch=main)](https://github.com/containerssh/containerssh/actions)\n[![GitHub release (latest SemVer)](https://img.shields.io/github/v/release/containerssh/containerssh?sort=semver)](https://github.com/containerssh/containerssh/releases)\n[![Docker Image Size (latest by date)](https://img.shields.io/docker/image-size/containerssh/containerssh)](http://hub.docker.com/r/containerssh/containerssh)\n[![Go Report Card](https://goreportcard.com/badge/github.com/containerssh/containerssh)](https://goreportcard.com/report/github.com/containerssh/containerssh)\n[![License: Apache 2.0](https://img.shields.io/github/license/ContainerSSH/ContainerSSH)](LICENSE.md)\n[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2FContainerSSH%2FContainerSSH.svg?type=shield\u0026issueType=license)](https://app.fossa.com/projects/git%2Bgithub.com%2FContainerSSH%2FContainerSSH?ref=badge_shield\u0026issueType=license)\n\n## ContainerSSH in One Minute\n\nIn a hurry? This one-minute video explains everything you need to know about ContainerSSH.\n\n[![An image with a YouTube play button on it.](https://containerssh.io/images/containerssh-intro-preview.png)](https://youtu.be/Cs9OrnPi2IM)\n\n## Need help?\n\n[Join the #containerssh Slack channel on the CNCF Slack »](https://communityinviter.com/apps/cloud-native/cncf)\n\n## Use cases\n\n### Build a lab\n\nBuilding a lab environment can be time-consuming. ContainerSSH solves this by providing dynamic SSH access with APIs, automatic cleanup on logout using ephemeral containers, and persistent volumes for storing data. **Perfect for vendor and student labs.**\n\n[Read more »](https://containerssh.io/usecases/lab/)\n\n### Debug a production system\n\nProvide **production access to your developers**, give them their usual tools while logging all changes. Authorize their access and create short-lived credentials for the database using simple webhooks. Clean up the environment on disconnect.\n\n[Read more »](https://containerssh.io/usecases/debugging/)\n\n### Run a honeypot\n\nStudy SSH attack patterns up close. Drop attackers safely into network-isolated containers or even virtual machines, and **capture their every move** using the audit logging ContainerSSH provides. The built-in S3 upload ensures you don't lose your data.\n\n[Read more »](https://containerssh.io/usecases/honeypots/)\n\n## How does it work?\n\n![](https://containerssh.io/images/architecture.svg)\n\n1. The user opens an SSH connection to ContainerSSH.\n2. ContainerSSH calls the authentication server with the users username and password/pubkey to check if its valid.\n3. ContainerSSH calls the config server to obtain backend location and configuration (if configured)\n4. ContainerSSH calls the container backend to launch the container with the\n   specified configuration. All input from the user is sent directly to the backend, output from the container is sent\n   to the user.\n\n[▶️ Watch as video »](https://youtu.be/Cs9OrnPi2IM) | [🚀 Get started »](https://containerssh.io/quickstart/)\n\n## Demo\n\n![](https://containerssh.io/images/ssh-in-action.gif)\n\n[🚀 Get started »](https://containerssh.io/quickstart/)\n\n## Verify provenance\n\nEach of the releases come with a SLSA provenance data file `multiple.intoto.jsonl`. This file can be used to verify the source and provenance of the produced artifacts with [`slsa-verifier`](https://github.com/slsa-framework/slsa-verifier).\n\n\nThis aims to ensure the users that the artifacts are coming from containerssh.\n\nAn example of verification :\n```sh\nslsa-verifier verify-artifact \u003cartifact-to-verify\u003e \\\n--provenance-path \u003cpath-to-your-provenance\u003e \\\n--source-uri github.com/containerssh/containerssh\n```\n\nIf the verification is successful, the process should produce the following output :\n```\nVerifying artifact \u003cartifact-to-verify\u003e: PASSED\nPASSED: Verified SLSA provenance\n```\n\n\n## Contributing\n\nIf you would like to contribute, please check out our [Code of Conduct](https://github.com/ContainerSSH/community/blob/main/CODE_OF_CONDUCT.md) as well as our [contribution documentation](https://containerssh.io/development/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FContainerSSH%2FContainerSSH","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FContainerSSH%2FContainerSSH","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FContainerSSH%2FContainerSSH/lists"}