VPS下搭建frp进行Linux与Windows内网穿透

作者: baixiao 分类: 教程 发布时间: 2019-08-25 15:58

参考链接:

  1. 搭建frp实现内网穿透https://blog.csdn.net/zengd0/article/details/79522253
  2. https://www.jianshu.com/p/a6e9627dbe29
  3. vscode remote + frp 内网穿透 https://zhuanlan.zhihu.com/p/70592559 frp简介 frp分为服务器端frps、客户端frpc。 其官网链接为:https://github.com/fatedier/frp

准备条件

  1. 带公网IP的VPS
  2. 内网PC
  3. 外网PC

VPS服务器端搭设

  • 下载frps到服务器

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

  • 解压缩

tar -zxvf frp_0.16.0_linux_amd64.tar.gz

  • 进入解压缩出来的文件夹

cd frp_0.16.0_linux_amd64.tar.gz

  • 修改服务器配置文件(frps.ini):

vi frps.ini

按insert键,进入编辑模式,内容修改为如下:

[common] #与客户端绑定的进行通信的端口

bind_port = 7000 #http的访问端口

vhost_http_port = 88 #https的访问端口(如果需要的话)

vhost_https_port = 8088

按Esc键,退出编辑,再按:wq保存退出。

  • 启动frps服务端。

使用screen让frps在后台运行,这样即使关掉了ssh,frp仍然在后台运行中

使用screen命令创建一个会话: screen -dmS frp

进入这个会话: screen -r frp

最后启动frp命令: ./frps -c ./frps.ini &

  • 停止运行frp的方法: 杀掉frps进程即可。

使用ps命令,查看所有进程:

ps -a

找到frps、screen的进程id,使用kill命令:

kill 进程id

windows客户端搭设

下载客户端的frp: 在这里 https://github.com/fatedier/frp/releases 找到对应版本的frp。 因为在服务器端是使用了0.16.0版本,所以需要找到对应版本下载。

解压下载好的压缩包

编辑frpc.ini文件

[common]

server_addr = xx.xx.113.20

server_port = 7000

[RemoteDesktop] #远程桌面

type = tcp

local_addr = 127.0.0.1

local_port = 3389

remote_port = 7002

[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000

启动frp客户端frpc:

找到frpc.exe对应文件夹,在其地址栏输入cmd,则进入以该文件夹为路径的cmd命令行。在命令行下输入以下命令即可启动。

frpc -c frpc.ini

Linux客户端搭设

  1. 编辑frpc.ini文件
 [common]  
server_addr = 66.98.113.20  
server_port = 7000  
[ssh1] 
 type = tcp  
local_ip = 127.0.0.1  
local_port = 22  
remote_port = 6002  
[web_pythondaquan]  
type=http  
local_port=80  
#custom_domains=www.pythuan.tk  
#custom_domains=192.168.1.143  
custom_domains=xx.xx.113.20

启动frpc客户端。

使用screen让frpc在后台运行,这样即使关掉了ssh,frp仍然在后台运行中 .

使用screen命令创建一个会话:

screen -dmS frp

进入这个会话: screen -r frp

最后启动frp命令: ./frpc -c ./frpc.ini &

停止运行frp的方法: 杀掉frpc进程即可。

使用ps命令,查看所有进程: ps -a

找到frps、screen的进程id,使用kill命令: kill 进程id

远程桌面

  1. 外网PC在命令行下输入,启动远程桌面mstsc
  2. 在远程桌面的计算机输入框中,输入VPS对应ip及客户端frpc.ini中对应的remote_port。在这里则是XX.XX.113.20:7002

FAQ

frp启动报错“[W] [control.go:113] login to server failed: EOF”

原因: 是因为最近装的这个frpc版本是0.27.0,而之前的frps版本是0.16.0,于是就降了一下frpc的版本,解决了问题:

https://blog.csdn.net/lixuande19871015/article/details/82257073

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!

发表评论

电子邮件地址不会被公开。 必填项已用*标注