2010年2月2日 星期二

登入 SSH 時會延遲一下的解法

最近不知為啥 ssh 登入伺服器時, 出現 login 後會延遲一下才出現 passwd。還有兩台機器用 ssh 互連時, 會卡一陣子才登入 (我有用 public/private key)。由於我透過 ssh 來做 hg push / pull, 這個延遲問題對我來說還挺傷的, 每次和伺服器同步 Mercurial 資料就要頓一下。

執行  ssh -v 發現輸出這行後就停住了:
debug1: SSH2_MSG_SERVICE_ACCEPT received
google 後發現這篇提到這可能是 DNS 查不到 IP 的 domain name 造成的, 所以我試了一下:

  • ssh localhost # 立即登入
  • ssh MY_IP # 即使從 localhost 連也要等一會兒
  • host MY_IP  # 要等一會兒
所以我想應該是 DNS 的問題吧, 於是照該篇說的:
  1. sudo echo 'UseDNS no' >> /etc/ssh/sshd_config
  2. sudo /etc/init.d/ssh restart
問題就解決了。附帶一提, restart 後原本的 ssh connection 不會斷線, 可以安心地 restart。

沒有留言:

張貼留言

在 Fedora 下裝 id-utils

Fedora 似乎因為執行檔撞名,而沒有提供 id-utils 的套件 ,但這是使用 gj 的必要套件,只好自己編。從官網抓好 tarball ,解開來編譯 (./configure && make)就是了。 但編譯後會遇到錯誤: ./stdio.h:10...