|
1 | 1 | --- |
2 | 2 | title: SSH Profiles |
3 | | -description: Create reusable SSH tunnel configurations that can be shared across multiple database connections |
| 3 | +description: Save SSH tunnel configurations as reusable profiles shared across connections |
4 | 4 | --- |
5 | 5 |
|
6 | 6 | # SSH Profiles |
7 | 7 |
|
8 | | -SSH profiles let you define an SSH tunnel configuration once and reuse it across multiple database connections. Instead of entering the same SSH host, port, username, and auth settings for every connection that tunnels through the same server, create a profile and select it from a dropdown. |
| 8 | +When you connect to MySQL, Redis, and PostgreSQL on the same remote server, you'd normally enter the same SSH host, port, and credentials three times. SSH profiles fix that: define the tunnel config once, then pick it from a dropdown on any connection. |
9 | 9 |
|
10 | | -## Creating an SSH Profile |
| 10 | +## Creating a Profile |
11 | 11 |
|
12 | 12 | <Steps> |
13 | | - <Step title="Open Connection Form"> |
14 | | - Open a new or existing connection and switch to the **SSH Tunnel** tab. |
| 13 | + <Step title="Open the SSH Tunnel tab"> |
| 14 | + Open a new or existing connection and go to the **SSH Tunnel** tab. |
15 | 15 | </Step> |
16 | | - <Step title="Enable SSH Tunnel"> |
17 | | - Toggle the **SSH Tunnel** switch to ON. |
| 16 | + <Step title="Enable SSH"> |
| 17 | + Turn on the **Enable SSH Tunnel** toggle. |
18 | 18 | </Step> |
19 | | - <Step title="Create New Profile"> |
20 | | - Click **Use SSH Profile** to switch from inline configuration to profile mode, then click **Create New Profile...** from the profile dropdown. |
| 19 | + <Step title="Click Create New Profile"> |
| 20 | + In the **SSH Profile** section, click **Create New Profile...**. A sheet opens with all the SSH fields. |
21 | 21 | </Step> |
22 | | - <Step title="Fill in Profile Details"> |
23 | | - Enter a profile name and configure the SSH settings (host, port, username, authentication method). These are the same fields as inline SSH configuration. |
24 | | - </Step> |
25 | | - <Step title="Save"> |
26 | | - Click **Save** to store the profile. It is now available in the profile dropdown for all connections. |
| 22 | + <Step title="Configure and save"> |
| 23 | + Give the profile a name (e.g. "prod-bastion"), fill in the SSH server details, and click **Create**. |
27 | 24 | </Step> |
28 | 25 | </Steps> |
29 | 26 |
|
30 | | -### Profile Fields |
| 27 | +### Profile fields |
31 | 28 |
|
32 | 29 | | Field | Description | |
33 | 30 | |-------|-------------| |
34 | | -| **Profile Name** | A label to identify this profile (e.g., "Production Bastion", "Staging Jump") | |
35 | | -| **SSH Host** | SSH server hostname or IP | |
36 | | -| **SSH Port** | SSH server port (default `22`) | |
37 | | -| **SSH User** | SSH username | |
38 | | -| **Auth Method** | Password, Private Key, or SSH Agent | |
39 | | -| **Jump Hosts** | Optional multi-hop configuration | |
40 | | - |
41 | | -Authentication fields (password, key file, passphrase, agent socket) depend on the selected auth method. These work identically to [inline SSH tunnel settings](/databases/ssh-tunneling#authentication-methods). |
| 31 | +| **Name** | Label for this profile — shows in the dropdown | |
| 32 | +| **SSH Host** | Hostname or IP of the SSH server | |
| 33 | +| **SSH Port** | Default `22` | |
| 34 | +| **Username** | SSH login user | |
| 35 | +| **Auth Method** | Password, Private Key, SSH Agent, or Keyboard-Interactive | |
| 36 | +| **Jump Hosts** | Optional multi-hop bastion chain | |
| 37 | +| **TOTP** | Optional two-factor (auto-generate or prompt) | |
42 | 38 |
|
43 | | -## Using SSH Profiles |
| 39 | +Auth-specific fields (password, key file, passphrase, agent socket) match the [inline SSH tunnel settings](/databases/ssh-tunneling#authentication-methods). |
44 | 40 |
|
45 | | -1. Open a connection's **SSH Tunnel** tab and enable SSH |
46 | | -2. Click **Use SSH Profile** to switch to profile mode |
47 | | -3. Select a profile from the dropdown |
48 | | -4. The SSH settings display as a read-only summary showing the profile's host, port, user, and auth method |
| 41 | +## Selecting a Profile |
49 | 42 |
|
50 | | -The connection stores a reference to the profile, not a copy of the settings. If you update the profile later, all connections using it pick up the changes automatically. |
| 43 | +1. Go to a connection's **SSH Tunnel** tab and enable SSH |
| 44 | +2. Open the **Profile** picker and select a profile |
| 45 | +3. The connection shows a read-only summary of the profile's settings |
51 | 46 |
|
52 | | -To switch back to per-connection SSH settings, click **Use Inline Config**. This detaches the connection from the profile and lets you edit SSH fields directly. |
| 47 | +The connection stores a reference to the profile — not a copy. Updating the profile later affects every connection that uses it. |
53 | 48 |
|
54 | | -## Editing and Deleting Profiles |
| 49 | +To go back to per-connection SSH settings, switch the picker back to **Inline Configuration**. |
55 | 50 |
|
56 | | -### Editing |
| 51 | +## Editing a Profile |
57 | 52 |
|
58 | | -1. Open any connection that uses the profile (or create a new one and select the profile) |
59 | | -2. Click the **Edit** button next to the profile dropdown |
60 | | -3. Modify the settings and click **Save** |
| 53 | +1. Select the profile in any connection's SSH tab |
| 54 | +2. Click **Edit Profile...** |
| 55 | +3. Change what you need and click **Save** |
61 | 56 |
|
62 | | -Changes apply to all connections that reference this profile. |
| 57 | +All connections referencing the profile get the updated config on next connect. |
63 | 58 |
|
64 | | -### Deleting |
| 59 | +## Deleting a Profile |
65 | 60 |
|
66 | | -1. Open the profile editor |
| 61 | +1. Open the profile editor via **Edit Profile...** |
67 | 62 | 2. Click **Delete Profile** |
68 | | -3. A confirmation dialog shows how many connections currently use this profile |
69 | | -4. Confirm to delete. Affected connections revert to inline SSH configuration with the profile's settings copied in, so no connection loses its SSH config. |
| 63 | +3. A confirmation dialog shows how many connections use this profile |
| 64 | +4. Confirm deletion |
| 65 | + |
| 66 | +After deletion, affected connections show a "profile no longer exists" warning in the SSH tab. SSH tunneling is disabled for those connections until you select a different profile or switch to inline configuration. |
70 | 67 |
|
71 | | -## Save Current Config as Profile |
| 68 | +## Saving Inline Config as a Profile |
72 | 69 |
|
73 | | -If you already have a connection with inline SSH settings and want to reuse that configuration: |
| 70 | +If you already configured SSH inline on a connection and want to reuse it: |
74 | 71 |
|
75 | | -1. Open the connection's **SSH Tunnel** tab |
| 72 | +1. Go to the connection's **SSH Tunnel** tab (with inline config active) |
76 | 73 | 2. Click **Save Current as Profile...** |
77 | | -3. Enter a profile name |
78 | | -4. The current SSH settings are saved as a new profile, and the connection switches to using that profile |
| 74 | +3. Name the profile and click **Create** |
79 | 75 |
|
80 | | -This is useful when you realize multiple connections share the same SSH tunnel and you want to consolidate them. |
| 76 | +The connection switches to using the new profile. Your SSH password, key passphrase, and TOTP secret carry over. |
81 | 77 |
|
82 | 78 | ## iCloud Sync |
83 | 79 |
|
84 | | -SSH profiles sync across your Macs when iCloud Sync is enabled with the **Connections** category turned on. Profiles are synced alongside your connections. |
| 80 | +SSH profiles sync across Macs when iCloud Sync is enabled with the **SSH Profiles** toggle on in **Settings > Sync**. |
85 | 81 |
|
86 | 82 | <Note> |
87 | | -SSH passwords and key passphrases are **not** synced with the profile by default. These credentials are stored in the local macOS Keychain. Enable **Password sync** in **Settings** > **Sync** to sync credentials via iCloud Keychain (end-to-end encrypted by Apple). |
| 83 | +SSH passwords and key passphrases stay in the local macOS Keychain by default. Turn on **Password sync** in **Settings > Sync** to sync credentials via iCloud Keychain. |
88 | 84 | </Note> |
89 | 85 |
|
90 | | -See [iCloud Sync](/features/icloud-sync) for full sync configuration details. |
| 86 | +See [iCloud Sync](/features/icloud-sync) for setup details. |
91 | 87 |
|
92 | | -## Related pages |
| 88 | +## Related |
93 | 89 |
|
94 | 90 | <CardGroup cols={2}> |
95 | 91 | <Card title="SSH Tunneling" icon="lock" href="/databases/ssh-tunneling"> |
96 | | - Full SSH tunnel setup and troubleshooting |
| 92 | + SSH tunnel setup and troubleshooting |
97 | 93 | </Card> |
98 | 94 | <Card title="iCloud Sync" icon="cloud" href="/features/icloud-sync"> |
99 | | - Sync settings across Macs |
100 | | - </Card> |
101 | | - <Card title="Connection Management" icon="plug" href="/databases/overview"> |
102 | | - Managing all your connections |
103 | | - </Card> |
104 | | - <Card title="Keyboard Shortcuts" icon="keyboard" href="/features/keyboard-shortcuts"> |
105 | | - Speed up your workflow |
| 95 | + Sync across Macs |
106 | 96 | </Card> |
107 | 97 | </CardGroup> |
0 commit comments