当前位置:   article > 正文

内网穿透和frp配置_natfrp

natfrp


前言

由于 some 原因,接触到需要将内网虚拟机上的服务发布到公网上访问,于是有了这篇简单的文章。

原理内网穿透

工具frp

一、内网穿透是什么?

  • 简要描述:
    • 内网穿透:即 NAT 穿透,进行 NAT 穿透是为了使具有某一个特定源 IP 地址(公网)和源端口号的数据包不被 NAT 设备屏蔽而正确路由到内网主机。
  • 详细信息见:内网穿透

二、NAT技术简单描述

  • 知识点:有使用本地地址(私网IP地址)的主机在和外界通信时,都要在NAT路由器上将其本地地址转换成全球IP地址,才能和因特网连接。

  • NAT详细描述:nat (网络地址转换协议)

  • 查看内网主机公网IP地址:

    curl -4 ip.sb # 查看公网IPv4地址
    curl -6 ip.sb # 查看公网IPv4地址
    
    • 1
    • 2

三、开源内网穿透工具 frp

  • Github 地址: https://github.com/fatedier/frp

  • 使用frp的前提:

    1. 一台拥有公网IP的服务器(或VPS),此处使用腾讯云服务器。
    2. 处于内网的且可访问外网的计算机(包括虚机、容器),此处为虚拟机。
  • frp服务端配置

    • 腾讯云服务器上下载 frp。

      地址:https://github.com/fatedier/frp/releases

      arch # 查看服务器硬件结构类型,下载对应类型 frps。
      # x86_64 本人腾讯云服务器为x86_64架构,下载 linux_386 对应包
      wget https://github.com/fatedier/frp/releases/download/v0.37.1/frp_0.37.1_linux_386.tar.gz
      tar -zxvf frp_0.37.1_linux_386.tar.gz 
      cd frp_0.37.1_linux_386/
      
      • 1
      • 2
      • 3
      • 4
      • 5

      注意:下载慢可在虚拟上下载,然后使用scp指令上传到腾讯云服务器上(参见:https://blog.csdn.net/StepTp/article/details/120108025)。

    • 配置 frps.ini (以GitHub上示例,配置ssh 登录,端口为22)

      vim frps.ini 
      
      [common]
      bind_port = 7000
      
      • 1
      • 2
      • 3
      • 4
    • 启动。

      ./frps -c ./frps.ini
      
      • 1
  • frp客户端配置

    • 虚拟机上下载frp。

    • 地址同上

      arch # 查看虚拟机硬件结构类型,下载对应类型 frps。
      # x86_64 本人虚拟机为x86_64架构,下载 linux_386 对应包
      wget https://github.com/fatedier/frp/releases/download/v0.37.1/frp_0.37.1_linux_386.tar.gz
      tar -zxvf frp_0.37.1_linux_386.tar.gz 
      cd frp_0.37.1_linux_386/
      
      • 1
      • 2
      • 3
      • 4
      • 5
    • 配置 frpc.ini

      vim frpc.ini 
      
      # 文件配置
      [common]
      server_addr = 腾讯云服务器IP
      server_port = 7000 # 端口对应frps.ini文件
      
      [ssh]
      type = tcp
      local_ip = 虚拟机内网IP
      local_port = 22	# 虚拟机ssh端口为22
      remote_port = 6000 # 使用腾讯云服务器端口做映射
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
    • 启动。

      ./frpc -c ./frpc.ini
      
      • 1
  • 验证:ssh通过腾讯云服务器登录内网虚拟机

    ssh -oPort=6000 root@腾讯云IP	
    
    • 1

    在这里插入图片描述

    此处以root用户,登录虚拟机,输入root对应虚拟机密码,成功登录。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/801385
推荐阅读
相关标签
  

闽ICP备14008679号