Noonisy
frp内网穿透
2023-04-08
阅读:399

frp内网穿透


服务器端

通常来说,服务器端是有公网IP的,比如说租的腾讯云、阿里云的服务器,这里我们不妨假设它的公网IP为:80.111.122.133
要求:
1.服务器已开启SSH,使用:ssh 80.111.122.133 -p 22,输入账号密码,能够连接服务器
2.服务器开启7000,7500,6000端口(这些端口可自定义,只要是未占用的端口;在服务商那里可以打开)

下载frp库,frp
使用里面的frps部分(s代表server,c代表client)

1.修改服务器

在frps.ini中,修改sudo vim frps.ini
[common]
# frp监听的端口,默认是7000,可以改成其他的
bind_port = 7000
# vhost_http_port = 7777 # http的时候使用
# 授权码,请改成更复杂的
token = xxxxxx  # 这个token之后在客户端会用到

# frp管理后台端口,请按自己需求更改
dashboard_port = 7500
# frp管理后台用户名和密码,请改成自己的
dashboard_user = admin
dashboard_pwd = admin
enable_prometheus = true

# frp日志配置
log_file = /var/log/frps.log
log_level = info
log_max_days = 3

2.启动服务器frps

frp目录下,输入
./frps -c ./frps.ini
输出successfully,即成功

3.修改客户端

下载的frp库,使用其中的frpc,即客户端程序
修改frpc.ini
# 客户端配置
[common]
server_addr = 80.111.122.133 # 服务器ip
server_port = 7000 # 与frps.ini的bind_port一致
token = xxxxxx  # 与frps.ini的token一致

# 配置ssh服务
[ssh]  # 这个ssh可以换成其他名字,比如ssh1
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000  # 这个自定义,之后再ssh连接的时候要用

# 配置http服务,可用于小程序开发、远程调试等,如果没有可以不写下面的
[web]
type = http
local_ip = 127.0.0.1
local_port = 8080
custom_domains = noonisy.com  # web域名 or 公网IP
remote_port = 自定义的远程服务器端口,例如8080
值得注意的是:客户端的对应端口需要打开,例如6000
在linux系统中,使用以下命令
# 添加规则
sudo iptables -I INPUT -p tcp --dport 6000 -j ACCEPT
# 保存规则
sudo iptables-save
注意:重启机器后,上述规矩就没有了

4.启动客户端frpc

在frp目录下,输入
./frpc -c ./frpc.ini
输出:start proxy success,即成功

5.验证dashboard

在服务器端中,设置了dashboard的端口,在浏览器中输入80.111.122.133:7500(即服务器ip:dashboard_port)
输入账号user,密码pwd,即可登陆dashboard
dashboard.jpg

可以在里面看见具体的proxies

6.使用frp

在其他电脑,输入
# 密码是服务器密码?还是客户端密码?
ssh cilent_name@服务器公网IP -p 6000

Reference

frp配置内网穿透教程
最后编辑于:2023 年 04 月 08 日 21:31
邮箱格式错误
网址请用http://或https://开头