当前位置:首页 > linux基础 > 正文内容

frps内网穿透

4年前 (2021-04-15)linux基础2040

# frps内网穿透

## 服务端一键安装脚本

Github

wget https://raw.githubusercontent.com/MvsCode/frps-onekey/master/install-frps.sh -O ./install-frps.sh
chmod 700 ./install-frps.sh
./install-frps.sh install


Aliyun

wget https://code.aliyun.com/MvsCode/frps-onekey/raw/master/install-frps.sh -O ./install-frps.sh
chmod 700 ./install-frps.sh
./install-frps.sh install


Uninstall(卸载)

./install-frps.sh uninstall


Update(更新)

./install-frps.sh update
Server management(服务管理器)
Usage: /etc/init.d/frps {start|stop|restart|status|config|version}



## 二进制安装


## github地址

https://github.com/fatedier/frp/releases


##  解压

tar xvf frp_0.34.3_linux_amd64.tar.gz


## 启动

./frps -c frps.ini


## docker安装


## dockerhub地址

https://hub.docker.com/r/snowdreamtech/frps


## 创建配置文件 

vim /etc/frp/frps.ini


## 启动服务端 frps

docker run --restart=always --network host -d -v /etc/frp/frps.ini:/etc/frp/frps.ini --name frps snowdreamtech/frps


## 启动个人端 frpc

docker run --restart=always --network host -d -v /etc/frp/frpc.ini:/etc/frp/frpc.ini --name frpc snowdreamtech/frpc


## 配置文件

服务端

# [common] is integral section
[common]
# IPv6的文本地址或主机名必须括起来
# 放在方括号里,如 "[::1]:80", "[ipv6-host]:http" 或者 "[ipv6-host%zone]:80"
#bind_addr = 0.0.0.0
bind_port = 5000
#用于kcp协议的udp端口,可以与 'bind_port'相同
#如果未设置,则在frps中禁用kcp
kcp_bind_port = 5000
# 面板端口
dashboard_port = 7500
# 面板账号密码
dashboard_user = admin
dashboard_pwd = Admin12345
# http 端口和 https 端口可以与 bind_port 相同
vhost_http_port = 5001
vhost_https_port = 5002
# 日志文件
log_file = ./frps.log
# debug, info, warn, error
log_level = info
log_max_days = 3
# 添加 token 验证
token = Admin1234
#当多人同时使用一台frps服务器时,可以方便地使用http、https类型的子域配置。
subdomain_host = frps.qinmengfei.cn
#只允许frpc绑定您列出的端口,如果您不设置任何内容,将不会有任何限制
#允许端口=1-65535
#如果超过最大值,每个代理中的pool_count将更改为max_pool_count
max_pool_count = 50
# 如果使用tcp流多路复用,则默认值为true
tcp_mux = true


客户端配置

[common]
#frps服务端地址
server_addr = freenat.bid
#frps服务端通讯端口,客户端连接到服务端内网穿透传输数据的端口
server_port = 7000
#特权模式密钥,客户端连接到FRPS服务端的验证密钥
privilege_token = frp888
#日志存放路径
log_file = frpc.log
#日志记录类别,可选:trace, debug, info, warn, error
log_level = info
#日志保存天数
log_max_days = 7
#设置为false,frpc连接frps失败后重连,默认为true不重连
login_fail_exit = false
#KCP协议在弱网环境下传输效率提升明显,但是对frps会有一些额外的流量消耗。
protocol = kcp
#穿透服务名称
[http_dsm]
#穿透协议类型,可选:tcp,udp,http,https,stcp,xtcp
type = http
#本地监听IP,可以是本机IP,也可以是本地的局域网内某IP
local_ip = 192.168.1.2
#本地监听端口
local_port = 5000
#对传输内容进行压缩,可以有效减小 frpc 与 frps 之间的网络流量
use_compression = true
#将 frpc 与 frps 之间的通信内容加密传输
use_encryption = true
#自定义域名访问穿透服务,一般域名设置了二级域名泛解析以后,这里填*.freenat.bid即可,*自定义,
custom_domains = dsm.freenat.com


例子


[common]
# 服务端地址(域名,IP)
server_addr = frps.qinmengfei.cn
# 服务端端口
server_port = 5000
authenticate_heartbeats = true
authenticate_new_work_conns = true
authentication_method = token
## token验证
token = Admin1234
[aaa]
type = tcp
local_ip = 127.0.0.1
local_port = 6379
remote_port = 5005

访问 frps.qinmengfei.cn:5005 即可访问本机6379端口服务


“frps内网穿透” 的相关文章

Linux用户的基本操作

Linux用户的基本操作

用户基本概述1.什么是用户?用户指的是能够正常登录Linux或Windows系统2.Linux下的用户有什么用?2.1.系统上的每一个进程(运行的程序),都需要一个特定的用户运行2.2.通常在公司是使用普通用户管理服务器,因为root权限过大,容易造成故障。2.3.每一个文件都有特定的用户拥有,所以...

Linux基本权限

Linux基本权限

1.什么是权限我们可以把它理解为操作系统对用户能够执行的功能所设立的限制,主要用于约束用户能对系统所做的操作,以及内容访问的范围,或者说,权限是指某个特定的用户具有特定的系统资源使用权力。2.为什么要有权限因为系统中不可能只存在一个root用户,一定会存在多个用户,为了保护每个登陆用户的隐私和工作环...

rpm包管理

rpm包管理

RPM基础概述RPM全称RPM Package Manager缩写,由红帽开发用于软件包的安装,升级卸载与查询rpm包的命名规则一个rpm软件包的命名规则。bash-4.2.46-28.el7.x86_64.rpmname: 软件包名称version: 版本号, 主版本, 重大更新. 次版本, 子...

Shell介绍(二)函数,数组

函数命令的集合 完成特定功能的代码块模块化 复用函数和变量类似 只有先定义才可以调用,如果只定义不调用 则不会执行函数的定义和调用三种方法:[root@web scripts]# cat fun.sh #!/bin/sh test1(){   ...

自动化运维(二)Ansible Playbook

自动化运维(二)Ansible Playbook

1.Playbook剧本1.playbook翻译过来就是“剧本”,那playbook组成如下play: 定义的是主机的角色task: 定义的是具体执行的任务playbook: 由一个或多个play组成,一个play可以包含多个task任务简单理解为: 使用不同的模块完成一件事情2.playbook的...

自动化运维(四)Ansible Playbook Roles的使用

自动化运维(四)Ansible Playbook Roles的使用

ansible roles 角色适合大规模使用playbook如果文件较多的情况,不清楚哪些主机执行了哪些状态的yml文件roles能清楚哪些主机应用哪些角色1.roles官方目录的结构[root@m01 roles]# mkdir {nfs,rsync,web}/{v...