nps内网穿透

首先进入到服务器的管理页面,以腾讯云为例(我只有腾讯云的服务器)

点击镜像信息里的重装系统,将服务器重装成centos的系统(7.6, 8.0和8.2的都可以),如果你习惯Ubuntu或者debain也行

重装完成后点实例里重置密码,接着就可以用ssh工具连接到这台服务器了,用户名root,密码就是重置后的密码

为了避免后面频繁的添加端口规则,可以直接在防火墙一栏放通全部端口。如果怕被入侵还是老老实实用一个加一个

用ssh连接工具登录这台服务器,登上去第一件事是干嘛呢,当然是运行yum update -y了。然后可以装一个宝塔,这工具我还是很喜欢的,简化了一些步骤。一键安装命令:yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh,安装完成后通过外网面板地址进入到管理页面改入口地址和账号密码

接着去 https://github.com/ehang-io/nps/releases 下一个linux_amd64_server.tar.gz上传到服务器,也可以使用宝塔的远程下载

下载完成后直接用宝塔解压。可以看看nps的官方文档,还是很详细的,而且是中文的。https://ehang-io.github.io/nps/#/?id=nps

解压完成的用ssh工具运行cd /www/wwwroot/./nps install

接着编辑nps的配置文件 /etc/nps/conf/nps.conf,宝塔和vim都可以。主要改端口,用户名和密码。域名有的话也可以改

改完之后运行nps start启动nps,然后firewall-cmd --zone=public --add-port=8080/tcp --permanent开放端口(注意端口修改成上面配置文件的端口)
在开放一下8024这个端口,也是nps的。可以在配置文件中修改 firewall-cmd --zone=public --add-port=8024/tcp --permanent

firewall-cmd --reload重新加载防火墙生效

接着就可以通过ip:端口访问nps的登录界面了,在客户端界面添加一个,备注改一下,其他都可以默认

./npc -server=ip:8024 -vkey=iy1o9dolt0ujpclv -type=tcp下面那个客户端命令就是需要在被远程的电脑上运行的

还是在这个页面https://github.com/ehang-io/nps/releases下载win的客户端windows_amd64_client.tar.gz,解压后里面的npc.exe就是需要的了,

直接运行在cmd下运行npc.exe -server=ip:8024 -vkey=iy1o9dolt0ujpclv -type=tcp就可以在nps管理界面看到客户端从离线变成了在线了。(注意修改命令中的ip为自己的ip或者域名)

作为服务运行

运行npc.exe install -server=ip:8024 -vkey=iy1o9dolt0ujpclv -type=tcp 会创建一个服务(注意修改命令中的ip为自己的ip或者域名)
然后npc.exe start 启动这个服务,这样每次开机都会自动启动

创建端口映射

新增tcp隧道,客户端id就是客户端那一栏的id,第一个创建的一般是2

放行服务器端口
firewall-cmd --zone=public --add-port=33890/tcp --permanent
firewall-cmd --reload

接着就可以用win自带远程连接ip:33890了

问题

1、服务器8M带宽会不会卡
不会,很流畅,基本不会有卡顿的情况,但是和本地还是有区别的。其实微软自带的远程已经优化的很好了,占不了太多的带宽,我估计4-5M就够了
2、这么麻烦,还不如用xxx
你喜欢用啥就用啥呗,我也没拿刀架你脖子上,没必要说一句吧

公网直连

宽带设置

首先宽带需要自己办的,然后问办宽带的能不能给公网IP,一般是不能,看地方和运营商,有些是会额外收费。有公网IP后,还需要将光猫改成桥接,用路由器拨号(改光猫需要让办宽带的弄,他们可以远程弄)。另外,喜欢折腾的可以搜索光猫牌子型号,看有没有提权的漏洞,普通玩家不建议这么玩。

路由器设置

上网方式需要选择宽带拨号,之后填写账号密码即可

