# Использование SSH через порт HTTPS

Иногда брандмауэры отказываются в полной мере разрешать подключения по протоколу SSH. Если использование клонирования HTTPS с кэшированием учетных данных недоступно, можно попытаться выполнить клонирование с помощью SSH-подключения, выполненного через порт HTTPS. Большинство правил брандмауэра должны разрешать этот вариант, но прокси-серверы могут этому помешать.

> \[!WARNING]
>
> ```
>           **Пользователи GitHub Enterprise Server**: доступ к GitHub Enterprise Server по SSH через порт HTTPS в настоящее время не поддерживается.  
> ```

**Пользователи GitHub Enterprise Cloud с размещением данных —** доступ к данным GitHub Enterprise Cloud с размещением данных через SSH через порт HTTPS в настоящее время не поддерживается.

Чтобы проверить, возможно ли подключение по протоколу SSH через порт HTTPS, выполните следующую команду SSH:

```bash
$ ssh -T -p 443 git@ssh.github.com
# Hi USERNAME! You've successfully authenticated, but GitHub does not
# provide shell access.
```

Если она выполнена успешно, все в порядке. В противном случае вам может потребоваться [выполнить руководство по устранению неполадок](/ru/authentication/troubleshooting-ssh/error-permission-denied-publickey).

> \[!NOTE] Имя узла для порта 443 не `ssh.github.com`является`github.com`.

Теперь, чтобы клонировать репозиторий, можно выполнить следующую команду:

```shell
git clone ssh://git@ssh.github.com:443/YOUR-USERNAME/YOUR-REPOSITORY.git
```

## Включение SSH-подключений по протоколу HTTPS

Если вы можете выполнить SSH `git@ssh.github.com` через порт 443, можно переопределить параметры SSH, чтобы принудительно подключиться к GitHub.com для выполнения через этот сервер и порт.

Чтобы настроить это в файле конфигурации SSH, измените файл по пути `~/.ssh/config` и добавьте следующий раздел:

```text
Host github.com
    Hostname ssh.github.com
    Port 443
    User git
```

Это можно проверить, подключив еще раз к GitHub.com:

```bash
$ ssh -T git@github.com
# Hi USERNAME! You've successfully authenticated, but GitHub does not
# provide shell access.
```

## Обновление известных узлов

При первом взаимодействии с GitHub после переключения на порт 443 может появиться предупреждение о том, что узел не `known_hosts`найден или найден другим именем.

```bash
# The authenticity of host '[ssh.github.com]:443 ([140.82.112.36]:443)' can't be established.
# ED25519 key fingerprint is SHA256:+DiY3wvvV6TuJJhbpZisF/zLDA0zPMSvHdkr4UvCOqU.
# This host key is known by the following other names/addresses:
#     ~/.ssh/known_hosts:32: github.com
# Are you sure you want to continue connecting (yes/no/[fingerprint])?
```

Это безопасно ответить на этот вопрос, предполагая, что отпечаток SSH соответствует одному из опубликованных отпечатков пальцев GitHub. Список отпечатков пальцев см. в разделе [Отпечатки пальцев SSH-ключей GitHub](/ru/authentication/keeping-your-account-and-data-secure/githubs-ssh-key-fingerprints).