关于frp内网穿透

一、关于内网穿透

内网穿透,也即 NAT 穿透,进行 NAT 穿透是为了使具有某一个特定源 IP 地址和源端口号的数据包不被 NAT 设备屏蔽而正确路由到内网主机。下面就相互通信的主机在网络中与 NAT 设备的相对位置介绍内网穿透方法。

二、为什么要使用内网穿透
为了外网要访问内网,因为当不在同一局域网内,ip和地址互相ping不同的话,最简单的方式是使用向日葵与teamview,但是用起来并不方便。

三、使用frp进行内网穿透
(1)关于frp的介绍

frp 是一个高性能的反向代理应用,可以帮助您轻松地进行内网穿透,对外网提供服务,支持 tcp, http, https 等协议类型,并且 web 服务支持根据域名进行路由转发。

(2)准备工作
在使用frp之前,需要一台有公网IP的服务器(外网主机),一台需要实现内网穿透的机器(内网主机),SSH工具,及一个域名。

(3)进行配置

  • 服务端配置

1.下载frp库

wget https://github.com/fatedier/frp/releases/download/v0.33.0/frp_0.33.0_linux_amd64.tar.gz


2.进行解压

 tar -zxvf frp_0.33.0_liux_amd64.tar.gz

关于frp内网穿透_第1张图片
3.进入解压目录

cd frp_0.33.0_linux_amd64/

4.配置文件

vi frps.ini

关于frp内网穿透_第2张图片
将配置文件进行修改

[common]
# frp监听的端口,默认为7000
bind_port = 7000
# 授权码
token = 52010

# frp后台管理端口
dashboard_port = 7500

# frp后台管理登陆的账号密码,可自定义
dashboard_user = root
dashboard_pwd = root
enable_prometheus = true

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


5.设置与启动frp服务


sudo mkdir -p /etc/frp
sudo cp frps.ini /etc/frp
sudo cp frps /usr/bin
sudo cp systemd/frps.service /usr/lib/systemd/system/

# 开机自启动
sudo systemctl enable frps
# 启动frp服务
sudo systemctl start frps

6.防火墙开放端口

# 添加监听端口
firewall-cmd --permanent --add-port=7000/tcp
# 添加管理后台端口
firewall-cmd --permanent --add-port=7500/tcp
firewall-cmd --reload

关于frp内网穿透_第3张图片
7.验证是否成功
在浏览器中输入:http://服务器的ip:后台管理端口 (后台管理端口的设置在配置文件中) 进入之后会显示登陆需要使用的账号密码,同样的也是在配置文件frps.ini中
关于frp内网穿透_第4张图片

  • 客户端配置(mac版本)
    1.下载frp库
    此处为百度网盘链接:
链接: https://pan.baidu.com/s/1q44bhL4Q0aABw9EjgkwTYw 
密码: 9c1t

2.进行解压

tar -zxvf frp_0.33.0_darwin_amd64.tar.gz

3.进入解压目录

cd frp_0.33.0_darwin_amd64

关于frp内网穿透_第5张图片
4.进行配置文件的配置

vi frpc.ini
# 进行客户端的配置
[common]
server_addr = 服务器的ip地址
# server_port的端口需要与frps.ini的bind_port端口一致
server_port = 7000 
token = 52010

# 配置ssh服务
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
# remote_port可进行自定义
remote_port = 6000

# 配置http服务
[web]
type = http
local_ip = 127.0.0.1
local_port = 8080
subdomain = test.hijk.pw
# 自定义远程服务器的端口
remote_port =8080

关于frp内网穿透_第6张图片

5.客户端启动

./frpc -c frpc.ini

关于frp内网穿透_第7张图片

6.测试是否成功
找另外一台电脑,在终端中执行

ssh 用户名@服务端ip  -p 端口号

你可能感兴趣的:(关于frp内网穿透)