Linux下内网穿透Frp客户端的简单用法

Linux 2018/09/19

之前有写 CentOS 7 部署内网穿透的另一个利器 Frp,主要介绍了frp服务端的一键架设

今天再记录一下在CentOS 7 64bit 下部署frp客户端的过程。

一、安装

frp官方git:https://github.com/fatedier/frp

发布页:https://github.com/fatedier/frp/releases(包含了linux、windows、arm等平台)

以最新版 0.21.0 为例

yum install wget -y
wget https://github.com/fatedier/frp/releases/download/v0.21.0/frp_0.21.0_linux_amd64.tar.gz
tar xzvf frp_0.21.0_linux_amd64.tar.gz

解压后,会有如下文件

由于是部署客户端,所以只需要fprc、frpc.ini两个文件即可

cp frp_0.21.0_linux_amd64/frpc /usr/bin/frpc
cp frp_0.21.0_linux_amd64/frpc.ini /etc/frpc.ini
chmod 755 /usr/bin/frpc
chmod 755 /etc/frpc.ini

二、配置

默认的frpc.ini配置是这样的,需要修改 /etc/frpc.ini

分为两部分,common和其他。其中common部分为frp服务器连接信息,以及客户端的常规设置,如:

[common]
#frp服务端地址
server_addr = 221.100.123.123
#服务端端口
server_port = 5443
#token
token = bugxia.com
#日志路径
log_file = /var/log/frpc.log
#日志记录级别
log_level = info
#日志记录最大时长(天)
log_max_days = 3
#是否开启TCP多路复用
tcp_mux = true
#底层通信协议
protocol = tcp
#登录失败后不退出程序
login_fail_exit = false

common部分配置写好后,紧接着就写需要开启的穿透部分

比如我需要开启内网IP为192.168.1.5机器的3389远程桌面穿透,可以这样写

[remotedesktop]
#连接类型:tcp | udp | http | https | stcp | xtcp
type = tcp
#内网IP和端口
local_ip = 192.168.1.5
local_port = 3389
#远程端口,需确保服务端该端口未被占用
remote_port = 3389

还可以添加内网为IP为192.168.1.6上搭建的网站穿透

[myweb]
#连接类型:tcp | udp | http | https | stcp | xtcp
type = http
#内网IP和端口
local_ip = 192.168.1.6
local_port = 80
remote_port = 8080
#自定义域名
custom_domains = myweb.bugxia.com
#是否对数据进行加密
use_encryption = true
#是否对数据进行压缩
use_compression = true

p.s 需要将myweb.bugxia.com域名解析到frp服务器,当然也可以做泛解析*.bugxia.com到frp服务器,这样就不用每次添加一个都要去修改或添加域名解析记录

将上述配置文件合并写到frpc.ini,保存

三、启动

frpc -c /etc/frpc.ini

此时frpc是前台运行的,可以通过&符号将其后台

frpc -c /etc/frpc.ini &

四、其他用法

官方文档:https://github.com/fatedier/frp/blob/master/README_zh.md#功能说明

完整frpc.ini配置文件示例:https://github.com/fatedier/frp/blob/master/conf/frpc_full.ini



评论(*号为必填项)