TPA - PuTTY configuration guide
===============================

You can use PuTTY under Windows to connect by way of SSH to the AWS
instances that were created by the TPA utility tpaexec provision. You
need to convert the keys from the private key format generated by Amazon
EC2 (``.pem`` ) to the PuTTY format (``.ppk`` ).

::

   #  Provision the cluster

   [tpa]$ tpaexec provision <clustername>

PuTTY has a tool named PuTTYgen that can convert keys to the required
format.

Key conversion
--------------

Follow these steps to perform the key conversion.

Locate private key
^^^^^^^^^^^^^^^^^^

Locate the private key in the cluster directory ``<clustername>`` . The
name uses the ``cluster_name`` variable, which is set in ``config.yml``
, prefixed by ``id_`` . For example, if ``cluster_name`` is set to
``testenv1`` , then the private key is ``id_testenv1`` .

Save key as .pem
^^^^^^^^^^^^^^^^

Copy the private key file into your Windows file system and save it as a
``.pem`` file. Using the same example, the file name is
``id_testenv1.pem`` . To create the file, it’s okay to paste the content
into a text file.

Key conversions
^^^^^^^^^^^^^^^

1. Start PuTTYgen. Under **Parameters**, select the appropriate type of
   key to generate:

-  For older versions of PuTTYgen, select **SSH-2 RSA**.
-  For recent versions, select **RSA**.

..  Note::
   Don't select **SSH-1 (RSA)**.

2. Select **Load**. In the box labeled **PuTTY Private Key Files
   (\*.ppk)**, select **All Files (\*.\*)**.

3. Select your ``.pem`` file and select **Open**. Then select **OK**.

4. Select **Save private key**, and select **Yes** to ignore the warning
   about saving the key without a passphrase. Make sure that the file
   suffix is ``.ppk`` , and select the same name as you did for the
   ``.pem`` file. Using the same example, the filename is
   ``id_testenv1.ppk`` .

Configure PuTTY
---------------

1. Start PuTTY. In the Category window, select **Session**.

2. In the **Host Name** panel, enter ``<user>@<IP address>`` . In the
   **Port** panel, enter ``22`` .

You can find the ``<user>`` and ``<IP address>`` values in the
``<clustername>/ssh_config`` file that’s created by the tpaexec
provision utility.

3. In the PuTTY Category window, select **Connection**. Expand **SSH**
   and select **Auth**.

4. For the panel labeled **Private key file for authentication**, select
   **Browse**. Select the ``.ppk`` file that you saved earlier, and then
   select **Open**.

5. In the PuTTY Category*\* window, select **Session**. In **Saved
   Sessions**, enter a session name and select \**Save*\*.

You can now connect to the AWS host by way of PuTTY by selecting this
saved session.
