このようなことが最近になって起こり始めました。 SSHを使用してgithubに接続できませんローカルネットワーク上の他のコンピュータに接続でき、他のコンピュータを使用してデスクトップに失敗したのと同じイーサネット接続を使用してgithubに接続できます。接続タイムアウトを防ぎ、githubに正常に接続する方法は?
わかりやすくするために編集:SSH経由で接続できる他のパブリックサービスがわからないため、SSHターゲットとしてgithubを使用しています。私は拒否されたくないので、githubは私の唯一の選択です。問題の根本的な原因は、どのポートでもSSHサービスにアクセスできないことです。ssh -Tvvv
IPアドレス(localhostを除く)に関係なく、同じ出力を取得します。
診断:
$ ssh -Tvvv github.com
OpenSSH_8.8p1, OpenSSL 1.1.1l 24 Aug 2021
debug1: Reading configuration data /home/dan/.ssh/config
debug1: Reading configuration data /etc/ssh/ssh_config
debug3: expanded UserKnownHostsFile '~/.ssh/known_hosts' -> '/home/dan/.ssh/known_hosts'
debug3: expanded UserKnownHostsFile '~/.ssh/known_hosts2' -> '/home/dan/.ssh/known_hosts2'
debug2: resolving "github.com" port 22
debug3: resolve_host: lookup github.com:22
debug3: ssh_connect_direct: entering
debug1: Connecting to github.com [140.82.112.4] port 22.
debug3: set_sock_tos: set socket 3 IP_TOS 0x48
debug1: connect to address 140.82.112.4 port 22: Connection timed out
ssh: connect to host github.com port 22: Connection timed out
$ nmap -p 22 github.com
Starting Nmap 7.92 ( https://nmap.org ) at 2021-12-26 21:54 EST
Nmap scan report for github.com (140.82.112.4)
Host is up (0.015s latency).
rDNS record for 140.82.112.4: lb-140-82-112-4-iad.github.com
PORT STATE SERVICE
22/tcp filtered ssh
Nmap done: 1 IP address (1 host up) scanned in 0.26 seconds
$ screenfetch -n
dan@dan-ms7d09
OS: Manjaro 21.2.0 Qonos
Kernel: x86_64 Linux 5.10.84-1-MANJARO
Uptime: 17h 58m
Packages: 1499
Shell: zsh 5.8
Resolution: 5760x1080
DE: GNOME
WM: i3
GTK Theme: Adwaita [GTK2/3]
Icon Theme: Adwaita
Font: Cantarell 11
Disk: 479G / 955G (53%)
CPU: Intel Core i9-10850K @ 20x 5.2GHz [35.0°C]
GPU: NVIDIA GeForce RTX 2060
RAM: 9225MiB / 32002MiB
答え1
この問題を解決するには、いくつかの手順があります。まず、名前解決が正しく完了したことを確認する必要があります。これは私にとって大丈夫に見え、140.82.112.4
GitHubのIPアドレスの1つなので、名前解決は正しいです。
しかし、Githubのポート22の状態はfiltered
問題です。 nmapによるとポートスキャンの基本:
パケットのフィルタリングによりプローブがポートに到達しないため、Nmap はポートが開いているかどうかを確認できません。フィルタリングは、専用ファイアウォールデバイス、ルータルール、またはホストベースのファイアウォールソフトウェアで行うことができます。これらのポートは情報をほとんど提供しないため、攻撃者に失望感を与えます。場合によっては、タイプ3コード13(宛先到達不可:通信管理拒否)などのICMPエラーメッセージで応答しますが、フィルタが応答せずに単にプローブを削除する方が一般的です。これにより、フィルタリングではなくネットワーク輻輳によってプローブが削除された場合、Nmapは何度も再試行します。これによりスキャン速度が大幅に遅くなります。
したがって、問題を特定するためのいくつかの場所があります。
まず、コンピュータにこのIPアドレスとポート番号への接続をブロックするファイアウォールルールがないことを確認する必要があります。
次に、そのアドレスへの接続を妨げる可能性があるファイアウォールデバイスがローカルネットワークにあることを確認してください。
3番目の可能性は、過度の試みや他の同様の理由でGithubサーバーからあなたのIPアドレスを禁止した可能性です。プロキシまたはある種のVPNを使用してインターネットに接続すると、これが発生する可能性があります。 VPNとプロキシツールの共有IPアドレスは、しばしばこれらの問題を引き起こします。私の提案は、接続またはIPアドレスを何とか変更することです。 ADSL接続を使用している場合、ADSLモデムを再起動すると新しいIPアドレスが提供されることがあります。 VPNやどのようなプロキシも使用しない場合は、VPNを試してみて、違いがあるかどうかを確認してください。
役に立つことを願って幸運を祈ります。
答え2
私はしばらくこの問題で苦労しましたが、偶然にGitHubサポートで次のヘルプページを見つけました。
https://docs.github.com/en/authentication/troubleshooting-ssh/using-ssh-over-the-https-port
私の仕事には、GitHubへの定期的なGit SSHアクセスを「ほぼ」許可するファイアウォール/ポート保護の正しい魔法の組み合わせがあることがわかりました。つまり、「時々」動作しますが、信頼できません。 ;-雨
私のファイルにSSH Over HTTPSを使用するように注文があったので、$HOME/.ssh/config
突然GitHubのSSHキーを介してコマンドラインから私のGitHubリポジトリにアクセスできました。
Host github.com
User git
Hostname ssh.github.com
Port 443
PreferredAuthentications publickey
IdentityFile /home/XXX/.ssh/github_id_rsa
TCPKeepAlive yes # not sure if truly needed
IdentitiesOnly yes # not sure if truly needed
答え3
FWIW MacOS Monterey 12.7.2 でこの問題が発生しました。
SSHキーを再生成し(これが重要なビットかどうかわからない)、次のよう
~/.ssh/config
に変更しました。
Host github.com
AddKeysToAgent yes
IdentityFile ~/.ssh/id_ed25519
UseKeychain no