Windows-Server-2008

Windows Server 2008 上的 Cygwin、ssh 和 git

  • April 19, 2010

我正在嘗試在現有的 Windows 2008 (R2) 伺服器上設置一個 git 儲存庫。我已經成功安裝了 Cygwin 並在包中添加了 git 和 ssh,並且一切正常(感謝 Mark的文章)。

我可以 ssh 到伺服器上的 localhost,我可以在伺服器上本地進行 git 操作。但是,當我嘗試從客戶端執行任一操作時,都會收到“埠 22,錯誤文件號”錯誤。詳細的 SSH 輸出僅限於此:

OpenSSH_4.6p1, OpenSSL 0.9.8e 23 Feb 2007
debug1: Connecting to {myserver} [{myserver}] port 22.
debug1: connect to address {myserver} port 22: Attempt to connect timed out without establishing
       a connection
ssh: connect to host {myserver} port 22: Bad file number

Google告訴我,這意味著我通常被防火牆阻止。因此,仔細檢查伺服器上的防火牆設置,規則是否允許埠 22 流量。我什至嘗試過短暫關閉防火牆,但行為沒有改變。我可以很好地從該客戶端 ssh 到其他伺服器。託管公司發誓沒有其他防火牆阻止該伺服器在埠 22(或任何其他埠,他們聲稱,但我覺得這很難相信)。我對他們有另一張麻煩票,以防第一個支持人員充滿了它,但同時我想看看是否有人能想到其他可能的東西。

謝謝,保羅

好吧,事實證明我在託管公司與之交談的第一個人是不正確的。實際上,問題在於他們預設將埠 22 阻止到具有 Windows 伺服器的網路部分。我已經申請了該政策的例外。

保羅

2008 上的 Windows 防火牆具有三種不同的配置文件:私有、公共和域。不確定您的伺服器是否在域上,但我會在防火牆中的私有、域和公共配置文件中添加一個例外——如果你還沒有這樣做的話。

引用自:https://serverfault.com/questions/133577