什么是NSmartProxy?
NSmartProxy是一款免費的內網穿透工具。
使用中如果有任何問題和建議,可以點擊這里加入Gitter群組或者點擊這里加入QQ群 (群號:813170640)我們一起討論。
https://github.com/tmoonlight/NSmartProxy?tab=readme-ov-file
附件:NSmartProxy-master.zip
跨平臺,客戶端和服務端均可運行在MacOS,Linux,Windows系統上;
使用方便,配置簡單;
多端映射,只需安裝一個NSmartProxy客戶端可映射整個局域網內的多種服務;
支持TCP協議棧下的所有協議(已經經過測試的有FTP、Telnet、SMTP、HTTP/HTTPS、POP3、SMB、VNC、RDP。),以及相當一部分基于UDP的協議(已經經過測試的有DNS查詢、mosh服務)。
NSmartProxy包含兩個服務程序:
NSmartProxy支持各種基于TCP和UDP服務的端口映射,下面以mstsc,iis,ftp以及mosh服務為例:
NSmartProxy的客戶端被打包成三種發布方式:第一種是跨平臺包,需要預先安裝.NET Core環境。 第二種是SCD包(包名帶"scd"),無需安裝.net環境,用戶需要根據自己的平臺和架構選擇相應的壓縮包。第三種是Windows窗體版本(包名帶"winform"):
確保客戶端的環境在.NET Framework 4.6.1 以上。
下載最新的窗體版本:
https://github.com/tmoonlight/NSmartProxy/releases/download/v1.2_final4/nspclient_winform_v1.2_final4.zip
附件:nspclient_winform_v1.2_final4.zip
wget https://github.com/tmoonlight/NSmartProxy/releases/download/v1.2_final4/nspserver_scd_linux_v1.2_final4.zip
wget https://github.com/tmoonlight/NSmartProxy/releases/download/v1.2_final4/nspclient_scd_osx_v1.2_final4.zip
sudo docker pull tmoonlight/nspclient
sudo docker run --name mynspclient -dit tmoonlight/nspclient
打開安裝目錄下的appsettings.json文件,配置服務地址,映射地址和端口(winform版本也兼容這種配置方式,也可直接進入界面配置):
{
"ProviderWebPort": 12309, //服務器端口
"ProviderAddress": "2017studio.imwork.net", //服務器地址
//反向代理客戶端列表
"Clients": [
{//mstsc遠程控制服務
"IP": "127.0.0.1", //反向代理機器的ip
"TargetServicePort": "3389" //反向代理服務的端口
"ConsumerPort":"3389" //外網訪問端口,如被占用,則會從20000開始按順序分配端口
},
{//網站服務
"IP": "127.0.0.1",
"TargetServicePort": "80"
},
{//ftp服務
"IP": "127.0.0.1",
"TargetServicePort": "21",
"IsCompress" : true, //表示啟動傳輸壓縮
"Description": "這是一個ftp協議。" //描述字段,方便用戶在服務端界面識別
},
{//mosh服務
"IP": "192.168.0.168", //安裝mosh服務的受控端地址
"TargetServicePort": "60002",
"ConsumerPort": "30002",
"Protocol": "UDP" //表示是一個UDP協議,如果不加以配置,則以TCP協議來轉發
}
]
}
2. 運行NSmartProxy客戶端
sudo unzip nspclient_scd_linux_v1.2.zip
cd nspclient_scd_linux_v1.2
chmod +x ./NSmartProxyClient
./NSmartProxyClient
sudo unzip nspclient_osx_linux_v1.2.zip
cd nspclient_scd_osx_v1.2
chmod +x ./NSmartProxyClient
./NSmartProxyClient
后臺運行:
您還可以將NSmartProxy客戶端注冊為一個后臺服務,方法如下:
Windows:
方法一
方法二
rem 注冊客戶端windows服務
.\NSmartProxyClient action:install
rem 卸載客戶端windows服務
.\NSmartProxyClient action:uninstall
默認情況下,客戶端以匿名登陸,這種方式會在NSmartProxyServer端創建一個隨機匿名用戶(前提是服務端配置了允許匿名登陸),如果想顯式使用特定用戶登陸,需要在第一次運行時增加-u 用戶名 -p 密碼參數,程序會在當前目錄生成一份憑據(.usercache)方便下次自動登陸。 例如輸入以下指令來生成一個用戶名admin,密碼admin123的憑據:
./NSmartProxyClient -u admin -p admin123
下次僅需使用:
自動采用上次的admin用戶登陸,如需恢復匿名登陸,則需要刪除當前目錄下的.usercache文件。
這里介紹NSmartProxy服務端的安裝方法(linux,windows,MacOS均適用)
NSmartProxy的服務端程序被打包成兩種發布方式。第一種是跨平臺包,需要預先安裝.NET Core環境。 第二種是SCD包(包名帶"scd"),無需安裝.net環境,用戶需要根據自己的平臺和架構選擇相應的壓縮包。
下載最新版的NSmartProxy服務端:
wget https://github.com/tmoonlight/NSmartProxy/releases/download/v1.2_final4/nspserver_scd_linux_v1.2_final4.zip
wget https://github.com/tmoonlight/NSmartProxy/releases/download/v1.2_final4/nspserver_scd_osx_v1.2_final4.zip
sudo docker pull tmoonlight/nspserver
sudo docker run --name mynspserver -dit -p 7842:7842 -p 7841:7841 -p 12309:12309 -p 20000-20050 tmoonlight/nspserver
解壓縮NSmartProxy服務端的壓縮包,以下以SCD發布下的linux系統為例
unzip nspserver_scd_linux_v1.2_final4.zip
打開安裝目錄下的appsettings.json文件,設置反向連接端口和配置服務端口,如果沒有特殊需求,默認就好:
{
"ReversePort": 7842, //反向連接端口
"ConfigPort": 7841, //配置服務端口
"WebAPIPort": 12309 //API服務端口
}
運行NSmartProxy
第一步 cd到安裝目錄
第二步 執行以下命令
chmod +x ./NSmartProxy.ServerHost
./NSmartProxy.ServerHost
第三步 登陸http://ip:12309 進入web端,出廠用戶密碼為admin/admin
第四步 進入服務端對用戶進行各種管理操作
NSmartProxy客戶端和服務端均可以注冊為一個后臺服務,方法如下:
rem 注冊服務端windows服務
.\NSmartProxy.ServerHost action:install
rem 卸載服務端windows服務
.\NSmartProxy.ServerHost action:uninstall
以上已經講述了將內網的服務映射到外網的方法,還有更多有趣的用法等著你發掘:
遠程開機
使用windows遠程控制操作辦公室電腦
告別昂貴的vps,以極低的成本制作一個更強大的服務集群
該文章在 2024/6/2 17:02:19 編輯過