# How to Connect to Git via SSH
In addition to the HTTP/HTTPS protocols, Teamscale can communicate with Git repositories using Secure Shell (SSH).
When communicating with a Git repository over the SSH protocol, the Teamscale server may need to authenticate itself with a private key.
The private keys need to be stored by navigating to Admin
→ Settings
→ Git
in Teamscale.
Each key consists of a configurable (unique)
ID and the actual key material. The key can then be referred to in the
configuration of the Git repository connector. The key material is a
Base64-encoded string enclosed by a header/footer pair like
BEGIN/END RSA PRIVATE KEY
.
Key Formats
While Teamscale supports a wide range of SSH private key formats, it
does not yet support the "new" OpenSSH private key format, which is
enclosed by a header/footer pair of BEGIN/END OPENSSH PRIVATE KEY
. If your private key is stored in this
format, you can convert it to a format that Teamscale can handle like
this:
OpenSSH
:ssh-keygen -e -m PEM -f $INPUT > $CONVERTED
PuTTY
:puttygen $INPUT -O private-openssh -o $CONVERTED