Quick Start to Windows
This guide provides instructions for connecting from the NoPorts desktop application, to a machine running Windows.
Step 6 to Step 8
Complete these steps on the machine you are connecting to (Windows)
On the machine you are connecting to
Step 6: Download and run the Installer
Download the NoPorts msi installer from GitHub. You can run the MSI inside the sshnp-windows zip.
Ensure both Core Tools & Daemon Service are being installed.

Step 7: Initiate atSign authorization request
Run the following command to make an authorization request.
Be sure to replace the following values:
@<REPLACE>_np with your device atSign,
<PASSCODE> with the passcode generated in Step 4,
<USER> with your Windows username,
@<REPLACE>_np_key with your device atSign,
<DEVICE_NAME> with the name of the machine you are on
at_activate.exe enroll -a "@<REPLACE>_np" `
-s <PASSCODE> `
-p noports `
-k C:\Users\<USER>\.atsign\keys\@<REPLACE>_np_key.atKeys `
-d <DEVICE_NAME> `
-n "sshnp:rw,sshrvd:rw"Once you see this text, you're ready to continue to the next step.
Submitting enrollment request
Enrollment ID: ---------------------
Waiting for approval; will check every 10 secondsIf you encounter a handshake exception, it usually means your root certificates are outdated. To refresh them, run the following command with administrator privileges:Install-Script -Name UpdateRootCertificates
Step 8: Setup Service Config
The service config lives in C:\Program Data\NoPorts\sshnpd.yaml, you can open it in notepad with this command:
Make sure you run notepad/terminal as administrator or else you won't be able to save your changes!
notepad C:\ProgramData\NoPorts\sshnpd.yamlEnsure you provide the following fields to your service config:
atsign
atsign: example02_npatsign: '@example02_np'
keys (windows path)
keys: C:\Users\alice\.atsign\keys\@example02_np_key.atKeys
manager
manager: example01_npmanager: '@example01_np'
Examples on how to fill in the fields are inside the config file.
Step 9 to Step 12
With both machines now configured, the final steps bring us back to the machine initiating the connection.
On the machine you are connecting from
Step 8: Approve the atSign authorization request
Click on Requests and approve the pending request. The request will then move to the approved enrollments list.
After a few seconds, the request will also show as approved on the machine you are connecting to.
Step 9: Switch back to your client atSign (@example01_np)
Click on your atSign in the top right corner of the screen. This will open a list of atSigns that are currently signed into the app.
Select your client atSign in order to switch to it.
Step 10: Create a Connection Profile
If you aren't already on the Connections tab, click on Connections at the top of the Screen. Then click Add New, to create a new profile.
Enter the following information into the profile then click Submit.
Profile Name - The name that will be displayed in the profile list.
Device atSign - Your device atSign (eg example02_np).
Device Name - The name of your remote device.
Relay - Select the relay sever closest to you for optimum speed.
Local Port - The port you will use on your local machine.
Local Host - The hostname or IP address to bind to on your local machine.
Remote Host - The hostname or IP address of the machine you are connecting to.
Remote Port - The port that will be used on the remote machine.
For reference, we've documented our most common use cases, including MCP, SSH, RDP, SFTP, Web Server, and SMB.
Step 11: Establish a connection
Click the Connect Icon ▶️ to establish a connection with your remote device. If the connection is successful, you will see green. If you see red, hover over the icon to see reason for failure.
Last updated
