{"id":25344405,"url":"https://github.com/SkyPierIO/kubo-socks","last_synced_at":"2025-10-29T13:31:29.442Z","repository":{"id":196252320,"uuid":"695585597","full_name":"SkyPierIO/kubo-socks","owner":"SkyPierIO","description":"A Kubo plugin allowing to use SOCKS proxy over the IPFS network","archived":false,"fork":false,"pushed_at":"2024-01-17T21:42:03.000Z","size":45,"stargazers_count":3,"open_issues_count":5,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-13T11:53:55.624Z","etag":null,"topics":["dvpn","go","golang","ipfs","libp2p","socks5-proxy"],"latest_commit_sha":null,"homepage":"","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/SkyPierIO.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":"2023-09-23T16:07:08.000Z","updated_at":"2024-09-03T00:55:56.000Z","dependencies_parsed_at":null,"dependency_job_id":"4260e5bf-e9af-4c44-a3f8-898a18b10d9a","html_url":"https://github.com/SkyPierIO/kubo-socks","commit_stats":null,"previous_names":["dproxsocks/kubo-socks","skypierio/kubo-socks"],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SkyPierIO%2Fkubo-socks","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SkyPierIO%2Fkubo-socks/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SkyPierIO%2Fkubo-socks/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SkyPierIO%2Fkubo-socks/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SkyPierIO","download_url":"https://codeload.github.com/SkyPierIO/kubo-socks/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238734039,"owners_count":19521552,"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":["dvpn","go","golang","ipfs","libp2p","socks5-proxy"],"created_at":"2025-02-14T11:28:04.615Z","updated_at":"2025-10-29T13:31:29.101Z","avatar_url":"https://github.com/SkyPierIO.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# kubo-socks-plugin\nA Kubo plugin allowing to use SOCKS proxy over the IPFS network\n\n\u003e [!NOTE]\\\n\u003e This repository is not the Skypier MVP, but an experiment/POC around SOCKS5 proxies. We are refining the MVP in a separate git repository, and will focus on standalone libp2p VPN node development. \n\n## Build\n\nYou can build the plugin using \n\n```\ngo build . -o kubo-socks\n```\n\nAnd then run it with \n\n```\n# Be sure to have a kubo node already running\n./kubo-socks\n```\n\nYou can create a `config.json` file containing the plugin configuration.\nHere is the default configuration.\n\n```json\n{\n    \"port\": 8081,\n    \"socksPort\": 1080\n}\n```\n\n- `port` is the plugin listening port. You can interact with the API at http://localhost:8081/api/v0/ in this example.\n- `socksPort` is the SOCKS5 listening port\n\n## SOCKS5 Proxy\n\nThe plugin is running a local SOCKS5 proxy on port `tcp/1080`.\nIt is not supposed to be used as it, but buy a remote client coming from another `kubo-socks` node.\n\n## API\n\nThe plugin serves an HTTP API that can be requested from the frontend\n\n- GET `/ping`  ↔ Just ping the backend\n- GET `/streams`  ↔ List all active libp2p streams on the Kubo node\n- GET `/listeners`  ↔ List all listeners on the Kubo node\n- GET `/peers`  ↔ Show directly connected peers of Kubo node\n- GET `/forward/\u003cnodeID\u003e`  ↔ Open a port locally listening to SOCKS5 clients and forwarding connections to the node \u003cnodeID\u003e\n- GET `/ping/\u003cnodeID\u003e`  ↔ Send echo request packets to IPFS host \u003cnodeID\u003e\n- GET `/streams/close`  ↔ Close **all** libp2p streams on the Kubo node\n- GET `/id`  ↔ Return the local nodeID \n\n## We're hacking on IPFS \u003c3\n\n[![](https://cdn.rawgit.com/jbenet/contribute-ipfs-gif/master/img/contribute.gif)](https://github.com/ipfs/community/blob/master/CONTRIBUTING.md)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSkyPierIO%2Fkubo-socks","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FSkyPierIO%2Fkubo-socks","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSkyPierIO%2Fkubo-socks/lists"}