FastTunnel-开源内网穿透框架

一颗小胡椒2022-07-27 17:57:09

FastTunnel


FastTunnel是用.net core开发的一款跨平台内网穿透工具,它可以实现将内网服务暴露到公网供自己或任何人访问。

与其他穿透工具不同的是:FastTunnel项目致力于打造一个易于扩展、易于维护的内网穿透框架,任何人都可以基于该框架二次开发,你可以直接通过nuget安装依赖进行开发,当然它也是开箱即用的工具。

荣获GVP开源项目


FastTunnel荣获开源中国2020最有价值开源项目

开源仓库地址


github: https://github.com/SpringHgui/FastTunnel

gitee: https://gitee.com/Hgui/FastTunnel 

官网:https://suidao.io

什么是内网穿透?


一般来说,如果你在内网部署一个网站或应用,也只有处于内网之中的其他网络设备才能访问;但如果你想让公网上任何人都可以访问你内网的应用,则必须要采取一些手段,内网穿透在这种背景下应用而生。

FastTunnel能够做什么?


  • 家中建站
  • 微信开发
  • 远程桌面
  • erp互通
  • svn代码仓库
  • 端口转发
  • iot物联网
  • 等等场景,不局限以上

搭建属于自己的内网穿透平台


    1.在仓库的 releases 页面下载对应的程序

    2.根据自己的需求修改客户端以及服务端配置文件appsettings.json

    3.服务端运行FastTunnel.Server

    4.客户端运行FastTunnel.Cient (客户端可运行在内网任何一台设备上)

配置示例


1.用自定义域名访问内网web服务

例如你拥有一台云服务器,公网ip地址为 110.110.110.110 ,同时你有一个域名 suidao.io,你希望访问 test.suidao.io可以访问你自己电脑上部署的一个网站。

你需要新增一个域名地址的DNS解析,类型为A,名称为 * , ipv4地址为 110.110.110.110 ,这样 *.abc.com的域名均会指向110.110.110.110的服务器,由于FastTunnel默认监听的http端口为1270,所以要访问http://test.abc.com:1270。

服务端配置文件:config/appsettings.json

"ServerSettings": {
    // 必选 默认值
    "BindAddr": "0.0.0.0",
    // 必选 默认值
    "BindPort": 1271,
    // 自定义域名web穿透必须
    "WebDomain": "suidao.io",
    // 服务监听的端口号, 访问自定义域名站点时url为 http://{SubDomain}.{Domain}:{ProxyPort_HTTP}/
    // web穿透必须
    "WebProxyPort": 1270,
    // 可选,ngixn反向代理后可省略域名后的端口号进行访问
    "WebHasNginxProxy": false,
    // 可选,访问白名单,不在白名单的ip拒绝
    "WebAllowAccessIps": [],
    // 可选,是否开启SSH,禁用后不处理SSH类型端口转发.默认false。
    "SSHEnabled": true
  }

客户端配置文件:

"ClientSettings": {
    "Common": {
      // 服务端公网ip, 对应服务端配置文件的 BindAddr,支持域名
      "ServerAddr": "test.cc",
      // 服务端通信端口,对应服务端配置文件的 BindPort
      "ServerPort": 1271
    },
    "Webs": [
      {
        // 本地站点所在内网的ip
        "LocalIp": "127.0.0.1",
        // 站点监听的端口号
        "LocalPort": 8080,
        // 子域名, 访问本站点时的url为 http://{SubDomain}.{Domain}:{ProxyPort_HTTP}/
        "SubDomain": "test", // test.test.cc
      }
    ]
  }

2.如何去掉域名后的端口号

在服务器端部署nginx,通过nginx反向代理将80端口流量转发至1270端口,nginx的配置示例如下:

http {
    # 添加resolver 
    resolver 8.8.8.8;
    # 设置 *.abc.com 转发至1270端口
    server {
      server_name  *.abc.com;
      location / {
         proxy_pass http://$host:1270;
         proxy_set_header   Host             $host;
         proxy_set_header   X-Real-IP        $remote_addr;
         proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
      }
      # 可选
      error_log /var/log/nginx/error_ft.log error;
    }
}

3.配置端口转发

假设内网有一个mysql服务端口为3306,在内网的ip地址为192.168.1.100,你希望访问suidao.io:33306端口的请求转发至内网的mysql上,则需要如下配置:

