搭建FRP服务实现内网穿透
简介
IPv4资源紧缺的现在,家庭宽带一般是不带有固定公网IP地址,那么如果我们要远程访问家里的设备呢?frp内网穿透是一个不错的方案,我们只需准备一台拥有公网IP的云服务器做中转就能实现。
frp 采用 C/S 模式,将服务端部署在具有公网 IP 的机器上,客户端部署在内网或防火墙内的机器上,通过访问暴露在服务器上的端口,反向代理到处于内网的服务。在此基础上,frp 支持 TCP, UDP, HTTP, HTTPS 等多种协议,提供了加密、压缩,身份认证,代理限速,负载均衡等众多能力。
部署环境
系统:CentOS7
frp版本:frp 3.7.1 可以直接跟着教程用wget下载或者去frp官方下载github.com
服务端(frps)安装
1 下载frp软件包,并解压
$ wget https://github.com/fatedier/frp/releases/download/v0.37.1/frp_0.37.1_linux_amd64.tar.gz
$ tar -zxvf frp_0.37.1_linux_amd64.tar.gz
由于某种不可描述的原因下载速度可能会比较慢,我这里也提供一下我的下载链接
2 编辑frps配置文件
$ cd frp_0.37.1_linux_amd64
$ vim frps.ini
[common]
bind_port = 7000 #连接端口
token = 123456 #连接密钥
dashboard_port = 7333 #网页仪表板访问端口
dashboard_user = admin #网页仪表板登录用户名
dashboard_pwd = 123456 #网页仪表板登录密码
vhost_http_port = 80 #http代理端口
vhost_https_port = 443 #https代理端口`
保存退出! 仪表盘可以直观地看到端口是否映射成功,建议开启。
3 新建frps服务
$ vim /etc/systemd/system/frps.service
[Unit]
Description=frps daemon
After=syslog.target network.target
Wants=network.target
[Service]
Type=simple
ExecStart=/root/frp_0.37.1_linux_amd64/frps -c /root/frp_0.37.1_linux_amd64/frps.ini #路径
Restart=always RestartSec=1min
[Install]
WantedBy=multi-user.target
保存退出!
$ systemctl daemon-reload #重新加载服务配置文件
$ systemctl start frps #启动frps服务
$ systemctl enable frps #开机自启frps服务
客户端(frpc)安装
系统:Centos7
4 下载frp软件包,并解压
$ wget https://github.com/fatedier/frp/releases/download/v0.37.1/frp_0.37.1_linux_amd64.tar.gz
$ tar -zxvf frp_0.37.1_linux_amd64.tar.gz
5 编辑frpc.ini配置文件
$ cd frp_0.37.1_linux_amd64
$ vim frpc.ini
[common]
server_addr = 服务端IP地址
server_port = 7000
token = 123456
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000
保存退出!
6 新建frpc服务
$ vim /etc/systemd/system/frpc.service
[Unit]
Description=frpc daemon
After=syslog.target network.target
Wants=network.target
[Service]
Type=simple
ExecStart=/root/frp_0.37.1_linux_amd64/frpc -c /root/frp_0.37.1_linux_amd64/frpc.ini #路径
Restart=always
RestartSec=1min
[Install]
WantedBy=multi-user.target
保存退出!
$ systemctl start frpc #启动frpc服务
$ systemctl enable frpc #开机自启frpc服务
如果使用docker容器部署frpc
7 新建frpc配置文件
$ vim /home/docker/frpc/frpc.ini
[common]
server_addr = 服务端IP地址
server_port = 7000
token = 123456
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000
保存退出!
8 拉取frpc镜像并启动容器。
$ docker run --restart=always --network host -d -v /home/docker/frpc/frpc.ini:/frp/frpc.ini --name frpc oldiy/frpc
注意: 我这里创建容器时指定网络模式为host模式,默认网络模式是bridge模式。如果使用bridge模式则127.0.0.1地址为容器本身,不是宿主机,需要将前面frpc.ini文件里local_ip=127.0.0.1改成宿主机IP
版权声明:
本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自
运维小记!
喜欢就支持一下吧
打赏
微信
支付宝