google-code-prettify

2013年2月23日 星期六

Git Server (Win 7 64bit) 安裝SSH

1.在os系統變數的「Path」變數中,加入Git安裝路徑下的bin和libexec\git-core兩個目錄,ex:C:\Git\bin 和 C:\Git\libexec\git-core




2.安裝Copssh(網址:https://www.itefix.no/i2/copssh ),我使用預設帳號「SvcCOPSSH」,這會在OS建立一個「SvcCOPSSH」帳號。



3. 安裝過程中,會跳出訊息,告訴你可能安裝完成後,要使用他的「Activate a user」工具,讓自己指定的帳號可以使用SSH連線



4. 在「Activate a user」工具指定OS已經存在的帳號來使用SSH的連線,其他設定我使用預設值,按Next之後,過程中會要輸入Passphrase



如果打了一個os沒有設定的帳號,會出現錯誤訊息,看起來這套軟體的帳號是和os的使用者帳號綁在一起的。



5. 「Activate a user」完成後,在Copssh的安裝目錄下的home目錄裡會新增以剛剛指定的帳號名稱為目錄名的使用者目錄,並且在裡面有自動產生的Public key和 Private key,要把Private Key給Client端那位使用者



6.在Client端使用TortoiseGit安裝進來的「Puttygen (PuTTY  Key Generator)」工具,點選「Load」,將前一步驟Server產生的Private Key (ex: ryanchen.key)選入,隨後跳出Enter Passphrase for key視窗,輸入在Server端使用「Activate a user」指定帳號的過程中輸入的Passphrase 。



6.1 最後按「Save private key」儲存server端給的Private key專換成Putty運行的Private key。




7.設定防火牆,開SSH的連接埠(Port),從控制台的防火牆畫面點擊「進階設定」,開啟以下視窗,點「輸入規則」之後到右邊點「新增規則」,規則類型選「連接埠」,套用到TCP、特定本機連接埠指定「22」,這是SSH預設的port,之後照著點下一步,完成設定。




8. 測試過如果Repository是在C槽,使用SSH連線都可以正常Clone,但是在D槽就不行了,試了使用「03. Start a Unix BASH Shell」工具在Copssh安裝路徑下(C:\Program Files (x86)\ICW)建立D槽Repos的上兩層目錄的symbolic link,還是無法連到Repos,還不知道要改那裏的設定才可以連D槽的Repos,會的高手教一下吧!

9. SSH連進來C槽就是「/」目錄,如果「C:\TestRepos」,SSH連線URL為「ssh://你的帳號@Server位址/TestRepos」

10. ssh帳號與os帳號綁在一起。要用的帳號必須在os建立帳號。


困惑點:
使用Copssh的「03. Start a Unix BASH Shell」工具或是Putty走ssh登入後,「/」路徑實際為Copssh安裝的目錄,但是使用TortoiseGit走ssh的url設為「ssh://ryanchen@Server位址/TestRepos」,TestRepos實際目錄在Windows的 C:\ 下,而不是在「Copssh」的安裝目錄下,我並沒有特別設定TestRepos,不知道為何Copssh和TortoiseGit的「/」為什麼會不一樣?如果能弄清原因,也許就知道為什麼讀不到D槽了。

沒有留言:

張貼留言