一共有两部分,一部分是windows安装,一部分是linux系统(使得ip显示自己的阿里云)。
1.一台云服务器
2.配置安全组
3.在自己的电脑上安装nps
云服务器的话自己买,我这里使用的是阿里云
讲一下配置安全组
打开阿里云的官网进行登录,打开控制台,然后点击云服务器ECS,点击实例。右边点击更多,打开网络和安全组,安全组配置
然后点击右侧的配置规则
这里的入方向是其他主机能够访问这台服务器的端口,出方向是这台服务器能够输出数据的端口
这里点击快速添加,我这里是将所有的端口都开放了。
这里要想nps搭建成功必须打开80 8024 8080 。这里我是害怕出现意外都开启了。
在自己电脑上安装nps windows版的客户端
Releases · ehang-io/nps · GitHub
下载这个版本windows_386_client.tar.gz
下载之后放到C盘的文件夹里。等一下会使用。
这里使用远程连接连接服务器,使用Workbench远程连接。
这里使用的是docker安装,
首先先安装docker:
sudo curl -sSL https://get.daocloud.io/docker | sh
安装NPS服务端
# 创建 /opt/nps 目录存放配置文件
mkdir /opt/nps
# 安装wget并且下载配置文件
yum install -y wget && wget https://img.zeruns.tech/down/conf.zip
# 解压配置文件到 /opt/nps 目录
unzip conf.zip -d /opt/nps
# 拉取 ffdfgdfg/nps 镜像
docker pull ffdfgdfg/nps
# 运行 nps 容器,配置文件夹 conf 在 /opt/nps/conf 目录下
docker run -d --name=nps --restart=always --net=host -v /opt/nps/conf:/conf ffdfgdfg/nps
# 查看日志
docker logs nps
#关闭防火墙
service iptables stop或者systemctl stop firewalld.service//这俩一个是低版本CentOS 5/CentOS 6一个是高版本的.
这里我一开始都安装完毕了,但是就是不能访问。对了这里的访问方式是:
安装完后在浏览器打开:http://你服务器IP:8080
这里如果你出现无法访问的问题,第一步先尝试阿里云关闭防火墙,这里可能会解决你的问题。
如果不行的话就打开文件,点击打开新的文件树。
/opt/nps/conf/nps.conf
修改里面的参数:
web_port web管理端口
web_password web界面管理密码
web_username web界面管理账号
web_base_url web管理主路径,用于将web管理置于代理子路径后面
bridge_port 服务端客户端通信端口
https_proxy_port 域名代理https代理监听端口
http_proxy_port 域名代理http代理监听端口
auth_key web api密钥
bridge_type 客户端与服务端连接方式kcp或tcp
public_vkey 客户端以配置文件模式启动时的密钥,设置为空表示关闭客户端配置文件连接模式
ip_limit 是否限制ip访问,true或false或忽略
flow_store_interval 服务端流量数据持久化间隔,单位分钟,忽略表示不持久化
log_level 日志输出级别
auth_crypt_key 获取服务端authKey时的aes加密密钥,16位
p2p_ip 服务端Ip,使用p2p模式必填
p2p_port p2p模式开启的udp端口
pprof_ip debug pprof 服务端ip
pprof_port debug pprof 端口
disconnect_timeout 客户端连接超时,单位 5s,默认值 60,即 300s = 5mins
这里上面的可以不看了一般只修改两个地方
https_proxy_port 域名代理https代理监听端口
http_proxy_port 域名代理http代理监听端口
web_port浏览器访问的端口
账号和密码自己改就好
web_username
web_password
注意如果出现端口被占用的情况下,netstat -nap | grep 8024,查看8024端口的占用情况
然后kill杀死这个进程,kill加后面的6位数
然后访问http://阿里云服务器ip:8080
这里可以用./nps stop来停止
终于成功了点击客户端,然后点击新增,
点击+号,会有一个客户端命令
这时就要用到咱们下载好的npc了。
用cmd打开输入客户端命令,这里注意需要将/改为.
这样就OK了。
这里如何使用:
例如在火狐浏览器中下载proxy插件,
在nps上设置sock5连接隧道,然后设置火狐插件
这个原来是我的初衷,但是网上没有教程,这里我自己写一下,为后人乘凉。
首先在自己的阿里云上安装npc,对你没听错,服务端和客户端都是一个阿里云。
服务端下载客户端安装包
[root@node1 nps]# wget https://github.com/ehang-io/nps/releases/download/v0.26.10/linux_amd64_client.tar.gz
这里最好是先cd到一个文件夹里下载,方便以后打开。
解压[root@node2 ~]# tar -zxvf linux_amd64_client.tar.gz
[root@node2 ~]# cp conf/npc.conf{,.bak}
修改配置文件[root@node2 ~]# vim conf/npc.conf
[common]
server_addr=172.16.1.11:8024 ===> 8024为网桥端口(供服务器和客户端间通信)
conn_type=tcp ===> 服务器和客户端间通信使用的协议
vkey=8rehr93fwurfj04j ===> 和服务端nps.conf中public_vkey项对应
auto_reconnection=true ===> 断开后是否重新连接
max_conn=1000 ===> 最大连接数
flow_limit=1000 ===> 流量限制
rate_limit=1000 ===> 速率限制
basic_username=11 ===> server配置的basic用户名和web_username,用于http、socks5代理认证
basic_password=3
web_username=admin ===> 关于web的这两项要和服务端中nps.conf中对应
web_password=aa77&88bb
crypt=true ===> 是否加密传输
compress=true ===> 是否压缩传输
disconnect_timeout=120 ===> 断开连接超时时间
# 注:其他的都删除,只留 [common] 段里面的项,这里一定要全部删除。
客户端启动npc[root@node2 ~]# ./npc
查看是否能连接。
如果能进行连接,在nps图形化页面生成一个新的客户端,然后点击加号,将里面的命令复制,输入到刚刚输入./npc的终端。生成一个sock5代理,自己设置端口。
这样在在火绒上设置代理插件后就能使得自己的ip成为阿里云的ip。