首页 > 其他分享 >nps内网穿透使用

nps内网穿透使用

时间:2024-05-17 15:18:33浏览次数:16  
标签:web 配置 端口 npc 穿透 conf 内网 nps

原版的https://github.com/ehang-io/nps已经停止更新

新版的地址 https://github.com/yisier/nps

一、安装

可以下载已经编译好的程序安装。网上有很多教程。

也可以下载源码编译,需要注意的是如果到cmd/nps下面编译,运行的时候,需要把conf目录拷贝到nps目录下才能运行,缺少配置文件会运行失败。

所以直接在根目录运行

go build cmd/nps/nps.go
go build cmd/npc/npc.go

比较好,正如源码中Makefile那样写的。

二、运行

1)nps配置

如上面所说,主要是注意配置好conf文件。

简单运行一个nps的基本配置,配置conf/nps.conf:

bridge_type=tcp   // npc连接到nps的方式
bridge_port=8024   // npc连接到nps的端口,例如这里配置为8024
bridge_ip=0.0.0.0

tls_enable=true  // 这个开启的话,npc可以以tls加密的方式连接到nps
tls_bridge_port=8025  // 这个是加密方式的npc访问端口,例如这里配置为8025

#web
web_host=a.o.com
web_username=admin   // web端登录账号
web_password=123     // web端登录密码
web_port = 8081    // web端登录端口
web_ip=0.0.0.0     
web_base_url=           // web的baseurl,和当前服务器上的其他url没冲突的话,置空就行
web_open_ssl=false      // 是否使用https,设置为true的话,下面的证书配置web_cert_file和web_key_file生效
web_cert_file=conf/server.pem
web_key_file=conf/server.key

log_level=6 // 日志级别数值越大,输出的内容就越多。
log_path=nps.log // 日志路径

#Web management multi-user login
allow_user_login=false    // 是否允许用户登录,结合allow_user_register可以多用户使用。注册的user信息会写入 conf/clients.json配置文件中。
allow_user_register=false  // 是否允许用户注册 , 开启后,用户可以注册用户和登录。不过截至目前,admin账号似乎没有管理功能,所以一般就保持默认false吧
allow_user_change_username=false  // 是否允许用户修改用户名

剩下的还有一些Web API的验证配置和其他连接上的控制配置。

 

之后就可以运行nps了,可以把nps配置为系统服务来运行,保持其稳定性。

对应的端口,例如上面提到的8081 web端口,8024 8025 npc连接端口,要注意防火墙放通。

还需要放通一个或者多个端口,用于业务端通过这些端口来穿透到内网目标主机(例如下面例举的12345端口)。如果只配置少量的端口,例如一个的话,由于端口冲突,那么这一个端口,同时只能用来访问一个客户端,此时需要关闭其他不用的客户端即可。

 

2)nps运行

在上面配置好nps之后,可以登录到页面进行配置,增加客户端

主要是配置 唯一验证密钥,即vkey。这个值配置好后,需要给到目标主机,目标主机上运行npc的时候,需要这个vkey来验证连接。

配置完成后,可以查看给到npc的配置:

 

然后配置隧道,比如TCP隧道:

 例如:服务端的端口设置为12345,目标端口为22(ssh),那么在npc启动后,通过命令:  ssh  [目标主机的用户]@[nps的地址]  -p 12345 即可通过ssh连接到目标主机上。

备注:这里的12345端口即前面提到的要确保放通的提供给业务端穿透的端口。

配置完成后,可以从客户端那边

 

3)npc配置

将 npc放到内网目标主机上,依据之前查看到的配置,例如 ./npc -server=xx.xx.xx.xx:8024 -vkey=mytest27 -type=tcp 来启动。

或者把这些配置写到conf/npc.conf文件中:

[common]
server_addr=xx.xx.xx.xx:8025  // nps的连接地址与端口,可以选择加密和不加密的连接端口
conn_type=tcp  // 连接方式
vkey=mytest27   // nps中配置的客户端的唯一验证密钥,即vkey

auto_reconnection=true  
max_conn=1000
flow_limit=1000
rate_limit=1000
crypt=true
compress=true
disconnect_timeout=60
tls_enable=true  // 如果是连接的加密端口,需要配置为true。这里连接的是8025加密端口,所以配置为true。

4) npc运行

按照上面配置好后,可以启动npc,确保npc也是保持运行,可以配置为系统服务。

然后就可以通过nps主机的地址和配置的通道端口来访问到目标主机的端口了。上面配置隧道的时候已经举例,不再赘述。

