记录一次关于内网穿透工具natapp的使用
平常只用CSDN查查资料,一直想尝试着自己创作一次原创。以记录一年多来编程学习之路。不在能知,而在能行。所以,今天,他来了。
一、内网穿透简述
(一)概念
内网穿透原理是映射端口, 能让外网的电脑找到处于内网的电脑; 简单说就是局域网的服务外网访问不到,通过内网穿透技术来实现外网到内网的端口映射, 进行实现外网访问内网服务。
(二)工具支持
市场上流行的支持内网穿透的工具包括 Ngrok, NATAPP, 小米球, Sunny-Ngrok, echosite, Ssh + autossh, Lanproxy, Spike, Frp 等;推荐使用Ngrok, 大多工具其实是基于Ngrok 进行二次开发的。
二、基于Win系统NATAPP的使用
因为本人使用NATAPP,这里介绍下NATAPP的内网穿透功能。
具体操作流程:
- Natapp官网:https://natapp.cn
- 注册账号,实名认证
- 登录后,如下图
- 购买合适的隧道,相关的介绍见网站。
- ps: 像网页应用,微信开发可以个人推荐选择 VIP-2 型,HK-1 型(可以绑定自己的没有备案的域名),流量很便宜,开发时用不了很多。
- 隧道协议选择web适用于网页,微信开发;tcp适用于数据库链接,redis,kafka等需要端口号的。(介个样子就可以远程连接内网数据库在家撸代码了)
-
在我的隧道里选择隧道解析到内网的ip及端口,保存。authtoken要记下来。
-
下载客户端 https://natapp.cn/#download ,打开如下图。
选择适合电脑系统的下载,这里本人下的是Windows64的。下载之后,解压至任意目录,就会在该目录下得到natapp.exe。
-
运行方式
(1) 点击运行(也可以配置成环境变量后用cmd进入黑窗口运行),将会出来一个界面。
window 启动客户端输入:natapp -authtoken=刚刚复制的authtoken
- Tunnel Status Online 代表链接成功
- Version 当前客户端版本,如果有新版本,会有提示
- Forwarding 当前穿透 网址 或者端口
- Web Interface 是本地Web管理界面,可在隧道配置打开或关闭,仅用于web开发测试
- Total Connections 总连接数
(2) config.ini方式
根据操作系统下载不同的config.ini文件到刚才下载的natapp.exe同级目录。 将得到的authtoken填进去 (其他地方都不填),然后保存 。
windows下,直接双击natapp.exe 即可.
在Linux/Mac 下 需要先给执行权限:chmod a+x natapp
然后再运行:
./natapp
下载config.ini网址:https://natapp.cn/article/config_ini
-
将natapp分配的网址放在浏览器访问试试,成功!
三、基于Linux系统NATAPP的使用
基于本地Ubuntu18.4系统的使用
(一)进入/usr/local下创建natapp目录,并打开权限
sudo mkdir natapp
sudo chmod 777 natapp
(二)通过FZ(filezilla工具或其他远程传输工具)将linux版本的natapp客户端压缩包传输到/usr/local/natapp
cd /usr/local/natapp
(三)解压该压缩包
unzip natapp_linux_amd64_2_3_9.zip
(四)配置权限
chmod a+x natapp
(五)进入启动目录
cd /usr/local/natapp
(六)查看natapp启动进程
ps -ef|grep natapp
(七)杀进程
kill -9 进程id
(八)启动命令
./natapp -authtoken=xxx -log=stdout -loglevel=ERROR &
nohup 默认会在当前目录 创建 nohup.out 文件,会记录natapp运行日志,为避免日志过大,可以将日志等级降低,后台运行如:
nohup ./natapp -authtoken=xxx -log=stdout -loglevel=ERROR &
(九)如果需要开机自启
需要进入/etc/rc.local下,写入后台启动的shell脚本
vim /etc/rc.local