Jtti Jtti Jtti
vps+frp内网穿透,外网远程访问局域网内主机的ssh、远程桌面、网站服务 | VPS精选网

vps+frp内网穿透,外网远程访问局域网内主机的ssh、远程桌面、网站服务

玩转VPS 6年前 (2019-05-30) 15800次浏览

今天给大家介绍下基于 vps+frp 实现内网穿透功能,可以达到在互联网环境下远程访问内网主机资源的目的。这样解释可能比较抽象,但是这个功能的确非常有用,列举一下常用的使用场景。

1 在本地搭建了网站,只有本地 ip 和内网 ip。局域网外的互联网环境是无法访问该网站的,但是通过内网穿透可以实现在互联网环境下访问内网网站。基本上实现花生壳的功能。

2 公司的服务器只有内网 ip,在家或在外办公无法通过 ssh 访问。通过内网穿透可以解决这一问题

3 同第二个场景,公司服务器在外面无法通过远程桌面登录,内网穿透也能解决。实现了 teamviewer 的远程桌面功能。

4 在家里局域网环境下搭建了 nas 服务器,在外面就无法访问了。内网穿透可以实现在外面访问家里的 nas 盘。

总结以上场景,通过内网穿透可以达到在互联网环境下远程访问内网主机资源的目的。而且在很大程度上可以取代花生壳、teamviewer 等软件。

实现内网穿透的工具:VPS+frp

接下来介绍下实现内网穿透的主要工具,vps 和 frp。vps 不用过多介绍,就是一台带独立 ip 的远程服务器。建议使用网络性能优秀的 vps 主机,我以下步骤都在 virmach 的 512M KVM 主机购买链接上进行的,总的使用体验还是很流畅的。vps 主机系统没有要求,我用的 ubuntu16.04.另外最好保证用到的端口都开放,关闭防火墙。

Frp 是一个可用于内网穿透的高性能的反向代理开源软件,截止目前,在 github 上已经有接近 24000 个 star 了。Frp 的安装包中包括服务器端和客户端。服务器端运行在 vps 上,客户端运行在内网主机上,且都支持 mac os、linux、windows 系统。

通过三个内网穿透的实例,介绍下 vps 和 frp 的配置和使用过程。

实现本地网站可以在公网访问

场景说明

我在本地 windows 上搭建了一个网站,下图所示。需要通过配置 vps 和 frp,实现在互联网上访问这个网站

vps+frp 内网穿透,外网远程访问局域网内主机的 ssh、远程桌面、网站服务

步骤如下

1vps 下载最新 frp 安装包,因为 vps 是 linux 系统的,所以下载 linux 安装包。

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

2 解压安装包

tar -zxvf  frp_0.27.0_linux_amd64.tar.gz

3 进入 frp 目录

cd frp_0.27.0_linux_amd64/

4 修改 frps.ini 配置文件

# frps.ini

[common]

bind_port = 7000

vhost_http_port = 7001

5 按默认配置运行 frp 服务器端

./frps -c ./frps.ini

6 本地 windows pc 机安装 frp 客户端

下载 frp 的 windows 安装包,地址:https://github.com/fatedier/frp/releases/download/v0.27.0/frp_0.27.0_windows_amd64.zip

7 修改 frpc.ini,假设 vps 的公网 IP 为 107.175.xx.xx;

[common]

server_addr = 107.175.xx.xx

server_port = 7000

[web]

type = http

local_port = 80

custom_domains = 107.175. xx.xx

8 通过 cmd 启动 frpc.exe

frpc.exe -c frpc.ini

9 通过公网访问 vps ip+代理端口就可以访问内网的网站了

vps+frp 内网穿透,外网远程访问局域网内主机的 ssh、远程桌面、网站服务

实现远程 ssh 登录内网主机

场景描述

公司局域网内有个 linux 服务器。需要配置 vps 和 frp 实现在互联网环境下 ssh 登录内网服务器

步骤如下

1 在 vps 上按默认配置运行 frp 服务器端

./frps -c ./frps.ini

2 在公司服务器上安装 frp 的 linux 安装包

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

tar -zxvf  frp_0.27.0_linux_amd64.tar.gz

3 修改 frpc.ini 文件,假设 vps 的公网 IP 为 107.175.xx.xx;

# frpc.ini

[common]

server_addr = 107.175.xx.xx

server_port = 7000

[ssh]

type = tcp

local_ip = 127.0.0.1

local_port = 22

remote_port = 7001

4 在公司服务器上运行 frp 客户端

./frpc -c ./frpc.ini

通过互联网 ssh 登录内网服务器

vps+frp 内网穿透,外网远程访问局域网内主机的 ssh、远程桌面、网站服务

注:保证关闭防火墙,开启了 ssh 服务。我就是大意没开 ssh 服务,导致老是失败

实现远程桌面登录内网主机

场景描述

公司局域网环境下有一台 windows 主机,需要配置 vps 和 frp 实现在互联网环境下远程桌面登录内网 windows 主机

步骤如下

1 服务器配置保持默认配置,直接运行服务器端即可

# frps.ini

[common]

bind_port = 7000

./frps -c ./frps.ini

2 内网 windows 主机 frp 客户端配置如下,假设 vps 的公网 IP 为 107.175.xx.xx;

[common]

server_addr = 107.175.xx.xx

server_port = 7000

[rdp]

type = tcp

local_ip = 127.0.0.1

local_port = 3389

remote_port = 5200

3windows 需要开启远程连接,关闭防火墙

vps+frp 内网穿透,外网远程访问局域网内主机的 ssh、远程桌面、网站服务

远程连接时,需要用 vps ip 加端口的方式

vps+frp 内网穿透,外网远程访问局域网内主机的 ssh、远程桌面、网站服务

连接成功

vps+frp 内网穿透,外网远程访问局域网内主机的 ssh、远程桌面、网站服务

注 :技术交流,获取 VPS 最新补货通知、折扣活动请加 QQ 群:283468775

VPS 精选网 , 版权所有丨如未注明 , 均为原创丨
转载请注明原文链接:vps+frp 内网穿透,外网远程访问局域网内主机的 ssh、远程桌面、网站服务
喜欢 (7)