GitHub
bitbucket
GitLab

22 番ポートが通らない環境で GitHub / BitBucket / GitLab を SSH 経由で利用する方法

More than 1 year has passed since last update.

TL;DR

  • 22 番ポートが通信できない環境では、443 番ポートは通信できる場合が多い
  • GitHub 等の主要ホスティングサービスでは、443 番ポートでの SSH をサポートしている

概要

公衆 Wi-Fi やゲストネットワーク等、特定のネットワーク下では 22 番ポートでの通信が制限されていることがあります。このような環境では、SSH プロトコルでの Git 利用ができません。

実は、このような環境でも SSH プロトコルで Git が利用できるように、GitHub 等の主要ホスティングサービスでは 443 番ポートでの通信もサポートされています。

この記事では、Git ホスティングサービスごとの ~/.ssh/config に記載する SSH の設定をまとめました。

SSH 設定

利用する環境の ~/.ssh/config へ追記してください。

GitHub

Host github.com
    HostName        ssh.github.com
    User            git
    Port            443

BitBucket

Host bitbucket.org
    HostName        altssh.bitbucket.org
    User            git
    Port            443

GitLab

Host gitlab.com
    HostName        altssh.gitlab.com
    User            git
    Port            443

プロキシー環境下の場合

443 番ポートでの外向け通信が通らない環境の場合、HTTP プロキシを経由することで通信できる場合があります。

その場合は、下記の設定も合わせて ~/.ssh/config へ記載してください。

Host *
    ProxyCommand connect -H proxy.example.co.jp:8080 %h %p

まとめ

22 番ポートでの通信が制限された環境でも、快適な Git ライフをお楽しみください。