NPS內網穿透-讓台式機輕鬆變伺服器

fans news 發佈 2022-01-27T23:17:34+00:00

使用場景同類型工具還有'frp',倆者功能基本類似,但是nps有WEB管理頁面,frp只能在配置文件中修改。所以nps維護成本更低。

使用場景

同類型工具還有'frp',倆者功能基本類似,但是nps有WEB管理頁面,frp只能在配置文件中修改。所以nps維護成本更低。

1、想將家裡的台式機映射到網際網路當伺服器使用,節省伺服器費用;

2、或者在辦公室遠程訪問家裡的台式機;

3、我自己是一台I5-10400、64G內存、1TSSD的台式機,配合VMware可以創建4-20台不同配置的伺服器。如果在阿里雲購買4台8C16G的ECS,一年價格可能要3萬左右,而我的台式機基本只有電費和台式機一次性成本,使用非常靈活、划算;

環境準備

1、必須有公網地址的伺服器:可以在阿里雲、騰訊雲等雲服務商買一台1C2G的ECS一年也就幾十塊錢(新用戶第一年優惠,各種雲廠商用個3,5年問題不大);

2、一個台式機或者伺服器作為需要映射的客戶端;

3、(可選)一個遠程開機卡(淘寶30多塊錢),如果沒有遠程開機卡,遇到斷電等特殊情況,可能需要手動開機。有遠程開機卡在手機APP上可以直接開機。

安裝服務端

  1. 安裝包下載地址

https://github.com/ehang-io/nps/releases

  1. 安裝linux服務端
# 新建安裝目錄並cd進入
mkdir /usr/local/nps
cd /usr/local/nps
# 上傳安裝包'linux_amd64_server.tar.gz'並解壓到安裝目錄
tar xf linux_amd64_server.tar.gz -C /usr/local/nps
# 修改配置文件
vim /usr/local/nps/conf/nps.conf
# nps服務端的ip和埠
bridge_port=8024
bridge_ip=
# 客戶端連結服務端的公共密碼
public_vkey=123
# 登錄WEB頁面使用的帳號密碼
web_username=admin
web_password=123
# 登錄WEB頁面的ip和埠
web_port = 80
web_ip= 0.0.0.0
  1. 設置啟動文件
vim /usr/lib/systemd/system/nps.service
[Unit]
Description=Nps Server Service
After=network.target

[Service]
Type=simple
Restart=on-failure
RestartSec=5s
ExecStart=/usr/local/nps/nps


[Install]
WantedBy=multi-user.target
  1. 設置開機自啟和啟動
systemctl daemon-reload
systemctl start nps
systemctl enable nps

使用瀏覽器登錄

http://192.168.75.130/login/index

帳號密碼:admin/123

修改帳號密碼需要在配置文件里修改,頁面沒有修改接口。

安裝linux客戶端

  1. 在頁面新增一個客戶端
客戶端》新增》[自定義客戶端名稱][秘鑰可以寫也可以不寫,會自動生成]
如下,生成了一個ID為6,名稱為"客戶端01",秘鑰為"igv7pkijkhnn2eb6"的客戶端;
  1. 安裝客戶端
# 下載並解壓
wget https://github.com/ehang-io/nps/releases/download/v0.26.10/linux_amd64_client.tar.gz
tar xf linux_amd64_client.tar.gz
# 修改配置文件
vim conf/npc.conf
[common]
server_addr=192.168.75.130:8024             #服務端地址
conn_type=tcp
vkey=igv7pkijkhnn2eb6                             #握手秘鑰,新增客戶端生成的秘鑰
auto_reconnection=true
max_conn=1000
flow_limit=1000
rate_limit=1000
basic_username=11
basic_password=3
web_username=user
web_password=1234
crypt=true
compress=true
#pprof_addr=0.0.0.0:9999
disconnect_timeout=60
# 啟動客戶端
./npc 
  1. 新增一個TCP埠映射

TCP隧道》新增》【客戶端ID為6】,【服務埠為800】,【目標埠為192.168.75.151:22】

  1. 在服務端發下新增了一個監聽埠800(TCP埠映射對應)

測試驗證

我們連接'192.168.75.130'機器的800埠,成功地登錄了'192.168.75.151'機器


遠程開機卡的作用

1、遠程開機卡,可以在手機上使用APP,遠程控制主機的開機,關機,重啟。和直接咋主機上按電源鍵效果一樣。

2、客戶端和服務端基本支持目前主要的ARM、linux、MAC、windows、等平台。

關鍵字: