Frp内网穿透

1.Frp安装服务端(买个云服务器装一下,或者有公网ip的)

  1. 下载、上传、解压
 下载链接:https://github.com/fatedier/frp/releases/download/v0.41.0/frp_0.41.0_linux_amd64.tar.gz
  1. 文件介绍
## 文件涵义(C代表客户端,S代表服务端)
frpc			客户端 
frpc_full.ini	客户端完整配置文件 
frpc.ini		客户端简易配置文件 
frps			服务端 
frps_full.ini	服务端完整配置文件 
frps.ini		服务端简易配置文件
  1. 配置
    服务端默认监听端口为7000,建议改成别的,这里我用7777。这里注意端口写哪个,相应的云服务器要开放端口。
    在这里插入图片描述
    dashboard_port相关的三个配置是仪表盘可装可不装
    Frp内网穿透_第1张图片
[common]
#frp服务器监听端口
bind_port = 7000

#开启token验证
authentication_method = token
token = xxxx

#frp的管理界面端口
dashboard_port = 7500
dashboard_user = xxxx
dashboard_pwd = xxxx

#通过http访问时使用该端口
vhost_http_port = 80
#通过https访问时使用该端口
vhost_https_port = 443

这里我用的是腾讯云,如果是别的云服务器(阿里云)可能要填写来源:0.0.0.0/0
Frp内网穿透_第2张图片
在这里插入图片描述

启动服务(-c后面跟的是配置文件,意思就是以哪个配置文件启动服务)

#以简易配置启动服务
 ./frps -c ./frps.ini 

Frp内网穿透_第3张图片
在这里插入图片描述

2.Frp安装客户端(内网下的设备,这里用的是Centos7系统)

操作和上述基本一致,只是修改的文件夹不一样

vim frpc.ini
[common]
server_addr = 114.132.199.13
server_port = 7000
token=yeapt


[http测试]
type = http
local_ip = 192.168.1.2
#内网服务端口,外网请求根据vhost_http_port配置为准
local_port = 80
#映射的公网ip的端口(记得云服务器要开放)
remote_port = 6006
#公网ip或域名
custom_domains=httpTest.test.com

[https测试]
type = https
local_ip = 192.168.1.4
local_port = 8080
remote_port = 6006
custom_domains = httpsTest.test.com
# https追加内容
plugin = https2http
plugin_local_addr = 192.168.1.4:8080
plugin_crt_path = /opt/frp/lisence/httpsTest.test.com.pem
plugin_key_path = /opt/frp/lisence/httpsTest.test.com.key
plugin_host_header_rewrite = 192.168.1.4
plugin_header_X-From-Where = frp


[tcp测试--ssh就用这个]
type = tcp
local_ip = 192.168.1.3
#映射的frps端口
local_port = 8083
#本地端口
remote_port = 8083

server_addr 就是服务端的公网ip,port就是端口。下面就代表每一台映射的内网电脑。

#以简易配置启动服务
 ./frpc -c ./frpc.ini 

Frp内网穿透_第4张图片

大功告成

启动完会发现,服务器弹日志了
Frp内网穿透_第5张图片

后续

1.设置服务端开机启动

#编辑启动配置
vim /lib/systemd/system/frps.service

ExecStart代表你的frp路径,这个对其他照抄,然后保存

[Unit]
Description=Frps Service
After=network.target syslog.targer

[Service]
Type=simple
ExecStart=/opt/frp/frps -c /opt/frp/frps.ini

[Install]
WantedBy=multi-user.target
#启动服务
systemctl start frps

#设置自动启动(随系统)
systemctl enable frps

客户端的自启动同理,就是把frps都改成frpc

踩坑

1.看似简单,但是要注意在客户端配置的端口,在服务端的服务器也要打开限制,比如服务端frp的端口是7000,你客户端设置的端口是6000,那么腾讯云就要开6000和7000这个端口才能使用
2.后来使用中发现仪表盘无法访问,经过查证是防火墙没有开放相关端口,所以记录一下

#检测端口是否开启,返回yes代表开启,no代表未开启。(7500表示端口,下同)
firewall-cmd --query-port=7500/tcp --zone=public

#开启代码端口,success表示成功
firewall-cmd --zone=public --add-port=7500/tcp --permanent

#重启服务器
systemctl restart firewall

你可能感兴趣的:(服务器运维,linux,运维)