1.服务端配置文件不变

2.客户端配置如下

"ClientSettings": {
    "Common": {
      // 服务端公网ip, 对应服务端配置文件的 BindAddr,支持域名
      "ServerAddr": "test.cc",
      // 服务端通信端口,对应服务端配置文件的 BindPort
      "ServerPort": 1271
    },
    "Webs": [
    ],
    /**
     * ssh穿透,ssh访问内网主机
     * 访问方式 #ssh -oPort=12701 {root}@{ServerAddr}
     * ServerAddr 填入服务端ip,root对应内网用户名
     */
    "SSH": [
      {
        "LocalIp": "192.168.1.100",
        "LocalPort": 3306,
        "RemotePort": 33306
      }
    ]
  }

3.远程内网电脑

windows:只需要将上一步中的3306端口换成3389

linux:只需要将上一步中的3306端口换成22

结语


相信聪明的你已经看懂了如何配置,以及每个参数代表的意义,如果还有不懂的地方,可以提issue给作者。有兴趣的朋友可以去clone下来耍耍,给作者提提需求、bug,如果能提交代码一起参与开发改进就更完美了。

开源中国域名服务器
本作品采用《CC 协议》,转载必须注明作者和本文链接
与其他穿透工具不同的是:FastTunnel项目致力于打造一个易于扩展、易于维护的内网穿透框架,任何人都可以基于该框架二次开发,你可以直接通过nuget安装依赖进行开发,当然它也是开箱即用的工具。
溯源反制思路整合
2021-07-27 09:41:52
溯源反制思路整合0x01反制的整体思路0x02 反制具体思路0x0201 反制主机0x0202 反制后门附件
对于公益SRC来说,想要冲榜就不能在一个站上浪费大量时间,公益SRC对洞的质量要求不高,所以只要 花时间,还是可以上榜的。在对某站点进行测试SQL注入的时候,先通过一些方式测试是否可能存在漏洞,然后可以直接sqlmap一把梭,也可以手工测试,然后提交漏洞。任意注册算是低危漏洞,不过也有两分。不管是进行SRC漏洞挖掘,还是做项目进行渗透测试,又或者是打红蓝对抗,一定要做好信息收集。
信息搜集:开源情报信息收集、创建企业密码字典进入内网:基于企业弱账号漏洞、基于系统漏洞进入、网站应用程序渗透隐匿攻击:Command and Control、代理内网跨边界应用:内网跨边界转发、内网跨边界代理穿透、shell反弹等
一个内网安全攻防的知识仓库
攻击者利用运维网管用户群体需求,搭建伪造的官网站点,诱使下载伪造的运维工具,实现对受害主机远程控制等窃密行为。
而对于 DNS 反射放大攻击来说,DNS cookies 是唯一的防御措施。认为设置 DO 且存在至少一次 DNSKEY 或 DS 请求的,属于使用了 DNSSEC。QNAME 最小化分类为单级、带下划线的双级与多级,前两者为遵循 QNAME 最小化规范。到了 2021 年,尽管 DNSSEC 解析服务器只占总量的 17.4%,但其请求量已经超过七成。仍然按照国家来看,平均使用率为 17%。红色部分为存在明显问题的。推测可能是与某些 VOIP 相关的软件存在缺陷所导致的。近年来,针对 DNS 的研究也是接连不断,从各个方面进行了研究与测量。
Scanners-Box 指引#简介#Scanners-Box是一个集合github平台上的安全行业从业人员自研开源扫描器的仓库,包括子域名枚举、数据库漏洞扫描、弱口令或信息泄漏扫描、端口扫描、指纹识别以及其他大型扫描器或模块化扫描器;该仓库只收录各位网友自己编写的一般性开源扫描器,类似nmap、w3af、brakeman等知名扫描工具不收录。
安全设备在企业安全防护中起到攻击监测告警和攻击拦截作用,是安全日志的直接输出者和防护策略生效者。统一日志平台在Elastic Stack技术栈的基础上,加入Kafka消息队列,实现对安全设备告警日志的统一管理,系统架构如图3所示。日志采集主要由Syslog、Beats、Kafka三部分组成,完成了从安全设备源端将告警日志采集至消息队列的过程。
一颗小胡椒
暂无描述