内网穿透的功能

目的:利用云服务器映射本地电脑可以通过域名进行访问本地电脑建设的网站和进行远程桌面访问本地电脑(远程桌面,远程文件,SSH等等)。

当然,你可以使用花生壳几步就可以进行访问,但是免费的会有限制,本着白嫖原则,研究了一下frp进行内网映射。

frp是什么

简单地说,frp就是一个反向代理软件,它体积轻量但功能很强大,可以使处于内网或防火墙后的设备对外界提供服务,它支持HTTP、TCP、UDP等众多协议。我们今天仅讨论TCP和UDP相关的内容。

准备工作

阿里云轻量级服务器,可以安装宝塔面板进行管理,但是放行端口的时候一定要两边都进行放行

域名:可以申请域名然后进行备案,也不贵,一年几十块钱就可以搞定

PC :安装Apache,确定网页输入localhost:8080可以看见网页内容

一, 在云服务器安装frp服务端

实现过程,SSH连接到VPS之后运行命令  arch 查看处理器架构,根据架构下载不同版本的frp

查看结果,如果是“X86_64“即可选择”amd64”,远程登陆之后下载frp

wget https://github.com/fatedier/frp/releases/download/v0.24.1/frp_0.24.1_linux_amd64.tar.gz
tar -zxvf frp_0.24.1_linux_amd64.tar.gz
cp -r frp_0.24.1_linux_amd64 frp
cd frp
vim frps.ini

注意,版本可以自己选,根据构架选择相应版本并进行下载(当然你也可以下载到本地修改好再上传也都行,仓库地址:frp各版本下载传送门自己去看下

# 配置frps文件:[common]bind_port = 7000    #客户端和服务端连接的端口,这个端口号我们之后在配置客户端的时候要用到。dashboard_port = 7500   #服务器端仪表板的端口,可以查看服务器状态。token = 123456 #登录令牌口令,这个也是配置客户端要用到的。dashboard_user = admin #表示打开仪表板页面登录的用户名。dashboard_pwd = admin #表示打开仪表板页面登录的密码。vhost_http_port = 80    #反向代理HTTP主机时使用。vhost_https_port = 10443   #反向代理HTTPS主机时使用。

这些将就着看下吧。实际还不止这些,你要是有耐心可以直接去仓库哪里看看。我frp配置传送门去看下吧。

进入frp文件夹启动frp服务器:./frps -c frps.ini  显示success

然后输入你的公网ip:7500  显示下列 登陆就输入上面配置的账号和密码,显示frp控制面板

服务端在后台运行

我们的服务端仅运行在前台,如果Ctrl+C停止或者关闭SSH窗口后,frps均会停止运行,因而我们使用 nohup命令将其运行在后台。

nohup后台程序管理或关闭相关命令可自行查询资料,上面这个连接中也有所提及。

nohup ./frps -c frps.ini &
输出如下内容即表示正常运行,选择后台启动。在linux中使用如下命令进行后台启动。然后运行的日志会输出到当前目录的nohup.log文件中

nohup: ignoring input and appending output to 'nohup.out'

此时可先使用Ctrl+C关闭nohup,frps依然会在后台运行,使用jobs命令查看后台运行的程序
jobs
在结果中我们可以看到frps正在后台正常运行

[1]+  Running                 nohup ./frps -c frps.ini &

此时访问 x.x.x.x:7500 依然可以打开仪表板界面,至此,服务端即设置完成,你可以关闭SSH窗口了。

二、安装需要映射出去的电脑端的frp客户端

电脑这边下载的是frp_0.37.0_windows_amd64,可以去上面的版本链接中下载

# 配置frpc.ini
[common]
server_addr = **.***.**.**  #自己的公网ip
server_port = 7000     #客户端和服务端连接的端口,
token = 123456     [web]        #映射建立的网站,代理处内网里面的网站
type = http
local_ip = 127.0.0.1     #需要代理出去的ip
local_port = 8080        #内网的web端口
custom_domains = frp.g*st.top   #绑定的域名
pool_count=10[ssh]  #ssh *** -p 6000
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000    #remote_port外部端口[rdp]             #远程桌面连接
type = tcp
local_ip = 127.0.0.1
local_port = 3389     #需要代理出去访问的端口,这里是3389
remote_port = 7389  #这里就是转发出去的端口,访问的代理端口 远程桌面访问:云服务器公网IP:7389[smb]  #SMB,即Windows文件共享所使用的协议,默认端口号445,协议TCP,本条规则可实现远程文件访问。
type = tcp
local_ip = 127.0.0.1
local_port = 445
remote_port = 7002

启动客户端:进入frp文件夹启动frp服务器:./frpc -c frpc.ini  显示success

客户端后台运行及开机自启

frpc运行时始终有一个命令行窗口运行在前台,影响美观,我们可以使用一个批处理文件来将其运行在后台,而且可以双击执行,每次打开frpc不用再自己输命令了。
在任何一个目录下新建一个文本文件并将其重命名为“frpc.bat”,编辑,粘贴如下内容并保存。

@echo off
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
:begin
REM
cd C:\frp
frpc -c frpc.ini
exit

将cd后的路径更改为你的frpc实际存放的目录。

之后直接运行这个 .bat 文件即可启动frpc并隐藏窗口(可在任务管理器中退出)。
至于开机启动,把这个 .bat 文件直接扔进Windows的开机启动文件夹就好了 :)
至此,客户端配置完成,之后就是你自己根据需要在frpc.ini后追加规则即可。

三、映射本地电脑远程桌面访问

在云服务器的frps和本地PC中的frpc都能succcess时

远程桌面访问

