Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs(automated): Update docs from Gitbook #1612

Open
wants to merge 8 commits into
base: trunk
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions docs/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
* [Automated Installation on Google Cloud Platform (GCP)](installation/cloud-installation-guides/automated-installation-on-google-cloud-platform-gcp.md)
* [Automated Installation on Microsoft Azure](installation/cloud-installation-guides/automated-installation-on-microsoft-azure.md)
* [Automated Installation on Oracle Cloud Infrastructure (OCI)](installation/cloud-installation-guides/automated-installation-on-oracle-cloud-infrastructure-oci.md)
* [Desktop App Installation (MacOS & Windows)](installation/desktop-app-installation-macos-and-windows.md)
* [Usage](usage/README.md)
* [npt Usage](usage/basic-usage/README.md)
* [Additional Configuration](usage/basic-usage/additional-configuration.md)
Expand Down
17 changes: 3 additions & 14 deletions docs/installation/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,13 +50,11 @@ These guides will install the terminal based version of the NoPorts client:
[windows.md](windows.md)
{% endcontent-ref %}

### 2.2. Desktop application installation guides
### 2.2. Desktop application installation guide

We have two desktop applications available for NoPorts:
We have a desktop application coming soon for NoPorts.

#### NoPorts Desktop (coming soon)

This version of NoPorts supports all single-socket[^1] TCP applications, such as:
This supports all single-socket[^1] TCP applications, such as:

* Remote desktop like RDP & VNC
* HTTP(s) like REST APIs & web applications
Expand All @@ -65,15 +63,6 @@ This version of NoPorts supports all single-socket[^1] TCP applications, such as

The application is currently in alpha. If you would like early access, please reach out to [[email protected]](mailto:[email protected]).

#### **SSH NoPorts**

This version of NoPorts only supports SSH, with terminal windows embedded into the app.

* [MacOS](https://apps.apple.com/us/app/ssh-no-ports-desktop/id6476198591?mt=12)
* [Windows](https://apps.microsoft.com/detail/9pbx5vrvqc2z)
* Linux - we don't have official builds, but you can [build from source](https://github.com/atsign-foundation/noports/tree/trunk/packages/dart/sshnoports)\
[Reach out to us](mailto:[email protected]) if you need some assistance.

## 3. Install the NoPorts daemon

### 3.1. Use the guided installer (recommended)
Expand Down
36 changes: 36 additions & 0 deletions docs/installation/desktop-app-installation-macos-and-windows.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
---
hidden: true
---

# Desktop App Installation (MacOS & Windows)

{% embed url="https://vimeo.com/1038239765" %}

## :desktop: Desktop App Installation Instructions

1. To begin you will need a NoPorts subscription or Free Trial
1. [Purchase NoPorts](https://www.noports.com/pricing)
2. Or, [Activate a Free Trial](https://my.noports.com/no-ports-invite/30dayfreetrial)
2. Note your client atsign (i.e. @name\_client)
3. Download the NoPorts Desktop App
1. Windows Installer
2. Mac Installer
4. Run the installer to install the NoPorts Desktop
5. Login to the No Ports Desktop App
1. Launch the No Ports Desktop App
2. Click the 'Get Started button'
3. Enter your client atSign
4. Enter one time password (OTP)
6. Backup your Keys
1. Click on the Settings gear box button on the top right of the UI
2. Click on the 'Backup your keys' button on the left hand navigation
3. Download the Keys to your selected local storage location
7. Prepare a Profile to establish a NoPorts connection
1. Return to the Dashboard
2. Click the 'Add New' button to create a new Profile
3. Or, Download a test profile to establish a test connection
1. Link to test profile
2. Upload the profile via the Dashboard
8. Click the 'Connect' / Play button for the profile you just added
9. Confirm the connection is established and utilize NoPorts for secure remote connectivity!

89 changes: 58 additions & 31 deletions docs/usage/integrate-with-ssh-config.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,21 @@ icon: square-sliders-vertical

# Integrate with ssh config

## The Template
## Overview

This guide will help you setup NoPorts in your ssh configuration. Once setup, you will be able to ssh to machines using NoPorts the same way you would for a normal ssh host. As this is integrated with the SSH configuration, it will also work with other applications that support SSH proxying.

### Usage

Once you've setup your configuration, you will be able to SSH over NoPorts just like any other host, using your own custom hostnames for devices.

For example, with a device called `my_lab`:

```sh
ssh my_lab
```

### The Template

The following is a template for adding an sshnp connection to your ssh config for ease of use:

Expand All @@ -23,7 +37,15 @@ Host <host>
```
{% endcode %}

Example:
You need to replace the values surrounded with `<>` on lines 1 & 7 with your own values.

`host` is any valid hostname you would like, this is what you will use to invoke your ssh command, so make sure it's easy to remember and type.

`username` is the username on the remote machine you wish to login as.

The rest of the values are the normal arguments you would invoke with sshnp, see [here](basic-usage-1/) for more info.

#### Example

{% code overflow="wrap" %}
```
Expand All @@ -39,20 +61,51 @@ Host alice_device
```
{% endcode %}

This example shows the configuration for the following equivalent sshnp command:

```
sshnp -f @alice_client -t @alice_device -d my_server -r @rv_am
```

### Usage
When you want to connect to this device, this is what you would type:

```bash
ssh alice_device
```

`alice_device` maps the the `Host alice_device` line.

### Additional Usage Tips

#### 1. Extending ssh config

You can add any additional ssh config to the file as you normally would, for example a TCP forwarding:

{% code title="~/.ssh/config" overflow="wrap" lineNumbers="true" %}
```
Host my_webdev_server
Hostname localhost
AddKeysToAgent yes
UserKnownHostsFile /dev/null
StrictHostKeyChecking no
IdentityFile ~/.ssh/id_ed25519
LocalForward 8080:0:8080
ProxyCommand=...
```
{% endcode %}

Use this config as you would any other ssh config entry:
#### 2. Extending ssh command

You can also add any additional flags to the ssh command, for example a TCP forwarding:

```bash
ssh <host>
ssh my_webdev_server -L "8080:0:8080"
```

### Template Explained

If you want to understand each line of the template, and what it does, read on.

#### Line 1

`<host>` is the "nickname" you would use to connect to, e.g. `ssh <host>`.
Expand Down Expand Up @@ -91,29 +144,3 @@ See [basic-usage-1](basic-usage-1/ "mention") to learn more about filling in thi

ControlMaster and ControlPath tell ssh to try to reuse existing ssh connections if you start up multiple. This means only the first connection will setup sshnp, the rest of the connections will use the tunnel that is already there!

### Additional Usage Tips

#### 1. Extending ssh config

You can add any additional ssh config to the file as you normally would, for example a TCP forwarding:

{% code title="~/.ssh/config" overflow="wrap" lineNumbers="true" %}
```
Host my_webdev_server
Hostname localhost
AddKeysToAgent yes
UserKnownHostsFile /dev/null
StrictHostKeyChecking no
IdentityFile ~/.ssh/id_ed25519
LocalForward 8080:0:8080
ProxyCommand=...
```
{% endcode %}

#### 2. Extending ssh command

You can also add any additional flags to the ssh command, for example a TCP forwarding:

```bash
ssh my_webdev_server -L "8080:0:8080"
```
Loading