Catagorized Notes
Renamed notes to fit categories and be easier to find later: blog, config, howto
This commit is contained in:
211
SSH Notes.md
211
SSH Notes.md
@@ -1,211 +0,0 @@
|
|||||||
# SSH Notes
|
|
||||||
|
|
||||||
## SSH Tunneling
|
|
||||||
|
|
||||||
### Local Forwarding
|
|
||||||
|
|
||||||
#### Examples
|
|
||||||
|
|
||||||
NOTE: these use autossh to prevent the tunnel from dying
|
|
||||||
|
|
||||||
Plex
|
|
||||||
|
|
||||||
```shell
|
|
||||||
autossh -f -nNT -p3141 -N -L 8080:192.168.0.209:32400 chawley@aristotle.planethawleywood.com
|
|
||||||
```
|
|
||||||
|
|
||||||
ESXi
|
|
||||||
|
|
||||||
```shell
|
|
||||||
autossh -f -nNT -p3141 -N -L 8090:192.168.0.208:443 chawley@aristotle.planethawleywood.com
|
|
||||||
```
|
|
||||||
|
|
||||||
Both ESXi and AWX
|
|
||||||
|
|
||||||
```shell
|
|
||||||
autossh -f -nNT -p3141 -N -L 8090:192.168.0.208:443 -L 8091:192.168.0.25:80 chawley@aristotle.planethawleywood.com
|
|
||||||
```
|
|
||||||
|
|
||||||
Both Plex and Derry OD
|
|
||||||
|
|
||||||
```shell
|
|
||||||
autossh -f -nNT -p3141 -N -L 8080:192.168.0.209:32400 -L 8070:192.168.0.209:80 chawley@aristotle.planethawleywood.com
|
|
||||||
```
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
|
|
||||||
<table>
|
|
||||||
<tr>
|
|
||||||
<td><strong>Protocol</strong>
|
|
||||||
</td>
|
|
||||||
<td>SSH
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><strong>From</strong>
|
|
||||||
</td>
|
|
||||||
<td>my office workstation
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><strong>To</strong>
|
|
||||||
</td>
|
|
||||||
<td>RRD Jumpbox (54.84.9.50)
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><strong>Via</strong>
|
|
||||||
</td>
|
|
||||||
<td>chawley2@ladmin2
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><strong>Notes</strong>
|
|
||||||
</td>
|
|
||||||
<td> I have the jumpbox host configured in.ssh/config on both machines
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" ><strong><code>ssh -N -L 8090:54.184.92.50:22 chawley2@ladmin2.precisiondm.com</code></strong>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<table>
|
|
||||||
<tr>
|
|
||||||
<td><strong>Protocol</strong>
|
|
||||||
</td>
|
|
||||||
<td>web
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><strong>From</strong>
|
|
||||||
</td>
|
|
||||||
<td>my office workstation
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><strong>To</strong>
|
|
||||||
</td>
|
|
||||||
<td>Plex (derry)
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><strong>Via</strong>
|
|
||||||
</td>
|
|
||||||
<td>chawley@aristotle
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" ><strong><code>ssh -p3141 -N -L 8080:192.168.0.209:32400 chawley@aristotle.planethawleywood.com</code></strong>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
|
|
||||||
|
|
||||||
### Remote Forwarding
|
|
||||||
|
|
||||||
NOTE: By default, OpenSSH only allows connecting to remote forwarded ports from the server host. However, the GatewayPorts option in the server configuration file sshd_config can be used to control this.
|
|
||||||
|
|
||||||
The following alternatives are possible:
|
|
||||||
|
|
||||||
```shell
|
|
||||||
GatewayPorts no
|
|
||||||
```
|
|
||||||
|
|
||||||
This prevents connecting to forwarded ports from outside the server computer.
|
|
||||||
|
|
||||||
```shell
|
|
||||||
GatewayPorts yes
|
|
||||||
```
|
|
||||||
|
|
||||||
This allows anyone to connect to the forwarded ports. If the server is on the public Internet, anyone on the Internet can connect to the port.
|
|
||||||
|
|
||||||
#### Examples
|
|
||||||
|
|
||||||
<table>
|
|
||||||
<tr>
|
|
||||||
<td><strong>Protocol</strong>
|
|
||||||
</td>
|
|
||||||
<td>web
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><strong>From</strong>
|
|
||||||
</td>
|
|
||||||
<td>derry
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><strong>To</strong>
|
|
||||||
</td>
|
|
||||||
<td>overlook
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><strong>Notes</strong>
|
|
||||||
</td>
|
|
||||||
<td>This allows you to access apache web pages on derry by visiting <code>http://overlook.planethawleywood.com:8888</code> as long as <code>GatewayPorts yes</code> is present in <code>/etc/ssh/sshd_config</code> (as explained above) and port 8888 is open on Overlook
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td colspan="2" ><strong><code>ssh -R 8888:localhost:80 root@overlook</code></strong>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
|
|
||||||
### Reference
|
|
||||||
|
|
||||||
* [How To Use SSH Tunneling](https://www.howtogeek.com/168145/how-to-use-ssh-tunneling/)
|
|
||||||
* [SSH Port Forwarding Example](https://www.ssh.com/ssh/tunneling/example)
|
|
||||||
|
|
||||||
|
|
||||||
## Kill Unresponsive SSH
|
|
||||||
|
|
||||||
### Summary
|
|
||||||
|
|
||||||
Let’s say you’re happily typing in your remote shell when all of a sudden, the crappy Wi-Fi network you’re using goes down. You end up with a perfectly unusable frozen shell, ugh!
|
|
||||||
|
|
||||||
To do that, assuming you lost connectivity, press in that order:
|
|
||||||
|
|
||||||
|
|
||||||
```shell
|
|
||||||
[Enter]
|
|
||||||
~
|
|
||||||
.
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
That is, <return key> then tilde then period
|
|
||||||
|
|
||||||
This will send an escape sequence to your local SSH client and terminate the connection.—So this will always work even without a network connection.
|
|
||||||
|
|
||||||
Here’s the list of escape sequences:
|
|
||||||
|
|
||||||
|
|
||||||
### Supported escape sequences:
|
|
||||||
|
|
||||||
`~.` - terminate connection (and any multiplexed sessions) \
|
|
||||||
`~B` - send a BREAK to the remote system \
|
|
||||||
`~C` - open a command line \
|
|
||||||
`~R` - Request rekey (SSH protocol 2 only) \
|
|
||||||
`~^Z `- suspend ssh \
|
|
||||||
<code>~<em>#</em></code> - list forwarded connections \
|
|
||||||
<code>~&</code> - background ssh (when waiting for connections to terminate) \
|
|
||||||
<code>~?</code> - this message \
|
|
||||||
<code>~~</code> - send the escape character by typing it twice \
|
|
||||||
\
|
|
||||||
(Note that escapes are only recognized immediately after newline.)
|
|
||||||
|
|
||||||
|
|
||||||
## SSH Keygen
|
|
||||||
|
|
||||||
### Generate an SSH Key with a comment
|
|
||||||
|
|
||||||
```shell
|
|
||||||
ssh-keygen -C "comment" -f <file>
|
|
||||||
```
|
|
||||||
|
|
||||||
82
blog - SSH tunneling.md
Normal file
82
blog - SSH tunneling.md
Normal file
@@ -0,0 +1,82 @@
|
|||||||
|
# SSH Tunneling
|
||||||
|
|
||||||
|
## Local Forwarding
|
||||||
|
|
||||||
|
### Examples
|
||||||
|
|
||||||
|
NOTE: these use autossh to prevent the tunnel from dying
|
||||||
|
|
||||||
|
Plex
|
||||||
|
|
||||||
|
```shell
|
||||||
|
autossh -f -nNT -p3141 -N -L 8080:192.168.0.209:32400 chawley@aristotle.planethawleywood.com
|
||||||
|
```
|
||||||
|
|
||||||
|
ESXi
|
||||||
|
|
||||||
|
```shell
|
||||||
|
autossh -f -nNT -p3141 -N -L 8090:192.168.0.208:443 chawley@aristotle.planethawleywood.com
|
||||||
|
```
|
||||||
|
|
||||||
|
Both ESXi and AWX
|
||||||
|
|
||||||
|
```shell
|
||||||
|
autossh -f -nNT -p3141 -N -L 8090:192.168.0.208:443 -L 8091:192.168.0.25:80 chawley@aristotle.planethawleywood.com
|
||||||
|
```
|
||||||
|
|
||||||
|
Both Plex and Derry OD
|
||||||
|
|
||||||
|
```shell
|
||||||
|
autossh -f -nNT -p3141 -N -L 8080:192.168.0.209:32400 -L 8070:192.168.0.209:80 chawley@aristotle.planethawleywood.com
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
| Protocol | From | To | via | Notes |
|
||||||
|
| -------- | --------------------- | ----------- | ---------------- | ----------------------------------------------------------------- |
|
||||||
|
| SSH | my office workstation | RRD Jumpbox | chawley2@ladmin2 | I have the jumpbox host configured in.ssh/config on both machines |
|
||||||
|
|
||||||
|
```shell
|
||||||
|
ssh -N -L 8090:54.184.92.50:22 chawley2@ladmin2
|
||||||
|
```
|
||||||
|
|
||||||
|
| Protocol | From | To | via | Notes |
|
||||||
|
| -------- | --------------------- | ----------- | ---------------- | ----------------------------------------------------------------- |
|
||||||
|
| SSH | my office workstation | Plex (derry) | chawley@aristotle | |
|
||||||
|
|
||||||
|
```shell
|
||||||
|
ssh -p3141 -N -L 8080:192.168.0.209:32400 chawley@aristotle.planethawleywood.com
|
||||||
|
```
|
||||||
|
|
||||||
|
## Remote Forwarding
|
||||||
|
|
||||||
|
NOTE: By default, OpenSSH only allows connecting to remote forwarded ports from the server host. However, the GatewayPorts option in the server configuration file sshd_config can be used to control this.
|
||||||
|
|
||||||
|
The following alternatives are possible:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
GatewayPorts no
|
||||||
|
```
|
||||||
|
|
||||||
|
This prevents connecting to forwarded ports from outside the server computer.
|
||||||
|
|
||||||
|
```shell
|
||||||
|
GatewayPorts yes
|
||||||
|
```
|
||||||
|
|
||||||
|
This allows anyone to connect to the forwarded ports. If the server is on the public Internet, anyone on the Internet can connect to the port.
|
||||||
|
|
||||||
|
### Example
|
||||||
|
|
||||||
|
| Protocol | From | To | Notes |
|
||||||
|
| -------- | --------------------- | ----------- | -------------- |
|
||||||
|
| web | derry | overlook | This allows you to access apache web pages on derry by visiting <code>http://overlook.planethawleywood.com:8888</code> as long as <code>GatewayPorts yes</code> is present in <code>/etc/ssh/sshd_config</code> (as explained above) and port 8888 is open on Overlook |
|
||||||
|
|
||||||
|
```shell
|
||||||
|
ssh -R 8888:localhost:80 root@overlook
|
||||||
|
```
|
||||||
|
|
||||||
|
## Reference
|
||||||
|
|
||||||
|
* [How To Use SSH Tunneling](https://www.howtogeek.com/168145/how-to-use-ssh-tunneling/)
|
||||||
|
* [SSH Port Forwarding Example](https://www.ssh.com/ssh/tunneling/example)
|
||||||
7
howto - SSH keygen.md
Normal file
7
howto - SSH keygen.md
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
# SSH Keygen
|
||||||
|
|
||||||
|
## Generate an SSH Key with a comment
|
||||||
|
|
||||||
|
```shell
|
||||||
|
ssh-keygen -C "comment" -f <file>
|
||||||
|
```
|
||||||
Reference in New Issue
Block a user