服务端安装
1. 下载frp
# 可尝试使用下面任何一个地址下载,如果不行就根据地址去官网直接下载到本地上传到服务器
wget https://github.com/fatedier/frp/releases/download/v0.44.0/frp_0.44.0_linux_amd64.tar.gz
wget http://github.com/fatedier/frp/releases/download/v0.44.0/frp_0.44.0_linux_amd64.tar.gz
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_linux_amd64.tar.gz
3. 进入对应目录并配置frps.ini文件
cd frp_0.33.0_linux_amd64/ && vim frps.ini
4. 增加没有的内容(记得把所有注释删除,不然会报错)
[common]
# frp监听的端口,默认是7000,可以改成其他的
bind_port = 7000
#frp访问ip
bind_addr = 0.0.0.0
# frp管理后台端口,请按自己需求更改
dashboard_port = 7500
#管理后台账号
dashboard_user = root
#管理后台密码
dashboard_pwd = super
# 认证配置,这个必须增加,使用token没有成功,网上找到有用这种方式认证的,更改后可以使用
privilege_mode = true
#token服务端和客户端必须一致
privilege_token = 123456
# http 对外暴露端口,对外暴露的http端口需要使用这个进行暴露
vhost_http_port = 80
# https 对外暴露端口,对外暴露的https端口需要使用这个进行暴露
vhost_https_port = 443
[web-http]
#监听80端口的信息
listen_port=80
[web-http02]
#监听80端口的信息
listen_port=80
[web-https]
#监听443端口的信息
listen_port=443
5. 启动服务(第三步进去以后敲下面的命令)
./frps -c frps.ini
#前台启动
nohup ./frps -c ./frps.ini &
#后台启动
6. 验证服务(浏览器输入 ip+7500 端口号)
客户端安装
1. 下载frp
# 可尝试使用下面任何一个地址下载,如果不行就根据地址去官网直接下载到本地上传到服务器
wget https://github.com/fatedier/frp/releases/download/v0.44.0/frp_0.44.0_linux_amd64.tar.gz
wget http://github.com/fatedier/frp/releases/download/v0.44.0/frp_0.44.0_linux_amd64.tar.gz
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_linux_amd64.tar.gz
3. 进入对应目录并配置frpc.ini文件
cd frp_0.33.0_linux_amd64/ && vim frpc.ini
4. 增加没有的内容(记得把所有注释删除,不然会报错)
[common]
# 服务端ip,这个不可以变
server_addr =
# 服务端通信端口,这个也不可以变
server_port = 7000
# token用来与服务器通信验证的,也不可以变,和服务端保持一致
privilege_token = 123456
[ssh]
# 这个是连接类型
type = tcp
#本机ip
local_ip = 127.0.0.1
#本机端口
local_port = 22
# 远程端口,无需在服务端声明,但是需要在服务器端放行
remote_port = 7022
[http]
# 服务类型
type = http
# 本地web服务端口
local_port = 80
#远程端口
remote_port = 8080
# 服务端ip或者域名
custom_domains =
#本地ip
local_ip = 127.0.0.1
5. 启动服务(第三步进去以后敲下面的命令)
.\frpc -c frpc.ini
#前台启动
nohup ./frpc -c ./frpc.ini &
#后台启动
6. 验证安装ssh服务并验证
ssh 用户名@ip地址 -p 端口号(这里是6000)
7. 验证web服务
前面配置了远端服务器的8080到本地的8080的映射,所以这里通过域名ebbing.xinhengcompany.cn:8080来访问本地的web服务,如下:
可以看到web页面已经正常打开了,到这里也就实现了内网穿透的web穿透了
脚本
服务端
#!/bin/bash
#服务端frp安装配置
echo "下载安装包..."
wget https://github.com/fatedier/frp/releases/download/v0.44.0/frp_0.44.0_linux_amd64.tar.gz
[ $? -eq 0 ] && echo "ok" || exit
[ -e frp_0.44.0_linux_amd64.tar.gz ] && tar -zxvf frp_0.44.0_linux_amd64.tar.gz || exit
echo "进入目录..."
[ -e frp_0.44.0_linux_amd64/ ] && cd frp_0.44.0_linux_amd64/ || exit
[ -e frps.ini ] && echo "ok" || exit
echo "写入配置..."
echo '[common]
bind_port = 7000
bind_addr = 0.0.0.0
dashboard_port = 7500
dashboard_user = root
dashboard_pwd = super
privilege_mode = true
privilege_token = 123456
vhost_http_port = 80
vhost_https_port = 443
[web-http]
listen_port=80
[web-http02]
listen_port=80
[web-https]
listen_port=443' > frps.ini
[ -$? -eq 0 ] && echo "ok" || exit
echo "开启服务..."
./frps -c ./frps.ini
客户端
#!/bin/bash
#客户端frp安装配置
echo "关闭SELinux和关闭防火墙..."
setenforce 0
[ $? -eq 0 ] && echo "ok" || exit
systemctl stop firewalld
[ $? -eq 0 ] && echo "ok" || exit
echo "下载安装包..."
wget https://github.com/fatedier/frp/releases/download/v0.44.0/frp_0.44.0_linux_amd64.tar.gz
[ $? -eq 0 ] && echo "ok" || exit
[ -e frp_0.44.0_linux_amd64.tar.gz ] && tar -zxvf frp_0.44.0_linux_amd64.tar.gz || exit
echo "进入目录..."
cd frp_0.44.0_linux_amd64/ || exit
[ -e frpc.ini ] && echo "ok" || exit
echo "写入配置..."
if [ -z "$x" ]; then
read -p "请输入您的公网IP: " x
fi
cat <<EOF > frpc.ini
[common]
server_addr = $x
server_port = 7000
privilege_token = 123456
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 7022
[http]
type = http
local_port = 80
remote_port = 8080
custom_domains = $x
local_ip = 127.0.0.1
EOF
[ $? -eq 0 ] && echo "ok" || exit
echo "开启服务..."
$(pwd)/frpc -c $(pwd)/frpc.ini
[ $? -eq 0 ] && echo "ok" || exit