{"id":131305,"date":"2026-02-28T11:15:46","date_gmt":"2026-02-28T08:15:46","guid":{"rendered":"https:\/\/computingforgeeks.com\/?p=131305"},"modified":"2026-02-28T11:15:50","modified_gmt":"2026-02-28T08:15:50","slug":"setup-ssh-mysql-bastion-server-using-warpgate","status":"publish","type":"post","link":"https:\/\/computingforgeeks.com\/setup-ssh-mysql-bastion-server-using-warpgate\/","title":{"rendered":"How To Setup SSH and MySQL Bastion Server using Warpgate"},"content":{"rendered":"\n<p>A<strong> bastion host<\/strong> can be defined as a computer within a network that is explicitly designed to withstand attacks. This computer hosts an application or process such as a proxy server, or load balancer with all other services removed or limited to eliminate any attack surface. This host is hardened depending on its location or purpose, which is either on the outside of a firewall or within a demilitarized zone (DMZ) and usually involves access from untrusted networks or computers. Bastion hosts can then be used to provide access to private networks from an external network. This makes access control easier since the host becomes the only ingress path to those internal resources, therefore, minimizing potential threats.<\/p>\n\n\n\n<p>In this guide, we will learn how to set up an SSH and MySQL Bastion Server using Warpgate.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What is Warpgate?<\/h2>\n\n\n\n<p><strong>Warpgate<\/strong> is an easy-to-configure service that supports smart SSH, HTTPS and MySQL. This service does not require any special client applications to work. Once deployed on a Linux host, it will accept SSH, HTTPS and MySQL connections and provide an (optional) web admin UI.<\/p>\n\n\n\n<p>The below image illustrates a simple Warpgate set-up.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"973\" height=\"519\" src=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/Warpgate-setup.png\" alt=\"\" class=\"wp-image-131306\" title=\"\" srcset=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/Warpgate-setup.png 973w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/Warpgate-setup-300x160.png 300w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/Warpgate-setup-768x410.png 768w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/Warpgate-setup-696x371.png 696w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/Warpgate-setup-787x420.png 787w\" sizes=\"auto, (max-width: 973px) 100vw, 973px\" \/><\/figure>\n\n\n\n<p>The amazing features and benefits associated with Warpgate are:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>It is written in 100% safe Rust.<\/li>\n\n\n\n<li>It has a single binary with no dependencies. This makes the installation so easy.<\/li>\n\n\n\n<li>It records every session for you to view (live) and replay later through a built-in admin web UI.<\/li>\n\n\n\n<li>It does not act as a jump host, it forwards your connections straight to the target instead.<\/li>\n\n\n\n<li>It supports Native 2FA and SSO (TOTP &amp; OpenID Connect).<\/li>\n\n\n\n<li>It allows users to set it up in their DMZ, add user accounts and easily assign them to specific hosts and URLs within the network.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">1. Install Warpgate on Linux <\/h2>\n\n\n\n<p>Warpgate can be installed easily on your desired Linux host easily using a single binary with no dependencies. The latest binary can be downloaded from the <a href=\"https:\/\/github.com\/warp-tech\/warpgate\/releases\" target=\"_blank\" rel=\"noreferrer noopener\">GitHub Releases<\/a>.<\/p>\n\n\n\n<p>You can also download the binary from your terminal. First, export the desired version:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ver=v0.20.2<\/code><\/pre>\n\n\n\n<p>At the time of this documentation, the latest release version was at<strong> 0.7.0<\/strong>. Proceed and download the exported version with the command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><em><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-purple-color\">##For x86_64-linux\n<\/mark><\/em>wget https:\/\/github.com\/warp-tech\/warpgate\/releases\/download\/$ver\/warpgate-$ver-x86_64-linux\n\n<mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-purple-color\">##For arm64-linux\n<\/mark>wget https:\/\/github.com\/warp-tech\/warpgate\/releases\/download\/$ver\/warpgate-$ver-arm64-linux<\/code><\/pre>\n\n\n\n<p>Once downloaded, make the binary executable:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>chmod +x warpgate-*<\/code><\/pre>\n\n\n\n<p>Now move the binary to your PATH:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo mv warpgate-* \/usr\/bin\/warpgate<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">2. Configure Warpgate on Linux<\/h2>\n\n\n\n<p>Once installed, Warpgate can be configured using to work as desired. If you want to use a non-default configuration file, (other than \/etc\/warpgate.yaml) you need to pass it using the <code>--config &lt;path&gt;<\/code> argument. You can also use an external database other than the built-in SQLite using <code>-database-url mysql:\/\/\u2026<\/code>or <code>--database-url postgres:\/\/...<\/code><\/p>\n\n\n\n<p>In this guide, we will use the interactive setup mode by running the below command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo warpgate setup<\/code><\/pre>\n\n\n\n<p>Proceed as shown:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>08:49:56  INFO Welcome to Warpgate v0.20.2-modified\n08:49:56  INFO Let's do some basic setup first.\n08:49:56  INFO The new config will be written in \/etc\/warpgate.yaml.\n08:49:56  INFO * Paths can be either absolute or relative to \/etc.\n? Directory to store app data (up to a few MB) in (\/var\/lib\/warpgate) \u203a <strong><em>Press Enter<\/em><\/strong>\n? Endpoint to listen for HTTP connections on (0.0.0.0:8888) \u203a \n08:53:35  INFO You will now choose specific protocol listeners to be enabled.\n08:53:35  INFO \n08:53:35  INFO NB: Nothing will be exposed by default -\n08:53:35  INFO     you'll set target hosts in the config file later.\n? Accept SSH connections? (y\/n) \u203a <strong>yes<\/strong>\n? Endpoint to listen for SSH connections on (0.0.0.0:2222) \u203a \n? Accept MySQL connections? (y\/n) \u203a <strong>yes<\/strong>\n? Endpoint to listen for MySQL connections on (0.0.0.0:33306) \u203a \n? Do you want to record user sessions? (y\/n) \u203a yes\n? Set a password for the Warpgate <strong>admin<\/strong> user \u203a <em><strong> ********<\/strong><\/em>\n08:54:20  INFO Generated configuration:\n---\nsso_providers: &#91;]\nrecordings:\n....\n08:54:20  INFO Saved into \/etc\/warpgate.yaml\n08:54:20  INFO Using config: \"\/etc\/warpgate.yaml\"<\/code><\/pre>\n\n\n\n<p>At this point, you will have a configuration generated in <strong>\/etc\/warpgate.yaml<\/strong>. If you want to delete, or start over again, rerun the command <code>warpgate setup<\/code>. <\/p>\n\n\n\n<p>Allow the set ports through the firewall:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><em><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-purple-color\">#For UFW\n<\/mark><\/em>sudo ufw allow 8888\nsudo ufw allow 2222\nsudo ufw allow 33306\n\n<em><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-purple-color\">##For Firewalld\n<\/mark><\/em>sudo firewall-cmd --add-port=8888\/tcp --permanent\nsudo firewall-cmd --add-port=2222\/tcp --permanent\nsudo firewall-cmd --add-port=33306\/tcp --permanent\nsudo firewall-cmd --reload<\/code><\/pre>\n\n\n\n<p>Once configured, you can start Warpgate with the command<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ <mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-pale-pink-color\">sudo warpgate run<\/mark>\n08:58:02  INFO Warpgate version=v0.20.2-modified\n08:58:02  INFO Using config: \"\/etc\/warpgate.yaml\"\n08:58:02  INFO --------------------------------------------\n08:58:02  INFO Warpgate is now running.\n08:58:02  INFO Accepting SSH connections on 0.0.0.0:2222\n08:58:02  INFO Accepting HTTP connections on https:\/\/0.0.0.0:8888\n08:58:02  INFO Accepting MySQL connections on 0.0.0.0:33306\n08:58:02  INFO --------------------------------------------\n08:58:02  INFO Listening address=0.0.0.0:2222\n08:58:02  INFO Listening address=0.0.0.0:8888\n08:58:02  INFO Listening address=0.0.0.0:33306<\/code><\/pre>\n\n\n\n<p>If you have a config in another directory, use:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo warpgate run --config <em><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-purple-color\">&lt;path&gt;<\/mark><\/em><\/code><\/pre>\n\n\n\n<p>You can now access the web admin UI using the URL <a href=\"https:\/\/IP_Address:8888\/@warpgate\/admin\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/IP_Address:8888\/@warpgate\/admin<\/a><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"753\" src=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-1024x753.png\" alt=\"\" class=\"wp-image-131465\" title=\"\" srcset=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-1024x753.png 1024w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-300x221.png 300w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-768x565.png 768w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-1536x1130.png 1536w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-696x512.png 696w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-1068x785.png 1068w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-571x420.png 571w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-80x60.png 80w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate.png 1572w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Login using the created user and you will see the below dashboard.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"552\" src=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-1-1024x552.png\" alt=\"\" class=\"wp-image-131466\" title=\"\" srcset=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-1-1024x552.png 1024w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-1-300x162.png 300w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-1-768x414.png 768w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-1-1536x827.png 1536w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-1-2048x1103.png 2048w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-1-696x375.png 696w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-1-1068x575.png 1068w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-1-780x420.png 780w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">3. Create a Systemd Service for Warpgate<\/h2>\n\n\n\n<p>To avoid starting the Warpgate service manually, we will create a Systemd Service. Begin by creating the service file with the command: <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo tee \/etc\/systemd\/system\/warpgate.service&lt;&lt;EOF\n&#91;Unit]\nDescription=Warpgate\nAfter=network.target\nStartLimitIntervalSec=0\n\n&#91;Service]\nType=notify\nRestart=always\nRestartSec=5\nExecStart=\/usr\/bin\/warpgate --config \/etc\/warpgate.yaml run\n\n&#91;Install]\nWantedBy=multi-user.target\nEOF<\/code><\/pre>\n\n\n\n<p>Once the file has been created, reload the system daemon:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo systemctl daemon-reload<\/code><\/pre>\n\n\n\n<p>Ensure that the service is stopped and nothing is running on ports 2222 and 8888.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo killall -9 warpgate<\/code><\/pre>\n\n\n\n<p>On Rhel-based systems, modify SELinux:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo \/sbin\/restorecon -v \/usr\/bin\/warpgate<\/code><\/pre>\n\n\n\n<p>Now start and enable the service:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo systemctl enable --now warpgate<\/code><\/pre>\n\n\n\n<p>Check the status of the service:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$ s<mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-pale-pink-color\">ystemctl status warpgate<\/mark>\n\u25cf warpgate.service - Warpgate\n     Loaded: loaded (\/etc\/systemd\/system\/warpgate.service; enabled; vendor preset: enabled)\n     Active: active<mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-green-cyan-color\"> (running) <\/mark>since Sun 2022-12-11 12:05:28 EAT; 12s ago\n   Main PID: 2839 (warpgate)\n      Tasks: 9 (limit: 4575)\n     Memory: 8.1M\n     CGroup: \/system.slice\/warpgate.service\n             \u2514\u25002839 \/usr\/bin\/warpgate --config \/etc\/warpgate.yaml run<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">4. Adding an SSH Target on Warpgate<\/h2>\n\n\n\n<p>Now to be able to SSH to other systems using Warpgate, we need to add the target. Warpgate has its own set of SSH keys which the target host must trust for the connections to be established. The keys can be viewed in the <strong>SSH<\/strong> tab on the admin UI.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"577\" src=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-2-1024x577.png\" alt=\"\" class=\"wp-image-131467\" title=\"\" srcset=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-2-1024x577.png 1024w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-2-300x169.png 300w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-2-768x433.png 768w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-2-1536x865.png 1536w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-2-2048x1154.png 2048w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-2-696x392.png 696w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-2-1068x602.png 1068w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-2-746x420.png 746w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>You can also view the keys from the command line with the command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo warpgate client-keys<\/code><\/pre>\n\n\n\n<p>These keys are listed in order of preference. Copy one of these keys and paste in <code>~\/.ssh\/authorized_keys<\/code> on your client machine. If the machine does not have the file, create it <em>manually<\/em> and add the keys.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><em><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-purple-color\">##On the target host\n<\/mark><\/em>vim ~\/.ssh\/authorized_keys<\/code><\/pre>\n\n\n\n<p>In the file, paste the copied keys at the end and save it.<\/p>\n\n\n\n<p>Aside from using the SSH keys, you have an alternative<strong> password authentication<\/strong> method which is not recommended. <\/p>\n\n\n\n<p>Now on the admin UI, add the target host by navigating to <strong>Config<\/strong> &gt; <strong>Targets<\/strong> &gt; <strong>Add target<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"731\" src=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-3-1024x731.png\" alt=\"\" class=\"wp-image-131468\" title=\"\" srcset=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-3-1024x731.png 1024w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-3-300x214.png 300w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-3-768x548.png 768w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-3-696x497.png 696w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-3-1068x762.png 1068w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-3-588x420.png 588w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-3-100x70.png 100w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-3.png 1460w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>On the next page, provide the username, and IP address for the remote system.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"878\" src=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-4-1024x878.png\" alt=\"\" class=\"wp-image-131469\" title=\"\" srcset=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-4-1024x878.png 1024w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-4-300x257.png 300w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-4-768x658.png 768w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-4-696x597.png 696w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-4-1068x916.png 1068w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-4-490x420.png 490w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-4.png 1444w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Once the changes have been made, click <strong>Update configuration<\/strong>. Once added, the system should appear on the home page as shown.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"712\" src=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-5-1024x712.png\" alt=\"\" class=\"wp-image-131470\" title=\"\" srcset=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-5-1024x712.png 1024w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-5-300x209.png 300w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-5-768x534.png 768w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-5-696x484.png 696w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-5-1068x742.png 1068w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-5-604x420.png 604w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-5-100x70.png 100w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-5.png 1378w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Now to connect to the remote system from the Warpgate host, use the command with the below syntax:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ssh admin:&lt;target-name&gt;@&lt;Host&gt; -p 2222<\/code><\/pre>\n\n\n\n<p>The values here are:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Host<\/strong>: the Warpgate host<\/li>\n\n\n\n<li><strong>Port<\/strong>: the Warpgate SSH port (default: 2222)<\/li>\n\n\n\n<li><strong>Username<\/strong>: <code>admin:&lt;target-name&gt;<\/code> in this example: <strong><em>admin:ubuntu11<\/em><\/strong><\/li>\n\n\n\n<li><strong>Password<\/strong>: your Warpgate admin password<\/li>\n<\/ul>\n\n\n\n<p>To view the exact connection command, click on the added host.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-6-1024x640.png\" alt=\"\" class=\"wp-image-131471\" title=\"\" srcset=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-6-1024x640.png 1024w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-6-300x187.png 300w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-6-768x480.png 768w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-6-696x435.png 696w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-6-1068x667.png 1068w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-6-672x420.png 672w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-6.png 1146w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>For example:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>ssh admin:ubuntu11@192.168.205.11 -p 2222<\/code><\/pre>\n\n\n\n<p>Provide the Warpgate admin password for the connection to happen.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"728\" src=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-7-1024x728.png\" alt=\"\" class=\"wp-image-131472\" title=\"\" srcset=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-7-1024x728.png 1024w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-7-300x213.png 300w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-7-768x546.png 768w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-7-696x495.png 696w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-7-1068x759.png 1068w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-7-591x420.png 591w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-7-100x70.png 100w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-7.png 1500w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">5. Adding MySQL Target on Warpgate<\/h2>\n\n\n\n<p>Ensure that your installed database supports<strong> TLS<\/strong> before you proceed with this set up. On your MySQL server, you need to make the below configurations:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo vim \/etc\/mysql\/mariadb.conf.d\/50-server.cnf\n##OR\nsudo vim \/etc\/my.cnf.d\/mariadb-server.cnf<\/code><\/pre>\n\n\n\n<p>In the file, modify the below lines:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;mysqld]\n# localhost which is more compatible and is not less secure.\n<strong>bind-address            = *\n<\/strong>\n<strong>tls_version = TLSv1.2,TLSv1.3<\/strong><\/code><\/pre>\n\n\n\n<p>Save the file and restart the service:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo systemctl restart mariadb<\/code><\/pre>\n\n\n\n<p>Alow the service through the firewall:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><em><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-purple-color\">#For UFW\n<\/mark><\/em>sudo fw allow 3306\n\n<em><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-purple-color\">##For Firewalld\n<\/mark><\/em>sudo firewall-cmd --add-port=3306\/tcp --permanent\nsudo firewall-cmd --reload<\/code><\/pre>\n\n\n\n<p>Now you can create a user to use for remote connections:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo mysql -u root -p<\/code><\/pre>\n\n\n\n<p>Crate the user with the commands:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>CREATE USER 'sample_user'@'%' IDENTIFIED BY '<mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-pale-cyan-blue-color\">Passw0rd<\/mark>';\nGRANT ALL PRIVILEGES ON *.* TO 'sample_user'@'%' IDENTIFIED BY '<mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-pale-cyan-blue-color\">Passw0rd<\/mark>';\nFLUSH PRIVILEGES;\nEXIT;<\/code><\/pre>\n\n\n\n<p>On the desired host that you want to run the SQL queries from, ensure that you have<strong> MySQL client<\/strong> installed with:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>TLS: enabled<\/li>\n\n\n\n<li>Cleartext password authentication: <em>allowed<\/em><\/li>\n<\/ul>\n\n\n\n<p>Also install the additional package below for<em> cleartext password authentication<\/em><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><em><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-purple-color\">##On Debian\/Ubuntu\n<\/mark><\/em>sudo yum install mariadb-libs\n\n<em><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-purple-color\">##On Rhel\/Rocky Linux\/CentOS\/Alma Linux\n<\/mark><\/em>sudo apt install libmariadb3<\/code><\/pre>\n\n\n\n<p>We have generated our certificates on the Warpgate server for MySQL connection in the below paths:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>$<mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-pale-pink-color\"> sudo vim \/etc\/warpgate.yaml <\/mark>\n---\n......\nmysql:\n  enable: true\n  listen: \"0.0.0.0:33306\"\n  certificate: \/var\/lib\/warpgate\/tls.certificate.pem\n  key: \/var\/lib\/warpgate\/tls.key.pem\n...<\/code><\/pre>\n\n\n\n<p>For the connection form the client to happen, we need to copy these certificates to the <strong>MySQL client<\/strong>. You can do this using the SCP command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><em><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-purple-color\">##From Warpgate server\n<\/mark><\/em>cd \/var\/lib\/warpgate\/\nsudo scp tls.* username@IP_Address:~\/<\/code><\/pre>\n\n\n\n<p>In the command, replace the <strong>username<\/strong> and <strong>IP address<\/strong> of your MySQL client. Once copied, move the certs to a preferred directory on the MySQL client.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code><em><mark style=\"background-color:rgba(0, 0, 0, 0)\" class=\"has-inline-color has-vivid-purple-color\">##On the MySQL client\n<\/mark><\/em>sudo mv tls-* \/etc\/mysql<\/code><\/pre>\n\n\n\n<p>Now update your MySQL client config file with the certs:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo vim \/etc\/mysql\/my.cnf<\/code><\/pre>\n\n\n\n<p>In the file, add the lines:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;client-server]\nssl-cert=<strong><em>\/etc\/mysql\/tls.certificate.pem<\/em><\/strong>\nssl-key=<strong><em>\/etc\/mysql\/tls.key.pem<\/em><\/strong>\n<strong><em>tls_version = TLSv1.2,TLSv1.3<\/em><\/strong><\/code><\/pre>\n\n\n\n<p>Now back to the Wapgate admin UI, we will use steps almost similar to SSH. Navigate to <strong>Config<\/strong> &gt; <strong>Targets<\/strong> &gt; <strong>Add target<\/strong>, set the target name and type as shown.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"713\" src=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-8-1024x713.png\" alt=\"\" class=\"wp-image-131473\" title=\"\" srcset=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-8-1024x713.png 1024w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-8-300x209.png 300w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-8-768x534.png 768w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-8-696x484.png 696w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-8-1068x743.png 1068w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-8-603x420.png 603w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-8-100x70.png 100w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-8.png 1480w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Make adjustments to the config by providing the host, user and password as shown. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1006\" src=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-9-1024x1006.png\" alt=\"\" class=\"wp-image-131474\" title=\"\" srcset=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-9-1024x1006.png 1024w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-9-300x295.png 300w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-9-768x754.png 768w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-9-696x684.png 696w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-9-1068x1049.png 1068w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-9-428x420.png 428w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-9.png 1474w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Once added, <strong>update the configuration<\/strong> and it should appear on the home page as shown.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"816\" src=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-10-1024x816.png\" alt=\"\" class=\"wp-image-131475\" title=\"\" srcset=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-10-1024x816.png 1024w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-10-300x239.png 300w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-10-768x612.png 768w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-10-696x554.png 696w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-10-1068x851.png 1068w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-10-527x420.png 527w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-10.png 1190w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Now to connect to the database using a URL, the syntax will be:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>mysql:\/\/&lt;username&gt;#&lt;target&gt;:&lt;password&gt;@&lt;warpgate host&gt;:&lt;warpgate mysql port&gt;?sslMode=required<\/code><\/pre>\n\n\n\n<p>Where:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Host<\/strong>: the Warpgate host<\/li>\n\n\n\n<li><strong>Port<\/strong>: the Warpgate MySQL port (default: 33306)<\/li>\n\n\n\n<li><strong>Username<\/strong>:<code> admin#&lt;target&gt;<\/code><strong> <\/strong>or <code>admin:&lt;target-name&gt;<\/code> in this example: <strong>admin#mariaDB<\/strong><\/li>\n\n\n\n<li><strong>Password<\/strong>: your Warpgate admin password<\/li>\n<\/ul>\n\n\n\n<p>You can obtain the required URL or connection command form the admin UI<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1010\" height=\"906\" src=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-11.png\" alt=\"\" class=\"wp-image-131476\" title=\"\" srcset=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-11.png 1010w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-11-300x269.png 300w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-11-768x689.png 768w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-11-696x624.png 696w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-11-468x420.png 468w\" sizes=\"auto, (max-width: 1010px) 100vw, 1010px\" \/><\/figure>\n\n\n\n<p>Now connect to the database form the Warpgate server<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>mysql -u 'admin#mariaDB' --host '192.168.205.2' --port 33306 --ssl -p<\/code><\/pre>\n\n\n\n<p>Sample Output:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"695\" src=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-12-1024x695.png\" alt=\"\" class=\"wp-image-131477\" title=\"\" srcset=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-12-1024x695.png 1024w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-12-300x204.png 300w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-12-768x521.png 768w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-12-1536x1042.png 1536w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-12-696x472.png 696w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-12-1068x724.png 1068w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-12-619x420.png 619w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-12.png 1828w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Once connected, you can view the logs in the Admin UI under <strong>sessions<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"573\" src=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-13-1024x573.png\" alt=\"\" class=\"wp-image-131478\" title=\"\" srcset=\"https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-13-1024x573.png 1024w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-13-300x168.png 300w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-13-768x430.png 768w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-13-1536x860.png 1536w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-13-2048x1147.png 2048w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-13-696x390.png 696w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-13-1068x598.png 1068w, https:\/\/computingforgeeks.com\/wp-content\/uploads\/2022\/12\/SSH-and-MySQL-Bastion-Server-using-Warpgate-13-750x420.png 750w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>That is it for now!<\/p>\n\n\n\n<p>In this guide we have learned how to setup SSH and MySQL Bastion Server using Warpgate. You can now establish secure connections to your SSH, HTTPS and MySQL services. I hope this was significant to you. <\/p>\n\n\n\n<p>See more:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/computingforgeeks.com\/managing-ssh-connections-on-linux-unix-using-ssh-config-file\/\" target=\"_blank\" rel=\"noreferrer noopener\">Managing SSH Connections on Linux\/Unix Using SSH Config file<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/computingforgeeks.com\/best-book-to-master-openssh-putty-tunnels\/\" target=\"_blank\" rel=\"noreferrer noopener\">SSH Mastery &#8211; Best Book to Master OpenSSH, PuTTY, Tunnels<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/computingforgeeks.com\/install-and-configure-openssh-server-on-windows-server\/\" target=\"_blank\" rel=\"noreferrer noopener\">Configure OpenSSH Server on Windows Server 2019<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>A bastion host can be defined as a computer within a network that is explicitly designed to withstand attacks. This computer hosts an application or process such as a proxy server, or load balancer with all other services removed or limited to eliminate any attack surface. This host is hardened depending on its location or &#8230; <a title=\"How To Setup SSH and MySQL Bastion Server using Warpgate\" class=\"read-more\" href=\"https:\/\/computingforgeeks.com\/setup-ssh-mysql-bastion-server-using-warpgate\/\" aria-label=\"Read more about How To Setup SSH and MySQL Bastion Server using Warpgate\">Read more<\/a><\/p>\n","protected":false},"author":21,"featured_media":131306,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[461,299,50,75],"tags":[38291,38289,38290],"class_list":["post-131305","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-databases","category-how-to","category-linux-tutorials","category-security","tag-setup-warpgate-bastion-server","tag-warpgate","tag-warpgate-bastion"],"_links":{"self":[{"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/posts\/131305","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/users\/21"}],"replies":[{"embeddable":true,"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/comments?post=131305"}],"version-history":[{"count":1,"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/posts\/131305\/revisions"}],"predecessor-version":[{"id":161241,"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/posts\/131305\/revisions\/161241"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/media\/131306"}],"wp:attachment":[{"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/media?parent=131305"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/categories?post=131305"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/computingforgeeks.com\/wp-json\/wp\/v2\/tags?post=131305"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}