对于某些服务来说如果直接暴露于公网上将会存在安全隐患。

使用 stcp(secret tcp) 类型的代理可以避免让任何人都能访问到要穿透的服务,只有自己才可访问,但是访问者也需要运行另外一个 frpc。

以下示例将会创建一个只有自己能访问到的 ssh 穿透服务代理。


frps.ini服务端配置

Bash

[common]bind_port = 7000
bind_udp_port = 7001
dashboard_port = 7500
log_file = /root/frp/frps.log
log_level = info
log_max_days = 3
authentication_timeout = 0
token = frp888
max_pool_count = 50


启动 frpc,转发内网的 ssh 服务,配置如下,不需要指定远程端口:

待对方访问

frpc.ini客户端配置

Bash

[common]server_addr = 服务端IP
server_port = 7000
token = frp888[client_A]type = stcp#SK跟访问者一致才能连通,可以自己随便设sk = abcdefg
local_ip = 127.0.0.1
local_port = 3389


在要访问这个服务的机器上启动另外一个 frpc,配置如下:

要访问对方

frpc.ini客户端配置

Bash

[common]server_addr = 服务端IP
server_port = 7000
token = frp888[client_A_visitor]type = stcp
role = visitor#server_name同上面[client_A]一致,待访问端和访问者client_A字段可以替换成自己想要的server_name = client_A
sk = abcdefg
bind_ip = 127.0.0.1
bind_port = 2222


说明:

bind_addr = 127.0.0.1绑定监听本地IP

bind_port = 2222绑定监听本地端口,可自定义。

本地SSH工具通过 127.0.0.1:2222,既可访问到已穿透的3389服务。

server_name = 要访问的穿透服务名称。

sk = 只有 sk 一致的用户才能访问到此服务,可自定义。

role = stcp 的访问者,可自定义。


注意:这是最精简使用的方法实例,如你有更多要求,请参考详细参数阅读。


标签: none

添加新评论