新聞中心
大部分的結(jié)對編程和遠程辦公的人對SSH和Tmux的組合并不陌生,網(wǎng)上也有很多好的文章,這里我來為大家介紹一個簡單的解決方案。

創(chuàng)建一個賬戶別名(Alias)
***步是為你的主要用戶賬戶創(chuàng)建一個別名。這一步是可選的,選了這一步你就不必去了解每個開發(fā)者的實際用戶名了。
從系統(tǒng)偏好設(shè)置中的“用戶&群組”面板中,右擊你的用戶賬戶,然后點擊高級選項。
從高級選項面板中,添加一個別名來讓你的小伙伴們連接你的電腦時用。
配置SSH
接下來我們從系統(tǒng)偏好設(shè)置中的共享面板中打開遠程登錄。
然后更新我們的SSH登錄設(shè)置來關(guān)掉密碼驗證,只允許公共密鑰(public-key)驗證。
- # /etc/sshd_config
- PasswordAuthentication no
- ...
- ChallengeResponseAuthentication no
注意:為了時上面的設(shè)置生效,你需要重啟sshd。在Mac上,只需要在系統(tǒng)偏好設(shè)置中的共享面板中重置一下遠程登錄的選中狀態(tài)就可以了。
設(shè)置遠程用戶
因為我們將SSH配置成了只允許公共密鑰驗證,我們需要將小伙伴們的公共密鑰添加到驗證密鑰(authorized_keys)文件中。
- > cat pair_rsa.pub >> ~/.ssh/authorized_keys
接下來我們需要編輯這個文件來保證任何連接我們電腦的用戶都會被自動添加到我們的Tmux會話(session)中。
- # ~/.ssh/authorized_keys
- command="/usr/local/bin/tmux attach -t pair" ABCDEFGHIJKLMNOPQRSTUVXYZ pair@user.com
這樣一來,任何通過SSH連接的人都會被添加到以pair為別名的tmux繪畫中。
創(chuàng)建pair會話
1.創(chuàng)建一個以pair命名的tmux會話。
- > tmux new-session -s pair
2.創(chuàng)建你電腦中的pair SSH
- > ssh pair@hostname
3.優(yōu)點
這樣設(shè)置完,只有你的電腦中存在一個名為pair的tmux會話時別人才可以連接到你的電腦。你關(guān)閉名為pair的tmux會話時已經(jīng)存在的連接會自動斷開。另一個好處是當(dāng)你的私人密鑰被使用時你會被提示輸入密碼,這樣可以提防那些居心不良的小伙伴。
福利
為了方便完成以上的步驟,我寫了一個shell腳本。不過你需要將”GitHub-auth”改為你的pair對應(yīng)在github上的用戶名。
免責(zé)聲明:代碼中用到了sudo,自己注意
- #!/bin/sh
- # create an account alias
- sudo dscl . -append /Users/$USER RecordName Pair pair
- # configure sshd to only allow public-key authentication
- sudo sed -E -i.bak 's/^#?(PasswordAuthentication|ChallengeResponseAuthentication).*$/\1 no/' /etc/sshd_config
- # add pair user public key(s)
- touch ~/.ssh/authorized_keys
- gh-auth add --users githubuser --command="$( which tmux ) attach -t pair"
原文鏈接:http://www.collectiveidea.com/blog/archives/2014/02/18/a-simple-pair-programming-setup-with-ssh-and-tmux/
譯文鏈接:http://blog.jobbole.com/60545/
本文名稱:結(jié)對編程利器:SSH和Tmux
URL地址:http://www.5511xx.com/article/dhiejph.html


咨詢
建站咨詢
