Server A is an internet facing server which has port 7000 open to the outside world.

Server B is on the internal network, which does not have any ports open to the outside world.

To keep things secure, remember to make use of the auth.method which requires that a matching token is set on each of the frp clients.

Download frp from github here.

frps.toml on server A ( address x.x.x.x )

bindPort = 7000
auth.method = "token"
auth.token = "some_random_token"
frpc.toml on server B

serverAddr = "x.x.x.x"
serverPort = 7000
auth.token = "some_random_token"

[[proxies]]
name = "secret_ssh"
type = "stcp"
secretKey = "some_secret_key"
localIP = "127.0.0.1"
localPort = 22
frpc.toml on client computer

serverAddr = "x.x.x.x"
serverPort = 7000
auth.token = "some_random_token"

[[visitors]]
name = "secret_ssh_visitor"
type = "stcp"
serverName = "secret_ssh"
secretKey = "some_secret_key"
bindAddr = "127.0.0.1"
bindPort = 6000
Now you can connect to the local server on port 22, from the client, by using the command below.

ssh -oPort=6000 127.0.0.1