自此,映射本地电脑远程桌面访问已经实现,只要能弹出输入你的凭证就证明frp配置无误,其他远程登陆问题,包括创建用户,开启远程桌面等设置问题,请查阅远程桌面连接问题。

四、映射本地网站到域名中进行访问

上面确保本地能访问到这个页面,然后通过域名进行访问。

访问成功云服务也边会有日志显示

如果没有记录显示,首先就是确保云服务器和宝塔那边上述对应的端口是否放行了

我们访问网页成功frps面板这边会有流量传输显示

至此,通过域名访问本地服务器的网站功能也已经实现。

本文章,为功能实现日志记录,方便以后查阅使用。强烈建议大家在使用frp直接测试内网穿透前,先在局域网内测试好相关功能的正常使用,并配置好可能会影响的Windows防火墙等内容,在内网调试通过后再使用frp进行内网穿透测试。

利用云服务器和frp建立内网映射实现远程桌面和web服务相关推荐

  1. 不用向日葵 teamview 利用云服务器部署FRP穿透内网实现控制远程桌面

    不用向日葵 teamview 利用云服务器部署FRP穿透内网实现控制远程桌面 前言 需要的硬软件 需要的设置 服务端的配置 客户端配置 远程连接 设置开机自启 前言 由于工作原因,不可使用向日葵及te ...

  2. 阿里云服务器搭建frp -实现内网穿透

    阿里云服务器搭建frp -实现内网穿透 什么是frp 准备工作 开始搭建 服务端 客户端 什么是frp frp 是一个高性能的反向代理应用,可以帮助您轻松地进行内网穿透,对外网提供服务,支持 tcp, ...

  3. 【计算机网络相关】内网穿透介绍以及使用FRP实现内网穿透Windows远程桌面

    ❤️觉得内容不错的话,欢迎点赞收藏加关注

  4. win10内网穿透实现远程桌面连接

    一.前情提要 在学校的时候曾经看到过同学在实验室用远程桌面控制宿舍自己的电脑,这样不仅能随时使用自己电脑上的文件,还省得把电脑带来带去又麻烦又重,当时也研究过,但没成功,这不新冠肺炎疫情导致开学时间一 ...

  5. 【内网穿透服务器】利用云服务器+FRP实现内网穿透并远程连接服务器

    应用目的:远程管理或在外网访问内网机器上的服务 这里我们是使用云服务器+FRP实现内网穿透,达到远程连接服务器的目的 准备工作 云服务器 这里我们租用的是腾讯云的服务器,类似于下图的这种,配置选择可以 ...

  6. 远程访问内网服务器使用FRP实现内网穿透

    使用FRP实现内网穿透,远程访问内网服务器 frp 是一个高性能的反向代理应用,可以帮助您轻松地进行内网穿透,对外网提供服务,支持 tcp, http, https 等协议类型,并且 web 服务支持 ...

  7. 使用frp将内网映射到公网

    什么是frp frp 是一个高性能的反向代理应用,可以帮助您轻松地进行内网穿透,对外网提供服务,支持 tcp, http, https 等协议类型,并且 web 服务支持根据域名进行路由转发. 准备 ...

  8. 使用frp进行内网映射

    首先我们应先分清什么是内网映射和什么是内网转发和端口映射与端口转发. 内网映射:指使处于nat4状态下,由于nat的物理特性使得无法主动为外部提供服务,提供服务时并不能将所需要的内网上面的某个地址与端 ...

  9. Linux服务器配合Frp实现内网穿透使用windows远程桌面

    前言: 我们在公司时,可以根据内网进行远程桌面连接,但由于公司网络一般都是分配内网ip,当我们在家的时候,想进行连接公司电脑,一般会使用1.teamviewer 2.向日葵,但是teamviewer用 ...

最新文章

  1. java 版本SQLHelper
  2. Tensorflow2.0与Tensorflow1.0的理解
  3. 【高清】鲁邦三世主题曲 - ルパン三世のテーマ'80 南澤大介 改编+演奏
  4. Android实现ListView(1)
  5. cf1562E. Rescue Niwen!
  6. 安卓逆向_25 --- 密码学 之 《Java加密与解密的艺术》
  7. minio 单机安装、部署 centos7环境
  8. revman软件_meta分析概述及RevMan软件安装教程
  9. Java和JavaScript中使用Json方法大全
  10. java读取txt生成excel_读取TXT文件内容,生成Excel文件
  11. 软件测试:测试用例八大要素模板
  12. Dev c++中文乱码,codeblocks运行结果乱码解决办法
  13. 一句理解到底什么是雷达中的波位
  14. C++:[编程题]买帽子
  15. Spring常见面试题55道(附答案2023最新版)
  16. 【趣谈】| 编程的尽头是玄学?
  17. OS - Bitcode App 瘦身中间码
  18. 如何给PDF制作左侧显示的目录或书签?
  19. postgresql mode 函数
  20. 人在职场,有多少钱才算合格?

热门文章

  1. 已经有了synchronized为什么需要volatile
  2. Js替换字符串的几种方法
  3. readOnly属性的去除
  4. atoi函数详细分析
  5. 华为鸿蒙生态班怎么上,好消息!华为宣布打造鸿蒙生态班,为何顶尖学府清华不入其法眼?...
  6. 卡方检验结果怎么看-医学统计助手★卡方检验,t检验,F检验,秩和检验,方差分析
  7. [原创][从mambo到joomla的迁移实战之五]选择UTF-8 还是GB2312/GBK
  8. tflite模型转换与MLIR
  9. 同道大叔星座大吐槽001 读后感
  10. Qt模拟Linux终端 1 - Linux指令调用