A utility for SSH tunneling between remote developers.
Project description
relay
========
Magical SSH tunnels for remote developers behind firewalls.
Currently allows for sharing SSH connections (for collaborating in tmux+vim) and for sharing local development webservers.
Install
--------
```
sudo pip install git+https://github.com/nprapps/relay.git
```
General setup
-------------
*nprapps users see the next section*
Relay uses a configuration file located at `~/.relay.conf`. Create this file with contents such as:
```
[relay]
user = ubuntu
server = relay_server.your_domain.com
private_key = /path/to/your/private_key
public_key = /path/to/your/public_key.pub
pair_user = relay
ports_json = /path/to/your/ports.json
```
`ports.json` is a mapping of user's local ports to remote ports on the server, so that users will never collide when creating SSH tunnels. Create this file with contents such as:
```
{
"chris": {
"22": "2222",
"8000": "8000"
},
"katie": {
"22": "2223",
"8000": "8001"
},
}
```
You then need to create a `pairprogrammer` user. This process is automated:
```
relay setup
```
NPRApps setup
-----------------
Pre-baked configuration files are in our Dropbox folder. You must have Dropbox installed, syncing to `~/Dropbox` and the `nprapps` shared folder synced to your local computer.
```
ln -s ~/Dropbox/nprapps/relay/relay.conf ~/.relay.conf
relay setup
```
Sharing SSH
------------------
To share your SSH connection (for tmux'ing), open a new terminal (or tab or tmux pane):
```
relay user:$USER share:22
```
Where `$USER` is your username in `ports.json`.
To connect to a shared SSH connection:
```
relay user:$USER ssh
```
Where `$USER` is the username in `ports.json` of the user sharing the connection.
Sharing development webserver
-----------------------------
To share your local development webserver, open a new terminal (or tab or tmux pane):
```
relay user:$USER share:8000
```
Where `$USER` is your username in `ports.json`.
To connect open a shared webserver in your browser:
```
relay user:$USER web
```
Where `$USER` is the username in `ports.json` of the user sharing the webserver.
========
Magical SSH tunnels for remote developers behind firewalls.
Currently allows for sharing SSH connections (for collaborating in tmux+vim) and for sharing local development webservers.
Install
--------
```
sudo pip install git+https://github.com/nprapps/relay.git
```
General setup
-------------
*nprapps users see the next section*
Relay uses a configuration file located at `~/.relay.conf`. Create this file with contents such as:
```
[relay]
user = ubuntu
server = relay_server.your_domain.com
private_key = /path/to/your/private_key
public_key = /path/to/your/public_key.pub
pair_user = relay
ports_json = /path/to/your/ports.json
```
`ports.json` is a mapping of user's local ports to remote ports on the server, so that users will never collide when creating SSH tunnels. Create this file with contents such as:
```
{
"chris": {
"22": "2222",
"8000": "8000"
},
"katie": {
"22": "2223",
"8000": "8001"
},
}
```
You then need to create a `pairprogrammer` user. This process is automated:
```
relay setup
```
NPRApps setup
-----------------
Pre-baked configuration files are in our Dropbox folder. You must have Dropbox installed, syncing to `~/Dropbox` and the `nprapps` shared folder synced to your local computer.
```
ln -s ~/Dropbox/nprapps/relay/relay.conf ~/.relay.conf
relay setup
```
Sharing SSH
------------------
To share your SSH connection (for tmux'ing), open a new terminal (or tab or tmux pane):
```
relay user:$USER share:22
```
Where `$USER` is your username in `ports.json`.
To connect to a shared SSH connection:
```
relay user:$USER ssh
```
Where `$USER` is the username in `ports.json` of the user sharing the connection.
Sharing development webserver
-----------------------------
To share your local development webserver, open a new terminal (or tab or tmux pane):
```
relay user:$USER share:8000
```
Where `$USER` is your username in `ports.json`.
To connect open a shared webserver in your browser:
```
relay user:$USER web
```
Where `$USER` is the username in `ports.json` of the user sharing the webserver.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
relay-0.0.1.tar.gz
(3.0 kB
view details)
File details
Details for the file relay-0.0.1.tar.gz
.
File metadata
- Download URL: relay-0.0.1.tar.gz
- Upload date:
- Size: 3.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9c8a208405a90577b823115a65e32cfabffaca2ab83d25cce9ded3dde07d2b17 |
|
MD5 | bf05e904de45dde925a06ffcd8f2ea8e |
|
BLAKE2b-256 | 22b2aea317f39aabbc73c710f80beeb49d11d715e0276ed627d973862de23c83 |