受疫情影响,最近公司启动远程办公,用的是向日葵。公司家里客户端,一顿装,卡,模糊。
所以这里采用另一种方法,只需要用windows自带的远程登录即可。安装完,效果很好。而且只要内网有一个机器装了客户端,其他都不用装。下面将完整的步骤分享出来:
需要安装:
- 客户端(在内网的某台机器上)装一个即可。
- 服务端(在外网某个主机上,这里选用腾讯云的一台主机)
服务端:
(资源链接和参考在文末)
1.先下载代码,这里选择压缩包linux_amd64_server.tar.gz
2.解压后进入目录做相关配置:
在nps.conf配置文件中做相应配置:
-
配置bridge的端口,该端口是服务器和客户端通信用。
要保证该端口在云服务器厂商的安全组放行。
##bridge bridge_type=tcp bridge_port=8024 bridge_ip=0.0.0.0
-
配置web节点的端口用户名等,这些配置是给管理界面访问配置。也要保证端口放行。(服务端ip+8080可以访问管理界面)
#web web_host=a.o.com web_username=admin web_password=123 web_port = 8080 web_ip=0.0.0.0
3.启动服务端:
./nps install #安装,这样可以在任何目录使用命令
./nps start #启动
./nps stop|restart #停止,重启
如果启动后,无法访问web页面,可以去掉start,直接前台运行,可以查看日志,有可能是端口冲突。
修改配置文件后,需要
nps reload
4.配置管理界面:外网IP+8080
服务端启动后,访问管理界面。首先在客户端菜单中添加一个客户端,如图,内容全部默认即可,可以添加 一个名称备注。(此时只是为了生成vkey,一会客户端启动要指定该值)
注意:可以添加多个客户端,一个内网中保证有一个客户端即可完成访问所有内网主机。
然后再添加一个tcp隧道,该tcp隧道的作用是映射到内网你想要访问的主机,其中client_id要和上面添加的client对应,port保证是外网机器上可用的端口即可(云厂商要在安全组中放行)。target是内网的ip和端口(这里写3389或22 ,是因为远程登录(windows/linux)的端口是3389或22 ,你自然可以映射任意你需要的。所以内网有几个机器,你只需要添加几个映射即可。
此时服务端的工作完成。
客户端:
1.先下载客户端压缩包(根据操作系统下载对应的包)
解压后不需要配置。直接执行如下命令启动:
如果客户端装载Linux命令是:
./npc -server=139.155.xxx.xxx:8024 -vkey=tup1xd3iecokq24h
server后跟外网的ip和bridge配置的端口,vkey是在管理界面添加的client对应的vkey.
如果是windows命令只需加上exe
./npc.exe -server=139.155.xxx.xxx:8024 -vkey=tup1xd3iecokq24h
此时客户端启动成功。
后台启动
对于linux、darwin
- 注册:sudo ./npc install 其他参数(例如-server=xx -vkey=xx或者-config=xxx)
- 启动:sudo npc start
- 停止:sudo npc stop
- 如果需要更换命令内容需要先卸载./npc uninstall,再重新注册
对于windows,使用管理员身份运行cmd
- 注册:npc.exe install 其他参数(例如-server=xx -vkey=xx或者-config=xxx)
- 启动:npc.exe start
- 停止:npc.exe stop
- 如果需要更换命令内容需要先卸载npc.exe uninstall,再重新注册
注册到服务后,日志文件windows位于当前目录下,linux和darwin位于/var/log/npc.log
Linux测试,发现如果window有一个守护进程,需要修改linux的npc.conf文件,通过-conf=./npc.conf指定才可成功。建议内网有一个守护进程即可。
访问测试
通过 服务端ip+8025 即可在家访问公司的电脑。
速度,画面简直美。
资源链接:
我在使用github上的Linux客户端的时候,发现启动失败,如果遇到同样问题,客户端和服务端注意使用版本要匹配。