A. secureCRT中如何用 vbscript腳本實現SSH自動登錄
SSH的英文全稱是SecureShell傳統的網路服務程序,如:ftp和telnet在本質上都是不安全的,因為它們在網路上用明文傳送口令和數據,別有用心的人非常容易就可以截獲這些口令和數據。而通過使用SSH客戶端與伺服器端通訊時,用戶名及口令均進行了加密,有效防止了對口令的竊聽。同時通過SSH的數據傳輸是經過壓縮的,所以可以提高數據的傳輸速度,既然如此我們為什麼不使用它呢。SSH是由客戶端和服務端的軟體組成的,有兩個不兼容的版本分別是:1.x和2.x。至於具體如何安裝伺服器端,普通用戶就不需要關心了。一、安裝1、安裝首先要下載SecureCRT,目前最新的版本為6.1.3(截止到2008年2月,其破解版本TBE或AGAiN),我們以5.53版為例進行介紹,下載安裝文件scrt553.exe和破解文件keygen.exe。安裝過程很簡單,運行scrt553.exe,只要「下一步」即可,安裝過程中可以看到SecureCRT支持以下協議:SecureCRT使用說明-腳本之家安裝完成後,第一次啟動SecureCRT會有如下提示:SecureCRT使用說明-腳本之家用戶需要指定一個目錄,用來存放SecureCRT的配置信息。此目錄默認為C:\DocumentsandSettings\用戶名\ApplicationData\VanDyke\Config,如果是升級SecureCRT需要保持此文件夾與舊版本一致,如果重裝系統,一定要備份此目錄。如果需要更改,啟動SecureCRT後點擊Options=>Globalptions=>General修改Configurationfolder即可。2、破解未破解版本,只有30天的使用期。關閉SecureCRT,將keygen.exe拷貝到安裝目錄C:\ProgramFiles\SecureCRT中,運行它,填寫Name,Company後點擊Generate得到Serial,Date,LicenseKey信息,點擊Patch按鈕,破解並備份SecureCRT主程序。運行SecureCRT,點擊Help=>EnterLicenseData…,填寫從keygen得到的注冊信息即可。一般AGAiN破解版本期限一年。二、基本設置修改設置為了SecureCRT用起來更方便,需要做一些設置,需要修改的有如下幾處:1、退出主機自動關閉窗口Options=>Globalptions=>General=>DefaultSession=>EditDefaultSettingsSecureCRT使用說明-腳本之家Terminal中將Closeondisconnect選上,當用戶從主機中退出後可以自動關閉當前連接的窗口。SecureCRT使用說明-腳本之家2、修改默認卷屏行數當你做一個操作,屏幕輸出有上百行,當需要將屏幕回翻時,這個設置會有很大幫助,默認為500行,可以改為10000行,不用擔心找不到了。Terminal=>Emulation=>Scrollback修改為10000。SecureCRT使用說明-腳本之家3、修改SFTP默認下載路徑(可選):對於使用SSH的連接中,可以使用SFTP下載文件,在這里可以設置文件的下載目錄(默認為下載到「我的文檔」中)Connection=>SSH2=>SFTPTab=>Initialdirectories=>LocaldirectorySecureCRT使用說明-腳本之家4、修改Xmodem/Zmodem上傳下載路徑(可選)SecureCRT可以使用Xmodem/Zmodem方便的上傳和下載文件。在Sessionoptions=>Xmodem/Zmodem=>Directories中設置5、拷貝與粘貼的設置通過滑鼠操作即可拷貝或粘貼所需內容是一個非常方便的設置Options=>Globalptions=>Terminal=>Mouse選中Copyonselect和Pasteonmiddlebutton這樣設置後,只要用滑鼠選中所需內容,則將內容拷貝到剪切板中,點擊滑鼠中鍵即可粘貼內容。SecureCRT使用說明-腳本之家另外可以設置使用Windows下的拷貝粘貼快捷鍵,Options=>Globalptions=>General=>DefaultSession=>EditDefaultSettings=>Terminal=>Mappedkeys=>使用說明-腳本之家6、Tabs設置從Secure5.0以後,增加了Tabs(標簽)選項,多個連接可以在同一個窗口下打開,類似IE7.0的風格。將Double-click選項修改為CloseTab,雙擊標簽可關閉連接窗口。SecureCRT使用說明-腳本之家三、界面介紹1、菜單1)File文件Connect連接,打開一個連接或者編輯已有的連接,創建新連接。QuickConnect快速連接,快速連接對話框,快速連接主機的最便捷方式。ConnectinTab在Tab中打開一個新的會話窗口。CloneSession克隆當前會話窗口。ConnectSFTPTab打開SFTP窗口,對於SSH連接,此選項可用。在此會話窗口中可使用SFTP命令傳輸文件。Reconnect重新連接Disconnect中斷當前會話窗口的連接LogSession把當前窗口的會話記錄到log文件中。RawLogSession將更詳細的會話記錄到log文件中,包括伺服器更詳細的響應信息。TraceOptions在log文件中記錄協議會話信息選項。(包括客戶端與主機互相連接時的一些信息內容)2)Edit編輯拷貝粘貼等3)View視圖顯示各種工具條4)Options選項包括全局選項和Session選項5)Transfer傳遞文件使用Xmodem/Zmodem上傳下載文件6)Script.腳本運行一個腳本文件,或記錄一個新的腳本。(類似Word中的宏功能)7)Tools工具鍵盤映射編輯,密鑰生成工具等8)Help幫助2、對話框和按鈕點擊File=>Connect可出現Connect對話框。從左至右按鈕依次為:連接(激活選中的連接條目);快速連接(快捷連接新的主機);新建連接(在對話框中新增一個連接條目);剪切;復制;粘貼;刪除(對話框中的條目);新建文件夾,屬性(顯示選中條目的屬性),創建條目的桌面快捷方式,幫助。SecureCRT使用說明-腳本之家Connect對話框下方有兩個選項:Showdialogonstart(啟動SecureCRT時顯示Connect對話框);Openinatab(以新標簽卡的形式打開一個會話),選中此選項,新的會話窗口如下圖所示:在Linux主機下,可以使用Xmodem/Zmodem方便的上傳和下載文件基本命令:sz下載文件到本地;rz上傳本地文件到主機。5、其它技巧1)使用腳本來進行重復性工作可以像word的宏一樣,把你的重復性操作記錄為一個腳本文件Script.=>StartRecordingScript,開始記錄Script.=>StopRecordingScript,停止記錄,Saveas…保存成script文件。下次調用時Script.=>Run=>SelectScript.torun…SecureCRT使用說明-腳本之家2)使用Mapkey來進行重復輸入工作可以設置為全局選項(對所有連接都有效),也可以只設置為Session選項,如下圖Options=>Sessionptions=>Terminal=>Mappedkeys=>Mapakey,出現MapKey對話框SecureCRT使用說明-腳本之家SecureCRT使用說明-腳本之家例如,單擊F12鍵,在SendString輸入你要經常重復使用的命令,okSecureCRT使用說明-腳本之家則下次在會話窗口中點擊F12鍵將直接輸入df–m3)自動登錄以登錄一個Telnet的主機為例,Sessionptions=>Connection=>LogonScripts=>Automatelogon,在login後的send中輸入用戶名,在Password後的send中輸入密碼。則可實現自動登錄。SecureCRT使用說明-腳本之家用SecureCRT來上傳和下載數據SecureCRT可以使用linux下的zmodem協議來快速的傳送文件,只要設置一下上傳和下載的默認目錄就行options-->sessionoptions-->filetransfer下可以設置上傳和下載的目錄剩下的只要在用SecureCRT登陸linux終端的時候:發送文件到客戶端:szfilenamezmodem接收可以自行啟動.從客戶端上傳文件到linux服務端:只要服務端執行,rz然後在SecureCRT里選文件發送,協議zmodem。
B. 如何用shell腳本實現SSH的遠程登錄
要帶爛者拆跳過輸入密碼的環節么?
如果你想每次鏈接的時候自己手動輸入密碼,那就參考這樣寫
#!/bin/bash
ip=$1
ssh 用戶名@ip地址 -p埠號
保存後給執行許可權,運行時在腳本後面直接跟一飢棗個IP地址
如果你想每次鏈接的嫌臘時候自動跳過輸入密碼的環境,那就再網路下「ssh建立信任關系」,腳本依然還是這個腳本,只是登陸的時候做了互相信任的話,就不需要密碼了
C. SSH 技巧
SSH 是 Linux 下進行遠程連接的基本工具。
一般情況下我們可以通過 ssh [email protected] 登錄遠程伺服器,如果要管理多台伺服器,這樣太長了。
可以在家目錄的 .ssh 中新建config文件,設置別名。
比如我有一台個人的雲主機。IP是120.163.163.163,埠是4722(一般都是22,這里為了安全我改為了其他),登錄用戶名是ubuntu,登錄方式是證書登錄。
這樣執行 ssh cloud 或 ssh alias 就無密碼登錄雲主機了
ssh cloud "df -h"
ssh cloud "df -h; ps;"
比如 sudo 開頭的可能需要用戶輸入密碼,需要 TTY。
添加 -t 參數後,ssh 會保持登汪喊差錄狀態,直到你退出需要交互的命令。
再舉個實際例子:
ssh -t flux sudo -u fueladminprd ssh 192.168.1.100
這句話實際執行了兩步:
可以用單引號或雙引號開頭,然後寫上幾行命令,最後再用相同的困皮引號來結束。
> 開頭的就是輸入下一行命令
如果需要在命令中使用引號滲和,可以混合使用單雙引號。
在遠程伺服器執行 ls node ,本地定義變數a,傳入到命令中。達到一樣的效果。
在下圖的命令中為 bash 指定了 -c 參數
本地創建demo.sh,內容是: ls node
運行 ssh cloud < demo.sh
通過重定向 stdin,本地的腳本 demo.sh 在遠程伺服器上被執行。
修改 demo.sh 內容為:
執行 ssh cloud 'bash -s'< demo.sh aa bb cc
bash 就是 $0 第一個參數。
http://www.openssh.com/
https://www.cnblogs.com/sparkdev/p/6842805.html
https://www.zcfy.cc/article/top-20-openssh-server-best-security-practices
D. 寫一個腳本解決安裝ssh服務,設置ssh的埠為22222,並允許root登陸
題主你好,
在centos7下, 安裝ssh服務並將監聽端 口改為22222,且允許root用戶登錄的腳本如下:
說明: 題主最好在本地測試, 如果是遠端的機器要保證在即使ssh登錄不上去的情況下也能連接上才可進行上面腳本的運行
*.sed 後面要加一個-i參數,否則配置文件不會被修改
------------------
另外題主說的驗證腳本, 題主想要怎麼寫, 是本地登錄驗證還是遠程登錄驗證?
歡迎追問
E. 腳本中ssh自動登錄到遠程伺服器。但登錄後就腳本的執行就中斷了,等到退出登錄後又繼續執行。
man ssh
[user@]hostname [command]
ssh -p port user@hostname "遠程命令好唯"脊襪桐櫻坦
F. shell實現SSH自動登陸
[TOC]
註:需要執行許可權,可通過 sudo chmod +x ./file_name.sh 添加
sh file_name.sh 就是指定了腳本解釋器 /bin/sh 來解釋執行腳本;常見的腳本解釋器還有: /bin/bash 等,我們可以使用 ls -l /讓衡帆bin/*sh 命令來查看當前可用的腳本解釋器;
這種方式不會像前兩種方式一樣fork一個子進程去執行腳本,而是使用當前shell環境執行。我們不必重啟shell或者重新登錄系統,就能使當前的更改生效。一般用於 .bashrc或者.bash_profile被修改的時候,
定義:我們寫一個shell腳本時,總是習慣在最前面加上一行 #!/binbash ,它就是腳本的 shebang 。
作用:它指示了此腳本運行時的解釋器,使用文件名直接執行shell腳本時,必須帶上shebang。
使用:可以在shebang後面直接附加選項,執行時我們默認使用選項執行;
如 test.sh 的 shebang 為 #!/bin/sh -x ,那我們執行腳本時:
./test.sh hello 相當於: bin/sh -x ./test.sh hello ;
注意:在指定腳本解釋器來執行腳本時,shebang會被指定的腳本解釋器覆蓋。
expect是一個能實現自動和互動式任務的解釋器,它也能解釋常見的shell語法命令,其特色在以下幾個命令:
spawn command 命令會fork一個子進程去執行command命令,然後在此攔握子進程中執行後面的命令;
它的一般用法為 expect "string" ,即期望獲取到string字元串,可在在string字元串里使用 * 等通配符; string 與命令行返回的信息匹配後,expect會立刻向下執行腳本;
set timeout n 命令將expect命令的等待超時時間設置為n秒,在n秒內還沒有獲取到其期待的命令,expect 為false,腳本會繼續向下執行;
一般用法為 send "string\r" , 向命令行輸入一條信息, \r 表示輸入回車;
創建坦雹腳本 touch aliyun_login_shell.sh ,內容如下:
執行 sudo chmod +x ./aliyun_login_shell.sh 命令給shell腳本添加執行許可權;
運行 ./aliyun_login_shell.sh 命令,一鍵登陸成功!
優化一下:
腳本完成了,可是還是有些小瑕疵:
這里我們想到了linux的alias命令:
執行命令 vim ~./bash_profile ,在文件內部添加:
再使用 . ~./bash_profile 或 source ~./bash_profile
從此,我們無論在哪個目錄,只要輸入 alias_name 命令,回車,真正的一鍵登陸!
參考:
https://www.cnblogs.com/qiumingcheng/p/11544569.html
G. 本地shell腳本中ssh到遠程伺服器並執行命令
在實際運用中在當前伺服器執行命令後,需要在另一台伺服器繼續執行某些命令,和耐衫分開去到另一台伺服器執行也是比較麻煩的,因此整理下集中執行的方式喚腔
1、首先配置ssh免密操作
Linux 下實現SSH互信: https://www.jianshu.com/p/2456d98aa607
2、簡單命令
ssh [email protected] "cd /var/lib; ls; cd "
2.1 使用時注意,雙引號必須有。若沒加雙引號,第二條及之後的命令會在本地執行
2.2 分號是將兩條語句間隔開
2.3 單雙引的區別:單引號不會解析值,是什麼就傳什麼;雙引號會解析值,將解析結果傳過去
3、多條命令
ssh [email protected]<< reallssh
cd /var/lib/test
tar -zxvf api.com.tar.gz
......
exit
reallssh
3.1 命令寫在 << reallssh(開始畝悶) 至 reallssh(結束) 之間
3.2 reallssh可自己定義為其他形式
3.3 在結束前加上exit退出遠程
4、可能遇到的問題
問題:遠程登錄主機時出現Pseudo-terminal will not be allocated because stdin is not a terminal. 錯誤
解決方案:字面意思是偽終端將無法分配,因為標准輸入不是終端。
所以需要增加-t -t參數來強制偽終端分配,即使標准輸入不是終端。
to force pseudo-tty allocation even if stdin isn』t a terminal.
參考樣例如下:
ssh -t -t [email protected] -p 22
--------------------------------------------------------------------------------
參考:https://blog.csdn.net/jinking01/article/details/84386769
H. ssh遠程連接伺服器 腳本文件 【軟連接】
一個使用expect免輸入密碼自動登錄ssh的shell腳本,方便好用,適用Mac、Linux
來自:https://github.com/jiangxianli/SSHAutoLogin
1、ssh_login.sh
2、給ssh_login.sh文件執行的許可權
3、配置伺服器腳本文件 【軟連接】
4、命令使用
伺服器登錄
選擇序列號:1、2、3 .......
5、刪除伺服器腳本文件 【軟連接】
ln參數釋義
1.命令格式:
ln [參數][源文件或目錄][目標文件或目錄]
2.命令參數:
必要參數:
-b 刪除,覆蓋以前建立的鏈接
-d 允許超級用戶製作目錄的硬鏈接
-f 強制執行
-i 交互模式,文件存在則提示用戶是否覆蓋
-n 把符號鏈接視為一般目錄
-s 軟鏈接(符號鏈接)
-v 顯示詳細的處理過程
選擇參數:
-S 「-S<字尾備份字元串> 」或 「--suffix=<字尾備份字元串>」
-V 「-V<備份方式>」或「--version-control=<備份方式>」
--help 顯示幫助信息
--version 顯示版本信息
I. 如何通過ssh遠程登錄linux系統
通過ssh遠程登錄linux系統步驟如下:
1、啟動軟體,點擊快速連接,我們要選擇連接的協議。
J. 在LINUX系統下,如何使用SHell腳本,SSH登陸上路由器
1.登陸linux系統,打開終端命令。姿搏輸入 rpm -qa |grep ssh 查找當前系統是否已經安裝
2.如果沒有安裝SSH軟體包,可以通過yum 或rpm安裝包進行安裝
3、安裝好了之念啟後,就開啟ssh服務。Ssh服務一般叫做 SSHD
4、命令行輸入 service sshd start 可以啟動 或者使用 /etc/init.d/sshd start
5、輸入:ssh 賬號@IP地址即可。
比如:ssh [email protected]
然後按照提示輸入密碼. 一切無誤則進入該遠程主機.