Using Kiln with SSH for Mac and UNIX


Follow

Overview

Customers using Kiln can now use Secure Shell (SSH). When SSH is enabled, the Clone URL links on the repository pages give an option to choose between HTTP(S) and SSH protocols. Mercurial, Git, and TortoiseHg operations, like clone, pull, and push, can use either the SSH or HTTP server address.

If you have already configured SSH, you can find the SSH/HTTP toggle on the upper-right of every repository. This provides the exact clone URL for TortoiseHg and Git.
 

mceclip2.png
 
This article provides details on the required configuration settings before using SSH for Mac and UNIX users.

 


 

Process

The configuration process consists of the following steps:

 

Generating the SSH Key

  1. Generate an SSH key.
    NOTE: We recommend 2048 or 4096-bit keys.
    1. Open a Terminal window.
    2. Run ssh-keygen -t rsa.
    3. Follow the instructions.
      This also works with Git.
  2. Run cat ~/.ssh/id_rsa.pub, and copy the result to your clipboard.
  3. Share the key with Kiln.
     
    1. In Kiln, click on your avatar.
    2. Click SSH Keys.

      mceclip0.png

    3. Click Add a New Key.

      mceclip1.png

    4. Paste the key that you copied in Step 2 into the Public Key field.
    5. In the Name field, enter a name for the key.
    6. Click Save Key.

      mceclip2.png

 

Back to top


 

Getting the Latest Fingerprint

To get the latest SSH Fingerprint for Kiln, please refer to the knowledge base article, Using Kiln with SSH.

 

Back to top


 

Disabling IP Whitelists

IP whitelists are incompatible with SSH. Please make sure they are disabled.

For details, please review this article on Using Kiln with IP Whitelisting.

 

Back to top


 

Switching Protocols

If you want to start pushing and pulling a repository that you cloned with HTTPS using SSH, please follow the process below:

  1. In the repository on your machine, open the hgrc file in the .hgfolder.
  2. Change the URL in the file to the new URL from the repository page in Kiln. Please see an example below:
     
    The original HTTPS URL:

    [paths]default= https://myaccount.kilnhg.com/Code/Widget/Group/myrepo

    The new SSH URL:

    [paths]default= ssh://myusername@myaccount.kilnhg.com/Code/Widget/Group/myrep

 

Back to top