下载解压
wget https://github.com/fatedier/frp/releases/download/v0.22.0/frp_0.22.0_linux_amd64.tar.gz
tar -zxvf frp_0.22.0_linux_amd64.tar.gz
fprs
放公网
配置文件
frps.ini
:
[common]
tls_enable = true #开启TLS,加密流量
# 服务端监听端口(客户端连接用)
kcp_bind_port = 7000 #kcp是基于udp的,如果是kcp_bind_port = 7000就是tcp
# 可选:认证令牌(建议设置,与客户端一致)
token = your_secure_token_123
# 可选:管理面板端口
dashboard_port = 7500
dashboard_user = admin
dashboard_pwd = admin_password
# 可选:日志配置
log_file = ./frps.log
log_level = info
log_max_days = 3
# 可选:HTTP/HTTPS反向代理端口(如需Web服务)
vhost_http_port = 80
vhost_https_port = 443
# 可选:最大连接数
max_pool_count = 100
- bind_port 服务端与客户端连接端口;
- “vhost_http_port”和“vhost_https_port”用于反向代理HTTP主机时使用;
运行
当前终端运行:
./frps -c frps.ini
or
运行在后台:
nohup ./frps -c frps.ini &
在nohup.out中可以看到运行结果;
访问
在浏览器访问ip:7500
并且用上面配置文件中的账号密码登录就可以看到仪表板界面;
- 检查云服务器的端口开放规则;
- 云服务器终端(系统本身)要开启防火墙:
ufw allow 7500
fprc
放内网
配置文件
frpc.ini
:
[common]
protocol = kcp #用kcp协议(udp)
tls_enable = true #开启TLS加密流量
# 服务端IP或域名
server_addr = your_server_ip_or_domain.com
server_port = 7000
# 认证令牌(需与服务端一致)
token = your_secure_token_123
# 可选:日志配置
log_file = ./frpc.log
log_level = info
log_max_days = 3
# SSH反向代理(将本地22端口映射到服务端6000端口)
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000
# HTTP网站代理(需服务端开启vhost_http_port)
[web]
type = http
local_ip = 127.0.0.1
local_port = 8080
custom_domains = your_domain.com
# 暴露内网RDP(Windows远程桌面)
[rdp]
type = tcp
local_ip = 192.168.1.100
local_port = 3389
remote_port = 7001
[mysql] # 新增这段
type = tcp
local_ip = 127.0.0.1 # 如果MySQL在本地
local_port = 3306 # MySQL默认端口
remote_port = 7002 # 服务端暴露的端口(需未被占用)
- aserver_addr是公网IP;
- token要和frps.ini的token一样;
- server_port是服务端客户端连接用的端口;
运行
当前终端运行
./frpc -c ./frpc.ini
or
后台运行
nohup ./frpc -c ./frpc.ini &
注意:如果服务端的frps.ini用了UDP协议和TLS加密,客户端的frpc.ini也要对应~
内网服务器启动SSH服务
启动:
sudo systemctl start ssh
开机自启:
sudo systemctl enable ssh