エラーメッセージ
Macで「ssh: connect to host port 22: Operation timed out」と表示される
sshがポート22に接続要求を送りましたが、応答がありませんでした。Macではシステムのエラーテキストが「Operation timed out」になります。Linuxでは「Connection timed out」です。
症状
- ターミナルに
ssh: connect to host github.com port 22: Operation timed outと表示される。 - Gitには続けて
fatal: Could not read from remote repository.と表示されます。 - 自宅のネットワークなど、別のネットワークではSSHが使えます。
考えられる原因
- ネットワークがポート22をブロックしている。会社、学校、ホテル、公共のネットワークはSSHをブロックしていることがよくあります。GitHubも、ファイアウォールがSSH接続を拒否することがあると説明しています。
- IPv6の経路が壊れている。MacはまずIPv6を試しますが、IPv6が機能していません。
- VPNまたはプロキシ。SSHを通さないVPNを経由して通信しています。
- サーバが停止しているか、フィルタされている。サーバがポート22で応答しません。
確認方法
TCPポートだけを、タイムアウト5秒でテストします。
nc -vz -G 5 github.com 22IPv4のみで試します。
ssh -4 -T git@github.comGitHubの場合は、ポート443でSSHをテストします。
ssh -T -p 443 git@ssh.github.com詳細を表示して接続します。最後の数行で、どこで止まっているかがわかります。
ssh -vT git@github.com
解決方法
ポート443でつながるなら、GitHubにはそれを使います。
~/.ssh/configに次のブロックを追加します。Host github.com Hostname ssh.github.com Port 443 User gitIPv4でしかつながらない場合は、
~/.ssh/configのそのホストのブロックにAddressFamily inetを追加します。テストとして、代わりにリポジトリのHTTPS URLを使います。
自分のサーバの場合は、ネットワーク管理者にそのSSHポートを許可してもらいます。
Kilobatを使う場合
Kilobatの接続ドクターは、ネットワーク、プロキシ、DNS、ルール、IPv4、IPv6、TLS、サーバと、ホストへの接続を層ごとにテストし、失敗した層を示します。
kilobat why github.comこれらのKilobatのチェックは無料です。AIエージェントはMCPを通じて
diagnose_connectionとdiagnose_networkで実行します。1つのサイトやAPIに接続できない原因を見つけるを参照してください。
よくある質問
Macで「Connection timed out」ではなく「Operation timed out」と表示されるのはなぜですか?
sshはエラーに対応するシステムのテキストを表示します。macOSでは、ETIMEDOUTのテキストが「Operation timed out」です。
出典
- GitHub Docs:Using SSH over the HTTPS port
- ssh(1)、ssh_config(5)、nc(1)、macOS 27.2に付属のmanページ
- intro(2)、ETIMEDOUT、macOS 27.2に付属のmanページ
出典は2026年10月29日に確認しました。manページはmacOSに付属のものです。「ターミナル」でman <name>を実行すると開けます。