1 Star 0 Fork 50

EasOpen / NSmartProxy

forked from tmoonlight / NSmartProxy 
Create your Gitee Account
Explore and code with more than 6 million developers,Free private repositories !:)
Sign up
Clone or download
Cancel
Notice: Creating folder will generate an empty file .keep, because not support in Git
Loading...
README_EN.md

GitHub release GitHub Build Status
Docker Pulls Docker Pulls
中文版 | English

NSmartProxy

What is NSmartProxy?

NSmartProxy is a reverse proxy tool that creates a secure tunnel from a public endpoint to a locally service.

Characteristics

  1. Cross-platform, client and server can run on MacOS, Linux, Windows systems;

  2. Easy to use and simple to configure;

  3. Multi-end mapping, one NSmartProxy client can map multiple service nodes.

  4. Supports all protocols under the TCP protocol stack (such as FTP, Telnet, SMTP, HTTP/HTTPS, POP3, SMB, VNC, RDP. UDP protocol is not supported at present.)

Operating principle

NSmartProxy contains two service programs:

  • Server (NSPServer): Deployed on the external network to receive reverse connections from users and NSPClients and forward them to each other.
  • Client (NSPClient): Deployed on the internal network to forward requests and responses to access various services on the intranet.

Preparation

Linux/Windows/MacOS

  1. Install .NET Core Runtime
  2. Download the latest version of NSmartProxy

Docker

  • You can run the nspserver directly without having to install the runtime:
sudo docker pull tmoonlight/nspclient
sudo docker run --name mynspclient -dit tmoonlight/nspclient

Instructions

NSmartProxy supports various port mappings based on TCP services. The following is an example of nspclient configuration which contains mstsc, iis, and ftp services:

  1. Open the appsettings.json file in the installation directory, edit the service address, port,and map-rule as follow:
{
  "ProviderWebPort": 12309,			//Configure the port of the NSPServer service
  "ProviderAddress": "2017studio.imwork.net",	//Configure the address of the NSPServer service

  //NSPClients, you can configure multiple
  "Clients": [
    {
      "IP": "127.0.0.1",           //Reverse proxy machine ip
      "TargetServicePort": "3389"  //Port of the reverse proxy service
      "ConsumerPort":"3389"          //External network access port, if occupied,the nspclient will allocate ports in order from 20000
    },
    {
      "IP": "127.0.0.1",
      "TargetServicePort": "80"
    },
    {
      "IP": "127.0.0.1",
      "TargetServicePort": "21"
    }
  ]
}

2. Run NSmartProxy
  • Linux:
    sudo unzip client.zip
    cd client
    sudo dotnet NSmartProxyClient.dll
  • Windows:

    Unzip nspclient*.zip and run NSmartProxyWinform.exe:

  • P.S: The above is the configuration method of the client. In general, you can use the free service (2017studio.imwork.net) to perform intranet mapping. If you want to build the NSmartProxy server yourself, please click here.

Use Cases

We have already described the method of mapping the services of the intranet to the external network, and there are more interesting usages waiting for you to discover:
1.Remote boot
2.Use windows remote control to operate the office computer
3.Say goodbye to expensive vps and make a more powerful service cluster at a very low cost
...etc

Comments ( 0 )

Sign in for post a comment

About

NSmartProxy是一款免费的内网穿透工具。采用.NET CORE的全异步模式打造。此为镜像仓库,如果希望贡献此项目,请移步至github。 spread retract
Cancel

Releases

No release

Contributors

All

Activities

load more
can not load any more
C#
1
https://gitee.com/EasOpen/NSmartProxy.git
git@gitee.com:EasOpen/NSmartProxy.git
EasOpen
NSmartProxy
NSmartProxy
master

Search