{"id":26624070,"url":"https://github.com/nyu-rts/frp-auth-plugin","last_synced_at":"2026-06-19T02:32:12.301Z","repository":{"id":265314262,"uuid":"871334740","full_name":"NYU-RTS/frp-auth-plugin","owner":"NYU-RTS","description":"FRP server plugin to handle authentication","archived":false,"fork":false,"pushed_at":"2025-03-05T20:59:48.000Z","size":29,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":8,"default_branch":"trunk","last_synced_at":"2025-03-19T23:48:29.362Z","etag":null,"topics":["frp","proxy","tunnel"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NYU-RTS.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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":"2024-10-11T18:36:41.000Z","updated_at":"2025-03-05T20:59:51.000Z","dependencies_parsed_at":"2025-01-08T22:25:36.012Z","dependency_job_id":"e9fae35b-85e3-4540-a460-388dc63f12cc","html_url":"https://github.com/NYU-RTS/frp-auth-plugin","commit_stats":null,"previous_names":["remram44/frp-auth-plugin","nyu-its/frp-auth-plugin","nyu-rts/frp-auth-plugin"],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NYU-RTS%2Ffrp-auth-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NYU-RTS%2Ffrp-auth-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NYU-RTS%2Ffrp-auth-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NYU-RTS%2Ffrp-auth-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NYU-RTS","download_url":"https://codeload.github.com/NYU-RTS/frp-auth-plugin/tar.gz/refs/heads/trunk","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245257309,"owners_count":20585971,"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":["frp","proxy","tunnel"],"created_at":"2025-03-24T10:43:14.872Z","updated_at":"2026-06-19T02:32:12.248Z","avatar_url":"https://github.com/NYU-RTS.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Auth server plugin for frp\n\nThis allows you to have multiple clients, each with a specific username and password, that can only create specific proxies. The configuration of the proxies is controlled by the server rather than the client.\n\nExample `frp-auth.json`:\n\n```yaml\nusers:\n  frpc1:\n    password: \"1234\"\n    proxies:\n      service1:\n        customDomains: [\"service1.127-0-0-1.nip.io\", \"service.127-0-0-1.nip.io\"]\n        httpUser: \"enduser\"\n        httpPassword: \"hackme\"\n      service2:\n        customDomains: [\"service2.example.org\"]\n        httpUser: \"example\"\n        httpPassword: {{ .Envs.EXAMPLE_PASSWORD | quote }} # Go template is enabled\n```\n\nRun frp-auth-plugin like so:\n\n```\nFRP_AUTH_PLUGIN_LISTEN_ADDR=:8080 ./frp-auth-plugin frp-auth.json\n```\n\nExample `frps.yaml`:\n\n```yaml\nbindPort: 8000\nvhostHTTPPort: 8000\n\nhttpPlugins:\n  - name: \"auth\"\n    addr: \"127.0.0.1:8080\" # Point to frp-auth-plugin\n    path: \"/handler\"\n    ops:\n      - Login\n      - NewProxy\n```\n\nExample `frpc.yaml`:\n\n```yaml\nserverAddr: 127.0.0.1\nserverPort: 8001\ntransport:\n  protocol: websocket\n  heartbeatInterval: 10\n  heartbeatTimeout: 30\n\n# Match the credentials here\nuser: \"frpc1\"\nmetadatas:\n  token: \"1234\"\n\nproxies:\n    # Match the service name here\n  - name: service1\n    type: http\n\n    # Local destination\n    localIp: 127.0.0.1\n    localPort: 3000\n\n    # You don't have to set this, and it will be overwritten if you do\n    #customDomains:\n    #  - service1.127-0-0-1.nip.io\n    #httpUser: enduser\n    #httpPassword: hackme\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnyu-rts%2Ffrp-auth-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnyu-rts%2Ffrp-auth-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnyu-rts%2Ffrp-auth-plugin/lists"}