经常我们需要在公司访问家里的电脑,或者在家里想访问公司的电脑
当然有很多种方法来实现,今天我们来利用frp来实现此功能
frp分为服务器端和客户端
frp 是一个高性能的反向代理应用,可以帮助您轻松地进行内网穿透,对外网提供服务,支持 tcp, http, https 等协议类型,并且 web 服务支持根据域名进行路由转发。特别提示:服务器网络安全要开端映射的端口号!
1、我们搭建frp服器
```
wget https://github.com/fatedier/frp/releases/download/v0.34.1/frp_0.34.1_linux_amd64.tar.gz
tar -zxvf frp_0.34.1_linux_amd64.tar.gz
cd frp_0.34.1_linux_amd64
[root@frp_0.34.1_linux_amd64]# cat frps.ini
[common]
bind_addr = 0.0.0.0
bind_port = 10024
authentication_method = token
token = testtoken
dashboard_port = 8088
dashboard_user = admin
dashboard_pwd = admin
max_pool_count = 10
log_file = ./frps.log
log_level = info
log_max_days = 3
vhost_http_port = 8888
```
启动frp服务器
`nohup ./frps -c fprs.ini &`
然后安装客户端
```
wget https://github.com/fatedier/frp/releases/download/v0.34.1/frp_0.34.1_linux_amd64.tar.gz
tar -zxvf frp_0.34.1_linux_amd64.tar.gz
cd frp_0.34.1_linux_amd64
[root@frp_0.34.1_linux_amd64]# cat frpc.ini
[common]
server_addr = 47.254.17.153
server_port = 10024
token = testtoken
#公网通过ssh访问内部服务器
[ssh]
type = tcp
local_ip = 192.168.2.118
local_port = 22
remote_port = 8088
use_encryption = true
use_compression = true
#公网访问内部web服务器以http方式
[web]
type = http
local_ip = 192.168.2.143
local_port = 8888
custom_domains = 47.254.17.153
```
2、启动客户端
`nohup ./frpc -c ./frpc.ini &`
打开`http://47.254.17.153:8088/`可以访问服务器端控制台
这样就可以通过
`ssh root@47.254.17.153 -p8088`来访问本地的22号端口了
也可以通过
`http://47.254.17.153:8888`来访问本地搭建的web服务了