首页 杂烩分享

NPS内网穿透


NPS和FRP都是内网穿透的工具,之前的有个文章是我新接触FRP而写的文章,我的友链博主秦有时推荐我了 解一下NPS,正好趁着现在自己有台服务器就学习了解一下,学习的过程中因为没好好看官方的文档,参考了别 人写的过程而造成了很多次的失败。

NPS介绍

nps是一款轻量级、高性能、功能强大的内网穿透代理服务器。目前支持tcp、udp流量转发,可支持任何 tcp、udp上层协议(访问内网网站、本地支付接口调试、ssh访问、远程桌面,内网dns解析等等......),此外
还支持内网http代理、内网socks5代理、p2p等,并带有功能强大的web管理端。

我的准备

1.外网:阿里云服务器CentOS 7.7 64位
2.内网:DEEPIN 系统(linux)
3.读NPS中文文档

NPS安装

1.首先下载NPS,要注意自己的系统版本,例如我搭建在外网,所以我要下载的是:
linux_amd64_server.tar.gz,去github去下载:下载地址
2.因为自己的网站使用的宝塔,所以有可视化的操作,因此下载完毕后创建nps文件夹,之后直接解压到nps文件夹内。
命令行的操作:

wget https://github.com/ehang-io/nps/releases/download/v0.26.1/linux_amd64_server.tar.gz
mkdir nps
tar -zxvf linux_amd64_server.tar.gz -C nps

新建文件夹和解压

3.进入你解压的文件夹内执行安装命令,

cd nps
sudo ./nps install

进入文件夹和安装nps

安装完成后的位置在:/etc/nps,不是之前你解压的文件夹里,之后需要配置都需要进入该位置进行改。

安装完成的信息

4.你需要改一些配置,例如端口、账号、密码等,他的位置为/etc/nps/conf/nps.conf
因为我是在宝塔的基础上进行搭建的,所以我通过自带的文件管理器进行编辑,并且修改了端口避免和宝塔的网站端口等冲突。

配置信息1

配置信息2

注意:如果是阿里云等国内服务器厂商,请在云服务器实例里开放端口。使用了宝塔也要开在安全里放端口,二者缺一不可。每个端口都需要打开,下面只列举了端口8000
(没安装宝塔,可以采用一下方法(方法来自:喵斯基部落))

#Centos 6系统
iptables -I INPUT -p tcp --dport 8000 -j ACCEPT
service iptables save
service iptables restart

#CentOS 7系统
firewall-cmd --zone=public --add-port=8000/tcp --permanent 
firewall-cmd --reload

(如果需要开放udp,宝塔只能开放tcp,因此都需要执行上面代码,将tcp换为udp即可
例如:firewall-cmd --zone=public --add-port=8000/udp --permanent

5.NPS的启动、关闭、重启(没用root账户代码前加上sudo,例如启动代码sudo nps start)。

nps start
nps stop
nps restart

6.启动后,登入后台地址,开始你的设置吧。此时NPS的安装已经完成了。

登陆页面

因为我只简单了解一下nps,所以现在只会访问内网的网站。我就以访问我的内网网站举例子:
在后台首先建立一个客户端,下面三项全部都调成yes(原因我不懂,看的别人的教程)除此之外,备注需要按填写。剩余三项可以自动生成,不过为了方便我就手动输入了验证密钥,方便记忆。

建立客户端

还需要进行添加域名解析。

增加域名解析

域名解析需要填写客户端的id,为了域名访问时能够访问你所设置的客户端。另外填好你的本地的网站的地址和端口。
服务器上全部设置完毕之后还需要你执行NPC的安装。

NPC的安装(深度系统)

1.首先下载NPC,要注意自己的系统版本,所以我要下载的是:linux_amd64_client.tar.gz,去github去下载:下载地址
2.下载完毕之后,自建一个文件夹npc,之后解压到npc文件夹内。
3.进入你npc文件夹内右键在终端内打开执行下面命令行:

./npc -server=ip:port -vkey=web界面中显示的密钥

例如我的是

./npc -server=nps.mebyz.cn:8002 -vkey=12345

(我写的是域名,写ip地址也可以)

连接服务器成功

注意:我写的这种是无配置文件的,也没有安装到系统进程中,相对简单。
如果需要更详细的了解请看文档:点我直达

4.我用HEXO的本地调试(本地调试的端口是4000,在上面域名解析中的内网端口里设置)测试一下,端口是8000(8000是上面NPS设置的http端口),测试可以访问。完成!

访问成功





文章评论