[英]`ssh: connect to host ssh.dev.azure.com port 22: Connection timed out` error
[英]ssh: connect to host port 22: Connection timed out
在我的新工作計算機上安裝 git 后,生成我的 ssh 密鑰並將其添加到 gitlab 上,我正在嘗試克隆一個項目,但出現以下錯誤:
ssh: connect to host <private-domain>.com port 22: Connection timed out
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
我還嘗試了使用詳細選項測試 ssh 連接的命令,我得到了這個:
$ ssh -Tvvv appgit@<private_domain>.com
OpenSSH_8.8p1, OpenSSL 1.1.1m 14 Dec 2021
debug1: Reading configuration data /etc/ssh/ssh_config
debug3: expanded UserKnownHostsFile '~/.ssh/known_hosts' -> '/h/.ssh/known_hosts'
debug3: expanded UserKnownHostsFile '~/.ssh/known_hosts2' -> '/h/.ssh/known_hosts2'
debug2: resolving "<private_domain>.com" port 22
debug3: resolve_host: lookup <private_domain>.com:22
debug3: ssh_connect_direct: entering
debug1: Connecting to <private_domain>.com [<serv.ip.add.ress>] port 22.
debug3: set_sock_tos: set socket 4 IP_TOS 0x48
debug1: connect to address <serv.ip.add.ress> port 22: Connection timed out
ssh: connect to host <private_domain>.com port 22: Connection timed out
我知道域存在, ping <private-domain>.com
有效。 我認為這不是代理問題,因為我沒有連接 http 或 https。
這個答案中的任何修復都沒有改變任何東西。 (我在 Windows 上)
我注意到,如果我刪除~/.ssh
文件夾中的密鑰,我會收到同樣的錯誤,這讓我認為這是一個關鍵問題,而不是網絡問題。 我如何確定 git 使用的是正確的密鑰?
我試過ssh-keygen -lf ~/.ssh/id_rsa -E md5
來查看指紋是否與 gitlab 上的指紋匹配(確實如此),但這只會給我文件夾中的指紋,不一定是 git 使用的指紋。 Git-gui Help>Show SSH Key
確實正確顯示了我的密鑰。
仔細檢查:
遠程服務器至少在端口 22 上應答
curl -v telnet://<private_domain>.com:22
( connect to address <serv.ip.add.ress> port 22: Connection timed out
部分似乎表明遠程服務器沒有監聽,或者本地服務器阻止任何出口 SSH 連接)
appgit
的技術帳戶:通常使用的默認帳戶是git
。ssh -Tvvv git@<private_domain>.com
再次測試並確保您的密鑰使用默認命名方案(如~/.ssh/id_rsa[.pub]
)
如果您使用的是在自定義域上運行的 gitlab,您可以執行以下操作
Host gitlab
HostName mycustomgitlabdomain.com
User my-git-user
IdentityFile ~/.ssh/my_private_key
此外,檢查以下
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.