都是用 SecureCRT 進行 ssh 登錄,有的版本每次都要輸入密碼,有的就不用。
sshd 連接注意:
1 默認啓用公鑰認證及密碼認證(Secure Shell Client 登錄不了,用 SecureCRT 5.0 沒問題)
2 不允許 root 登錄(必須先建立一個用戶,而且是 wheel 組的,登錄後再 su 到 root)
在線更改 SSHD 默認端口:
vi /etc/ssh/sshd_config
/etc/rc.d/sshd restart
做這一步的目的,就是把默認的 22 端口改成其他的,可以減少被***的可能性。
使用 SSH PUBLIC KEY
假設用戶名是 leakon
方法一(由 FreeBSD 生成密鑰對)
1 在FreeBSD中執行
ssh-keygen -t dsa
可得到
/home/leakon/.ssh/id_dsa
/home/leakon/.ssh/id_dsa.pub
2 可以用 WinSCP 下載這個兩個文件到本地,保存到
C:\Documents and Settings\leakon\Application Data\VanDyke\
這是 SecureCRT 在 Windows 的 leakon 用戶的程序數據文件夾中生成的目錄
3 打開會話選項,在 分類 中選擇 SSH2,在右邊的 身份驗證 中選擇 公鑰(PublicKey),然後點擊旁邊的 屬性(Properites),選擇 使用會話公鑰設置(Use session public key setting),在 使用身份文件(Use identify file) 的輸入框中,選擇剛纔下載回來的 id_dsa,注意,id_dsa 和 id_dsa.pub 要保存在一起(兩個文件取名任意,但必須符合 somekey 和 somekey.pub)
4 按照 /etc/ssh/sshd_config 中指定的公鑰文件名 AuthorizedKeysFile .ssh/authorized_keys,修改本地公鑰文件名,在FreeBSD中執行
cd /home/leakon/.ssh/
mv id_dsa.pub authorized_keys
至此,方法一大功告成,重新用 SecureCRT 連接一下試試,直接就登錄好了吧!
方法二(由SecureCRT生成密鑰對)
1 設置好用戶名後,用剛纔方法一的第 3 步,打開那個對話框,這個時候,要單擊 創建身份文件(Create Identify File),然後下一步,選擇 DSA,生成 Identity 和 Identity.pub 兩個文件
2 把 Identity.pub 上傳到 FreeBSD 的 /home/leakon/.ssh 目錄下
3 在 FreeBSD 中執行
ssh-keygen -X -f Identity.pub > authorized_keys
取消sshd密碼認證方式
vi /etc/ssh/sshd_config
PasswordAuthentication no
/etc/rc.d/sshd restart