go语言写一个ssh工具(开发小程序必备)
go语言写一个ssh工具(开发小程序必备)下载完服务器压缩包后,解压,然后进入解压后的文件夹服务端NPS的应用场景就太普遍了,对我来说最大的应用就是搭建内网穿透服务器,用来开发微信系以及各类小程序,NPS文档中也介绍了一些用途:可用的场景非常多,这个需要大家折腾以及发散思维,总之真的很强悍!详细的安装在文档中都有,这里也简单介绍一下(由于NPS是使用基于Go开发的,在跨平台方面支持很好):在Release选择自己需要的平台,也可以使用源码编译安装也可以使用docker安装:
介绍曾经在之前的文章中介绍过一个内网穿透工具frp,今天是另外一个,个人觉得是比较有优势的,它就是NPS,对于开发者来说真的非常有用,下面是一些介绍:
NPS一款轻量级、高性能、功能强大的内网穿透代理服务器,几乎支持所有协议,支持内网http代理、内网socks5代理、p2p等,简洁但功能强大的WEB管理界面,支持服务端、客户端同时控制,扩展功能强大,带有功能强大的web管理端,且全平台兼容,一键注册为服务,并且它是开源的!
Github
https://github.com/ehang-io/nps
支持的协议支持tcp、udp流量转发,可支持任何tcp、udp上层协议(访问内网网站、本地支付接口调试、ssh访问、远程桌面,内网dns解析等等……),此外还支持内网http代理、内网socks5代理、p2p等,以下就是Web管理界面的截图
应用场景
NPS的应用场景就太普遍了,对我来说最大的应用就是搭建内网穿透服务器,用来开发微信系以及各类小程序,NPS文档中也介绍了一些用途:
- 做微信公众号开发、小程序开发等----> 域名代理模式
- 想在外网通过ssh连接内网的机器,做云服务器到内网服务器端口的映射,----> tcp代理模式
- 在非内网环境下使用内网dns,或者需要通过udp访问内网机器等----> udp代理模式
- 在外网使用HTTP代理访问内网站点----> http代理模式
- 搭建一个内网穿透,在外网如同使用内网一样访问内网资源或者设备----> socks5代理模式
可用的场景非常多,这个需要大家折腾以及发散思维,总之真的很强悍!
NPS的特点详细的安装在文档中都有,这里也简单介绍一下(由于NPS是使用基于Go开发的,在跨平台方面支持很好):在Release选择自己需要的平台,也可以使用源码编译安装也可以使用docker安装:
服务端
下载完服务器压缩包后,解压,然后进入解压后的文件夹
- 执行安装命令
对于linux|darwin sudo ./nps install
对于windows,管理员身份运行cmd,进入安装目录 nps.exe install
- 启动
对于linux|darwin sudo nps start
对于windows,管理员身份运行cmd,进入程序目录 nps.exe start
安装后windows配置文件位于 C:\Program Files\nps,linux和darwin位于/etc/nps
停止和重启可用,stop和restart
如果发现没有启动成功,可以使用nps(.exe) stop,然后运行nps.(exe)运行调试,或查看日志(Windows日志文件位于当前运行目录下,linux和darwin位于/var/log/nps.log)
- 访问服务端ip:web服务端口(默认为8080)
- 使用用户名和密码登陆(默认admin/123,正式使用一定要更改)
- 创建客户端
客户端:
- 下载客户端安装包并解压,进入到解压目录
- 点击web管理中客户端前的 号,复制启动命令
- 执行启动命令,linux直接执行即可,windows将./npc换成npc.exe用cmd执行
如果使用powershell运行,请将ip括起来!
如果需要注册到系统服务可查看注册到系统服务
后续以上都是基本的一些安装配置,具体如何使用可以直接到文档中去学习,文档非常详细
包括域名解析、tcp隧道、udp隧道、socks5代理、http正向代理、私密代理、p2p服务等等。以下是服务器端配置
客户端的配置非常丰富,也是因为其功能非常强悍,客户端分为无配置文件模式和有配置文件模式,有需要的可以了解一下,应用需要自己慢慢折腾
总结NPS是一个同frp一样类似的内网穿透代理服务器,而且安装配置也非常简单,功能非常强大,主要还是开源免费,作为程序员,必须折腾起来!当然市面上也有很多内网穿透工具,像花生壳等,但是不如自己来的实在,希望本文能帮助到你!
PS:需自备公网IP服务器