然后是DHCP服务,这是路由器用来绑定IP和设备mac,只要设备mac不变,路由器分配给设备的内网地址也不会变。正常情况下不固定也不会变,具体看路由器。

接着是端口转发,也就将路由器收到的端口请求转发到内网的某台机器,比如将内网中路由器的33890端口的请求转发到192.168.2.218:3389。这个名称根据路由器的不同可能不一样,比如有的叫端口映射。此时访问路由器的公网IP:33890就可以连接到内网的电脑了

扩展

提一个有意思的功能,dmz主机。是将路由器收到的所有请求转发到设置的dmz主机上,比如你上面不设置端口转发,然后将dmz主机设置为192.168.2.218,那么你公网ip:3389就可以直接连接到这台电脑,其他端口也是一样的。

为什么有端口转发还需要这个呢?因为端口转发数量是有限的,我的路由器只能设置几条转发规则。如果这样设置的话,这个内网电脑就可以完全跟公网IP关联了,也就等同于一台完整的服务器了。(当然80,443,8080这些端口都已经被运营商封了)

同时设置了端口转发和dzm主机会优先端口转发。转发规则没有的才会转发到dmz主机上。

ddns

运营商分配的公网IP一般都会变的,所以需要用ddns动态解析到域名上,每隔几分钟获取一次公网IP,判断是否变了,如果没变就什么都不做,变了就将新的IP解析到域名上

我之前用的是自己写的Python脚本,域名是腾讯云的,腾讯云有http解析域名的接口。
这是相关文档:https://www.dnspod.cn/docs/records.html
id和token获取:https://docs.dnspod.cn/account/5f2d466de8320f1a740d9ff3/

Python脚本如下:

import json
import requestsclass DDNS:def __init__(self, _id, token):self.data = {'login_token': f"{_id},{token}", 'format': 'json'}def updateRecord(self, domain):ip = self.getIP()if not ip:print("获取本地IP失败!")return _id, _ip = self.getRecordIP(domain)if(_ip != ip):print(f"本地IP:{ip}, DNS记录: {_ip}")self.modifyRecordIP(domain, _id, ip)else:print("IP未变动,不进行任何操作!")def getIP(self):url = "http://ip.03k.org"try:resp = requests.get(url, timeout=30)except:return Nonereturn resp.textdef checkAPI(self):url = "https://dnsapi.cn/Info.Version"try:resp = requests.post(url, data=self.data, timeout=30)except Exception as e:print(e)return Falsereturn resp.json().get("status").get("code")def getUserLog(self):url = "https://dnsapi.cn/User.Log"try:resp = requests.post(url, data=self.data, timeout=30)except Exception as e:print(e)return Falsereturn resp.json()def getRecordIP(self, domain, sub_domain="www", record_type="A"):url = "https://dnsapi.cn/Record.List"data = self.data.copy()data["domain"] = domaindata["sub_domain"] = sub_domaindata["record_type"] = record_typetry:resp = requests.post(url, data=data, timeout=30)except Exception as e:print(e) return (0, None)d = resp.json()if d.get("status") and d.get("status").get("code"):records = d.get("records")return records[0]["id"], records[0]["value"] if records else (0, None)else:return (0, None)def modifyRecordIP(self, domain, record_id, value, sub_domain="www", record_type="A"):url = "https://dnsapi.cn/Record.Modify"data = {"domain": domain, "record_id": record_id, "sub_domain": sub_domain,"record_type": record_type, "record_line": "默认", 'value': value,"ttl": 600, }data.update(self.data)try:resp = requests.post(url, data=data, timeout=30)except Exception as e:print(e) return (0, None)d = resp.json()print('修改记录结果:', d)return d.get("status").get("code")  if __name__ == "__main__":_id = 111111token = "xxxxxxxxxxxxxxxxxx"dd = DDNS(_id, token)domain = "baidu.com"dd.updateRecord(domain)

ipv6直连

