Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/gofrp/fp-multiuser
frp server plugin to support multiple users.
https://github.com/gofrp/fp-multiuser
frp plugin
Last synced: 3 months ago
JSON representation
frp server plugin to support multiple users.
- Host: GitHub
- URL: https://github.com/gofrp/fp-multiuser
- Owner: gofrp
- License: apache-2.0
- Created: 2020-03-13T09:15:35.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2024-06-11T08:22:12.000Z (5 months ago)
- Last Synced: 2024-07-09T00:13:06.342Z (4 months ago)
- Topics: frp, plugin
- Language: Go
- Homepage:
- Size: 31.3 KB
- Stars: 101
- Watchers: 6
- Forks: 25
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# fp-multiuser
frp server plugin to support multiple users for [frp](https://github.com/fatedier/frp).
fp-multiuser will run as one single process and accept HTTP requests from frps.
[README](README.md) | [中文文档](README_zh.md)
### Features
* Support multiple user authentication by tokens saved in file.
### Download
Download fp-multiuser binary file from [Release](https://github.com/gofrp/fp-multiuser/releases).
### Requirements
frp version >= v0.31.0
### Usage
1. Create file `tokens` including all support usernames and tokens.
```
user1=123
user2=abc
```One user each line. Username and token are split by `=`.
2. Run fp-multiuser:
`./fp-multiuser -l 127.0.0.1:7200 -f ./tokens`
3. Register plugin in frps.
INI:
```ini
# frps.ini
[common]
bind_port = 7000[plugin.multiuser]
addr = 127.0.0.1:7200
path = /handler
ops = Login
```TOML:
```toml
# frps.toml
bindPort = 7000[[httpPlugins]]
addr = "127.0.0.1:7200"
path = "/handler"
ops = ["Login"]
```4. Specify username and meta_token in frpc configure file.
For user1 INI:
```ini
# frpc.ini
[common]
server_addr = x.x.x.x
server_port = 7000
user = user1
meta_token = 123[ssh]
type = tcp
local_port = 22
remote_port = 6000
```For user1 TOML:
```toml
serverAddr = "x.x.x.x"
serverPort = 7000
user = "user1"
metadatas.token = "123"[[proxies]]
type = "tcp"
localPort = 22
remotePort = 6000
```For user2 INI:
```ini
# frpc.ini
[common]
server_addr = x.x.x.x
server_port = 7000
user = user2
meta_token = abc[ssh]
type = tcp
local_port = 22
remote_port = 6001
```For user2 TOML:
```toml
serverAddr = "x.x.x.x"
serverPort = 7000
user = "user2"
metadatas.token = "abc"[[proxies]]
type = "tcp"
localPort = 22
remotePort = 6001
```