Docker上部署 nps 和 npc 实现内网穿透

现在 nps 已经开始运行了。,为什么这里要停止运行呢?,因为这时候在 config 目录下已经生成了一些配置文件,考虑到安全性,我们需要做一些改动。,打开后重点关注下面这几项:,以上是默认的配置,建议改掉。,现在可以在网页端访问 <ip_addr>:<web_port>,并通过用户名 <web_username> 和密码 <web_password> 登录后台管理界面了。
能够成功访问后,继续下面的步骤。,点击左侧菜单栏的 客户端 选项,再点击新增。,Docker上部署 nps 和 npc 实现内网穿透,设置一个 客户端验证密钥,这里可以随便填。压缩、加密愿意的话也可以选 yes。,Docker上部署 nps 和 npc 实现内网穿透,设置好后点击 新增 即可。,Docker上部署 nps 和 npc 实现内网穿透,留意一下这里的 idvkey。,本地机建议选择一台 7*24 小时运行的设备,一般是路由器或者 NAS ,我这里就选择群晖了,DSM 有很好用的 docker 图形化管理套件,所以下面用图形化界面演示如何部署 npc 。,点击菜单栏中的注册表,搜索 npc-client,下载第一个就行。,Docker上部署 nps 和 npc 实现内网穿透,点击菜单栏中的映像,找到下载好的npc,启动。,Docker上部署 nps 和 npc 实现内网穿透,在高级设置->网络中注意勾选使用与 Docker Host 相同的网络。,Docker上部署 nps 和 npc 实现内网穿透,再到高级设置->环境中修改两个环境变量:,对应云主机的 <ip>:<bridge_port> VKEY,对应上面添加过的客户端的 vkey,Docker上部署 nps 和 npc 实现内网穿透,接着一路点击 应用,启动容器即可。,这时候在 nps 后台可以看到客户端已经在线。,Docker上部署 nps 和 npc 实现内网穿透,前面部署 nps 时候已经配置了一部分了,接下来要配置的就是具体需要穿透的端口了。,这里举例配置一下 Jellyfin 的 http 端口 8096
进入 nps 后台管理,点击左侧菜单栏的 客户端 选项,再点击新增。,Docker上部署 nps 和 npc 实现内网穿透,类型
这里选 tcp 不用动它。 备注
随便填,方便自己记就行。 服务器端口
指外放访问端口,我这里跟 Jellyfin 内网一致了,这里只是为了演示用默认,等下就会改掉。 目标
指内网对应服务的地址和端口。 客户端 id
就是上面我说了要留意一下的 id,我这里是 3。,Docker上部署 nps 和 npc 实现内网穿透,然后点击 新增。,Docker上部署 nps 和 npc 实现内网穿透,这样一条隧道就添加好了。,至此内网穿透算是部署好了。,尝试访问一下 Jellyfin。,Docker上部署 nps 和 npc 实现内网穿透,有时候运行的容器会自己挂掉,虽然不经常发生,但是偶尔来一次,遇上刚好要用的时候就很烦人。
下载演示我在服务端如何让容器保活的,方法比较粗暴但有效。,创建目录来存放脚本和日志文件。,会得到一长串 ID,记下来 <nps_id>。,如果你返回了多个 ID,那你应该知道要怎么区分那个是 nps 的。,keepActive.sh,创建 bash 脚本,放到 /root/docker/nps/script/keepActive.sh,如果是服务 docker 挂了,且重启失败,那就不是保不保活的问题了,登上服务器检查吧。,crontab.set,创建一个 crontab.set,用来配置定时任务。这个文件就随便放了,一次性的。,接着运行:,这里是配置一分钟运行一次 keepActive.sh 脚本,所以如果 nps 挂了,一分钟内它就会重启了。,如果你还配置了其他的定时任务,那你应该知道怎么设置 crontab,别把以前配置的任务给覆盖了。,Docker的容器化技术为应用的部署和管理带来了很大的便利性,尤其是在内网穿透这种需要部署多个应用的场景下。本文介绍了如何使用Docker部署nps和npc实现内网穿透,通过容器的隔离性和安全性,可以有效地保护应用的安全性。同时,Docker的易用性和可扩展性也为应用的管理和维护带来了很大的便利性。
返回顶部
跳到底部

Copyright 2011-2024 南京追名网络科技有限公司 苏ICP备2023031119号-6 乌徒帮 All Rights Reserved Powered by Z-BlogPHP Theme By open开发

请先 登录 再评论,若不是会员请先 注册