这种方法其实很早就有了,我稍微提一下,我也没试过。

其实很早之前就有人提出了个新概念ipv6,而且电脑也早就支持,从网卡属性就可以看出来。大部分高校的校

网也很早就支持ipv6了,大学时还能看到一些ipv6免费使用校园网这些文章。

但是这东西现在局限性很大,对于大部分人来说都挺鸡肋的。限制条件如下:
1、运营商支持(通信两边都需要支持)
2、路由器支持(通信两边都需要支持)
3、dns支持(如果想要用域名连接,不过,现在很多域名提供商都可以解析ipv6了)

因为ipv6和ipv4协议并不互通,所有要用ipv6通信,就必须双方都是。虽然现在大部分APP或者网站说已经支持,其实也只是支持而已。你如果禁用ipv4,还是打不开,或者能打开但是样式乱了,功能不能完全使用等。这种是因为他某些服务确实有ipv6的服务器,并不是所有的服务器都已经换了,只是为了应工信部的要求。

可以这么说,只要nat技术还能用,ipv6很难完全取代ipv4,至少在最近的几十年里。原因只有一个字:钱。要完成取代的话,那么之前的所有网络设备都用不了,谁来承担这个损失?普通用户肯定不能接受,你给我提供的服务啥也没变,就给了个公网IP,我可能都用不到,还要我付那么大一笔钱给你。运营商也不能接受,我也不是慈善机构。那么公司肯定也不能接受,你说换就换,我的网络设备损失谁来承担。所以要完全过渡,需要慢慢的更换,这是个很长的过程

如果只是用于远程连接的话,这东西还是有点用的,因为我们只需要保证远程的电脑和被远程的电脑满足条件。打开测试网站就可以看到电脑是否支持了,https://www.test-ipv6.com/

如果看到这种,只是说明你电脑没有被分配ipv6地址,可能是路由器不支持。可以用网线直连光猫再试一下,如果有了那就是路由器不支持,我在恩山看到某些路由器可以通过刷一些特殊的固件来支持,当然我也没试过。如果直连光猫都没有检测到,那就只能向你的运营商咨询了。(我之前还问了办宽带的,为什么没有ipv6地址,不是说普及了?然后就被喷了,谁告诉你ipv6普及了,然后就没有然后了)

如果公司电脑也是这种情况,那就没办法,换其他办法吧。你总不可能跟运维说,给我整个ipv6。

两边都能检测到ipv6地址,就可以使用这个IP远程连接了,步骤和其他的一样。

