云服务器frp实现http内网穿透 ssh内网穿透

文章目录

  • 0. 下载及其相关注意事项
  • 1. frp http和ssh穿透流程图解

前言:本教程将教会您

如何暴露内网的http服务到公网访问

如何在远程公网ssh连接到自己家里的内网机器

0. 下载及其相关注意事项

云服务器上使用的是frp的服务端。在安装之前首先要明确当前使用的服务器的系统信息,否则使用了不匹配的frp版本,会出现:Segmentation fault的错误。可以通过arch命令查看系统信息。

arch
aarch64  #ARM架构
x86_64	#X86架构

对应frp版本:

frp_0.35.1_darwin_amd64.tar.gz    #Mac OS系统
frp_0.35.1_freebsd_386.tar.gz  	  #FreeBSD 32位系统
frp_0.35.1_freebsd_amd64.tar.gz   #FreeBSD 64位系统
frp_0.35.1_linux_386.tar.gz       #Linux 32位系统
frp_0.35.1_linux_amd64.tar.gz     #Linux 64位系统
frp_0.35.1_linux_arm.tar.gz 	  #Linux 32位嵌入式系统
frp_0.35.1_linux_arm64.tar.gz 	  #Linux 64位嵌入式系统
frp_0.35.1_windows_386.zip 	      #Windows 32位系统
frp_0.35.1_windows_amd64.zip      #Windows 64位系统
  1. 再服务器上下载对应的包

    根据你的版本进行选择

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

  2. 在个人的内网主机上下载对应的包

进入frp目录并查看目录下的文件,其中主要的是以下四个文件, 如果你的版本太新的话,你的文件后缀会是.toml的

cd frp && ls
frpc		#客户端的执行程序
frpc.ini	#客户端的配置文件
frps		#服务端的执行程序
frps.ini	#服务端的配置文件


  1. 配置服务器的frps.ini

    记得把注释都删除

    [common]
    bind_port = 7000 # 这个是跟客户端(内网主机)交互的端口
    vhost_http_port = 8080 # 你如果在客户端配置了http的请求,这里就需要配置该参数或者vhost_https_port https我没有用到就没配置,并且 你的客户端的local_port是多少,你这个就要配置多少 
    
    
  2. 配置客户端的frpc.ini

    [common] # 这个不能乱填 这个是公共的
    server_addr = 服务器ip #这里是服务器ip 
    server_port = 7000
    
    [http] # 这个你随便填都没啥,每个中括号之间是一个配置环境 当前就是http的配置环境
    type = http  # 指定请求的类型 配置了这个后 上面的服务端配置就需要加vhost_http_port
    local_ip = 127.0.0.1 # 本地对应服务ip是多少
    local_port = 8080 # 本地服务port是多少
    custom_domains = 服务器的域名或者ip # 如果你指定了http服务  这个是必须要填的 ,这个是域名 ,要是你没有域名就填ip就行
    
    [ssh] # 如上
    type = tcp # 
    local_ip = 127.0.0.1
    local_port = 22
    remote_port = 6000 # 这个很重要,你在当前客户端设置后,  当客户端和服务端连接后,服务端会监听6000端口的请求,如果有6000的请求进来,那么客户端就会走当前的配置服务,走本机的22 ssh服务
    
  3. 启动

    服务端启动

./frps -c frps.ini

​ 客户端启动

./frpc -c frpc.ini

  1. 测试

    http测试

    云服务器frp实现http内网穿透 ssh内网穿透_第1张图片

    ssh测试 (mac测试远程ssh需要开放端口,关闭防火墙,开启共享-远程登录)

    云服务器frp实现http内网穿透 ssh内网穿透_第2张图片

1. frp http和ssh穿透流程图解

绿色为http请求的穿透过程

红色的为ssh连接的穿透过程

(马赛克部分为本人的公网服务器ip)

云服务器frp实现http内网穿透 ssh内网穿透_第3张图片

你可能感兴趣的:(系统环境搭建,Linux,服务器,http,ssh)