让linux的SSH客户端也能记住服务器的密码
From: http://blog.chinaunix.net/uid-17240700-id-2813900.html
CU上一位網(wǎng)友的問題如下:
??????? 以前一直用windows,最近工作原因換Ubuntu了,但是windows下的SSH客戶端(我用的是Netsarang公司的 Xshell,Xftp,Xmanager),linux沒有相應(yīng)版本,嘗試了下putty,覺得很不好用,最重要的是要保存10多個(gè)服務(wù)器的密碼。說明一下,密碼是系統(tǒng)產(chǎn)生的隨機(jī)長(zhǎng)串,無法記憶的,公司的運(yùn)維統(tǒng)一管理的,所以別跟我說什么更換成key文件之類的,我就要找個(gè)Linux下可以保存密碼的 SSH客戶端,命令行還是圖形化界面都無所謂,謝謝大家!
??????? 我第一次看到問題時(shí)還在納悶,Linux自帶ssh命令,還需要ssh客戶端干什?后來一看,這位朋友是想記住服務(wù)器的密碼。
??????? 懶人!!
??????? 懶人有懶人的福,解決方案還是有的。
??????? 我的解決方案如下:
??????? 1. 先安裝sshpass
??????? 下載:wget http://nchc.dl.sourceforge.net/sourceforge/sshpass/sshpass-1.04.tar.gz
??????? 安裝:
??????? tar -zxvf sshpass-1.04.tar.gz
??????? cd sshpass-1.04
??????? ./configure
??????? make && make install
?????? ?
??????? 2. 再寫一個(gè)管理sshpass的BASH腳本.
??????? 腳本文件名為:/opt/program/bash/test.sh
??????? 腳本內(nèi)容如下:
??????????????? #!/bin/bash
??????????????? cat <<MENU
??????????????? ??????? 1) localhost
??????????????? ??????? 2) 192.168.100.100
??????????????? ??????? 3) 加上你的主機(jī)
??????????????? MENU
??????????????? echo -n "Your choose:"
??????????????? read host
??????????????? case "$host" in
??????????????? ??????? 1)
??????????????? ??????????????? exec /usr/local/bin/sshpass -p 123456(這是我機(jī)器的密碼) ssh huabo@localhost
??????????????? ??????????????? ;;
??????????????? ??????? 2)
??????????????? ??????????????? exec /usr/local/bin/sshpass -p 123456 ssh huabo@192.168.100.100
??????????????? ??????????????? ;;
??????????????????????? 3)
??????????????? ??????????????? 你的登錄命令
??????????????? ??????????????? ;;
??????? ??????????????? *)
??????????????? ??????????????? echo "Error, No host"
??????????????? ??????????????? ;;
??????????????? esac
??????? 3.測(cè)試一下
??????????????? [root@server bash]# ./test.sh
??????????????? ??????? 1) localhost
??????????????? ??????? 2) 192.168.100.100
??????????????? Your choose:2
??????????????? Last login: Mon Jun 29 02:34:49 2009 from 192.168.100.100
??????????????? [huabo@server ~]$ ls
??????????????? opera.exe? zabbix-1.6.4? zabbix-1.6.4.tar.gz
??????????????? [huabo@server ~]$
??????? 測(cè)試成功!你只需把密碼寫到腳本里面,執(zhí)行此腳本,選擇相應(yīng)的主機(jī)就行了.
??????? 此腳本還可優(yōu)化一下,搞成:test.sh localhost這種形式更方便。
??????? 此外還要注意一點(diǎn),你需要先手動(dòng)登錄一次,因?yàn)榈谝淮蔚卿洉r(shí)會(huì)提示:
??????? ??????? Are you sure you want to continue connecting (yes/no)?
??????? (腳本沒考慮這點(diǎn))
???????
??????? PS:你自己把密碼存腳本里的哈,出了問題不要怪我.
??????? (先前的expect腳本不對(duì),這是第二版,放心用吧。非常感謝seaquester,推薦一下他的BASH腳本http://blog.chinaunix.net/u2/73823/showart.php?id=1982819)
總結(jié)
以上是生活随笔為你收集整理的让linux的SSH客户端也能记住服务器的密码的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Tiny之Web工程构建
- 下一篇: Linux-Ubuntu 启用root账