使用nps做内网穿透远程桌面相关推荐

  1. Windows内网穿透远程桌面:公网远程桌面控制内网电脑 2/3

    系列文章 Windows内网穿透远程桌面:启用Windows远程桌面 1/3 Windows内网穿透远程桌面:公网远程桌面控制内网电脑 2/3 Windows内网穿透远程桌面:配置固定的远程桌面公网T ...

  2. 测试龙芯 LoongArch .NET之 使用 FastTunnel 做内网穿透远程计算机

    龙芯3A5000 已经上市,从老伙计哪里搞来一台3A5000 机器,安装统信UOS.使用体验上看还可以,就是软件生态急需建设,软件生态的建设上自然有我dotnet 的一份力量.龙芯团队已经完成了Loo ...

  3. (原)神卓互联内网穿透远程桌面方法

    转载自:https://www.shenzhuoyun.com/post/10083,亲测可用,吐血推荐,版权归原作者所有,该帖只做个人记录使用. 场景一:有一些时候,比如,我们回家了,或者外出,有紧 ...

  4. frp-内网穿透-远程桌面

    frp 内网穿透远程桌面(Windows 10)配置 frp 是什么 frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp 协议,为 http 和 https 应用协议提供了额外 ...

  5. SSH远程连接访问树莓派【无公网IP做内网穿透】

     系列文章 树莓派搭建网站,并免费内网穿透发布上线到公网 树莓派搭建WordPress网站,并内网穿透发布上线无需公网IP服务器 为树莓派上的WordPress网站配置自己的域名,并内网穿透发布上线公 ...

  6. 树莓派使用NPS实现内网穿透

    :# 树莓派使用NPS实现内网穿透 前言 之前想实现内网穿透,折腾过花生壳,不过有限制.后面又尝试了FRP,不过还没有成功过. 这次使用NPS实现内网穿透,主要看上了它的图形化配置界面. 准备 服务端 ...

  7. 内网穿透远程群晖NAS:免费安装cpolar内网穿透 1/6

    系列文章 内网穿透远程群晖NAS:免费安装cpolar内网穿透 1/6 内网穿透远程群晖NAS:映射5000端口实现公网访问群晖 2/6 内网穿透远程群晖NAS:配置cpolar内网穿透生成数据隧道 ...

  8. 做内网穿透外网远程访问群晖NAS 2-2

     系列文章 做内网穿透外网远程访问群晖NAS 1-2 做内网穿透外网远程访问群晖NAS 2-2 如何在群晖NAS上安装cpolar内网穿透 配置群晖NAS中的cpolar开机自启动 1-2 配置群晖N ...

  9. 内网穿透远程群晖NAS:使用自定义域名 3/5

      系列文章 群晖NAS安装cpolar内网穿透套件(群晖6.X版) 内网穿透远程群晖NAS:使用随机临时地址 1/5 内网穿透远程群晖NAS:使用固定二级子域名 2/5 内网穿透远程群晖NAS:使用 ...

  10. 内网穿透远程群晖NAS——上篇(7.X版)

     系列文章 如何在群晖NAS上安装cpolar内网穿透(群晖7.X版) 内网穿透远程群晖NAS--上篇(7.X版) 内网穿透远程群晖NAS--下篇(7.X版) 将群晖NAS搭建的网站发布上线[内网穿透 ...

最新文章

  1. 对xxl-job进行simpleTrigger并动态创建任务扩展
  2. linux常用命令记录
  3. boost::counting_range相关的测试程序
  4. dll已加载但找不到入口点DLLRegisterServer
  5. 达内软件测试证书是什么证书,达内软件测试培训让我拥有了实际工作经验
  6. Linux 创建快捷方式
  7. Calico数据路径:IP路由和iptables
  8. Ionic简介和环境安装
  9. 读高性能网站建设指南
  10. GitLab推动基于Kubernetes的Auto DevOps更新
  11. 11,一道关于栈内存分配的题目
  12. MySQL如何访问Postgres
  13. 深源恒际上线二代个人信用报告OCR识别服务
  14. idea解决Untracked Files Prevent Merge问题
  15. excel合并两列内容_办公实用Execl表格中按这个键可以快速合并两列单元格内容...
  16. 两种异步时钟同步化区别分析
  17. K倍交叉验证配对t检验
  18. 双稳态电路的两个稳定状态是什么_数字电路学习笔记(九):初识锁存器
  19. 聚观早报 | 苏宁易购入驻美团外卖;今日头条接入抖音电商
  20. python无限制邮件群发软件_收藏 - 使用Python通过SMTP协议群发/单发邮件方法

热门文章

  1. Manacher (马拉车算法)
  2. uniapp移动端实现pdf预览
  3. 计算机 统计学考研,统计学考研科目有哪些
  4. Linux编译安装iozone,Fedora下NFS的配置与iozone测试
  5. 使用Flask在Raspberry Pi上构建物联网服务器
  6. 软件注册机查找常用几个网址
  7. LibModbus库开发笔记(一):libmodbus库介绍、编译和基础工程模板
  8. 网络安全CTF竞赛模式、题目类别、所用工具小结
  9. 快速入门 | 篇十九:正运动技术运动控制器多轴同步与电子凸轮指令简介
  10. 纯C语言编程-游戏之Fly Bird