Catagorized Notes

Renamed notes to fit categories and be easier to find later: blog, config, howto
This commit is contained in:
chawley committed 2023-04-28 10:31:11 -04:00
1 parent ccadd25693
commit 65c434952a
33 files changed
+89 -211

No files matched your search

-211
View File
@@ -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, &lt;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>
```
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
View File
File renamed without changes.
+82
View 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)
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
+7
View File
@@ -0,0 +1,7 @@
# SSH Keygen
## Generate an SSH Key with a comment
```shell
ssh-keygen -C "comment" -f <file>
```
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.