标签:web,配置,端口,npc,穿透,conf,内网,nps
From: https://www.cnblogs.com/zxq89/p/18197846

相关文章

  • 内网-信息收集
     在攻防演练中,当完成边界突破后进入内网,信息搜集成为一个重要环节。充分获取信息可以有效提高攻击效率,因此需要明确主要的信息搜集思路,并搜集必要的信息,以提高这一阶段的质量,为后续攻击打下更好的基础。 #网络架构:1、基本信息IP、网关、DNS、出网判断、本机网络连接以及......
  • 轻松突破网络限制:一站式内网穿透实战指南
    一、内网穿透技术概述内网穿透技术允许外部网络通过安全隧道访问内部网络资源。这种技术通过在内外网之间建立一个安全的穿透隧道,将外部网络的连接请求转发到内部网络的目标设备上,从而实现了外部网络对内网资源的访问。二、内网穿透的工作流程服务端启动:在内部网络中,选择......
  • 5款兼容Linux系统的国产软件,支持内网使用,满足信创用户办公需求
    随着信息技术应用创新(信创)的推进,对国产软件的需求日益增长,尤其是在保障信息安全和提升办公效率方面。Linux系统因其开源和安全性特点,受到了许多政企的青睐。今天给大家分享5款兼容Linux系统的国产软件,它们不仅支持内网使用,而且能够满足信创用户的办公需求。 01、永中文档 永......
  • 一个PowerShell内网渗透测试的大纲:
    一个PowerShell内网渗透测试的大纲:介绍内网渗透测试:什么是内网渗透测试?内网渗透测试的目的和方法。内网渗透测试的法律和道德问题。PowerShell基础知识回顾:PowerShell的基本语法和命令。PowerShell的常见用途和功能。PowerShell在内网渗透测试中的重要性和作用......
  • go高并发之路——缓存穿透、缓存雪崩
    缓存击穿、缓存穿透、缓存雪崩是使用Redis的三个经典问题,上篇文章讲了缓存击穿,今天就讲下剩下的两个问题。一、缓存穿透定义:缓存穿透是指查询一个根本不存在的数据,缓存层和DB层都不会命中。这样缓存永远不会生效,这些请求最终都会访问数据库。引起DB的压力瞬间变大,导致服务不可用......
  • 实战中内网穿透的打法
    前言在内网渗透时,一个WebShell或CobaltStrike、Metasploit上线等,只是开端,更多是要内网横向移动,扩大战果,打到核心区域。但后渗透的前提是需要搭建一条通向内网的“专属通道”,才能进一步攻击。可实战中因为网络环境不同,所利用的方式就不同。以下为自我总结“实战中内网穿透的打法”......
  • Fastjson反序列化漏洞2:BasicDataSource利用链-用于内网
    之前说的Fastjson的利用链,补充来了,没有偷懒(狗头)前情提要:BCEL:加载恶意类、Fastjson反序列化漏洞1:吹吹水Fastjson干了啥Fastjson就是处理json用的,可以将json转换成对象(自定义的一套序列化和反序列化)举个例子:下面这个json字符串经过JSON.parse(jsonString)处理可以得到com.test......
  • 通过内网穿透实现外网访问苍穹服务
    目录内网穿透使用教程外网访问苍穹服务内网穿透个人使用的内网穿透工具是OpenFrp使用教程注册网站进入主页后点击创建隧道,选一个能用的节点,填写具体参数。除了图中的参数外,其他参数随机或者留空就行。如图,我的苍穹服务地址是127.0.0.1,端口是8080在个人中心进行实名......
  • 内网渗透测试是一种测试组织内部网络安全的方法,旨在发现和利用网络中的漏洞以及获取未
    内网渗透测试是一种测试组织内部网络安全的方法,旨在发现和利用网络中的漏洞以及获取未授权访问内部资源的能力。以下是内网渗透测试基础的一些主题:理解内网环境:理解目标组织的网络拓扑、子网划分、主机和服务。收集有关内部网络设备、操作系统、应用程序和安全配置的信......
  • 小组练习:拿出手机发朋友圈/微信群, 收集你的目标用户对你当前产品的NPS。 每个项目小
    小组练习:拿出手机发朋友圈/微信群,收集你的目标用户对你当前产品的NPS。每个项目小组收集不少于30条投票,截图展示在学习通提交解答的同时,可以同步发布在团队和个人博客上,作为学习心得体会,记录下来。我的答案:【第二组】NPS(NetPromoterScore)是一种用来衡量客户满意度和......