To use an open SSH connection from your development machine to the server VM in your Azure Stack Hub instance that hosts your web app, you might need to create a Secure Shell (SSH) public and private key pair.
In this article, you create your keys and then use them to connect to your server. You can use an SSH client to get a bash prompt on the Linux server or use a Secure FTP (SFTP) client to move files to and from the server.
Create an SSH public key on Windows
In this section, you use PuTTY Key Generator to create a public SSH key and private key pair to use when you create a secure connection to Linux machines in your Azure Stack Hub instance. PuTTY is a free terminal emulator that can allow you to connect to a server via SSH and Telnet.
Open PuTTY Key Generator.
Under Parameters, select RSA.
In the Number of bits in a generated key box, enter 2048.
Select Generate.
In the Key area, generate some random characters by moving the cursor over the blank area.
Enter a Key passphrase and confirm it in the Confirm passphrase box. Note your passphrase for later use.
Select Save public key, and save it to a location where you can access it.
Select Save private key, and save it to a location where you can access it. Remember that it belongs with the public key.
Your public key is stored in the text file you saved. The text looks like the following:
In Windows, there are two approaches to accessing Git repositories using SSH. Command line Git distribution and posh-git are preconfigured for OpenSSH, while SourceTree by default relies on PuTTY. The two stacks use different formats for storing both private and public keys. Fortunately, there is a way to convert between the formats using PuTTY's key generation utility. Generate a private and public key pair Open PuTTYgen.exe, press Generate button, move mouse. Once the keys are generated, type your key passphrase (choose a 'hard to guess' one). PuTTY's author opted for simplicity, so the public and private keys, which make up the underlying security used by PuTTY/SSH-2 key authentication, are stored in a single proprietary.ppk file. Typically these keys are maintained as two separate files by ssh.
When an application requests the key, you copy and paste the entire contents of the text file.
Connect with SSH by using PuTTY
When you install PuTTY, you have both PuTTY Key Generator and an SSH client. In this section, you open the SSH client, PuTTY, and configure your connection values and SSH key. If you're on the same network as your Azure Stack Hub instance, you connect to your VM.
Before you connect, you will need:
- PuTTY
- The IP address and username for the Linux machine in your Azure Stack Hub instance that uses an SSH public key as the Authentication type.
- Port 22 to be open for the machine.
- The public SSH key that you used when you created the machine.
- The client machine that runs PuTTY to be on the same network as your Azure Stack Hub instance.
Open PuTTY.
In the Host Name (or IP address) box, enter the username and public IP address of the machine (for example, username@192.XXX.XXX.XX).
Validate that the Port is 22 and the Connection type is SSH.
In the Category tree, expand SSH and Auth.
Next to the Private key file for authentication box, select Browse, and then search for the private key file (<filename>.ppk) of your public and private key pair.
In the Category tree, select Session.
Under Saved Sessions, enter a name for the session, and then select Save.
In the Saved Sessions list, select the name of your session, and then select Load.
Select Open. The SSH session opens.
Connect with SFTP with FileZilla
To move files to and from your Linux machine, you can use FileZilla, an FTP client that supports Secure FTP (SFTP). FileZilla runs on Windows 10, Linux, and macOS. The FileZilla client supports FTP, FTP over TLS (FTPS), and SFTP. It is open-source software that's distributed free of charge under the terms of the GNU General Public License.
Set your connection
Download and install FileZilla.
Open FileZilla.
Select File > Site Manager.
In the Protocol drop-down list, select SFTP - SSH File Transfer Protocol.
In the Host box, enter the public IP address for your machine.
In the Logon Type box, select Normal.
Enter your username and password.
Select OK.
Select Edit > Settings.
In the Select page tree, expand Connection, and then select SFTP.
Select Add key file, and then enter your private key file (for example, <filename>.ppk).
Select OK.
Open your connection
- Open FileZilla.
- Select File > Site Manager.
- Select the name of your site, and then select Connect.
Convert Openssh To Putty
Next steps
Putty Public Key To Openssh Mac
Learn how to Set up a development environment in Azure Stack Hub.