當前位置:首頁 » 編程軟體 » ssh安全腳本

ssh安全腳本

發布時間: 2023-08-31 08:32:31

㈠ 在腳本中使用ssh時的幾個注意事項

1. 超時設置
-o ConnectTimeout=3
2. 重定項標准輸入到/dev/null
-n
當使用這樣的形式時 (使用 key 認證):
while read line ; do ip=$(awk '{print $1}' < << $line ) ssh -n -o ConnectTimeout=3 $i uptime done < file
假如此時不使用 -n ,則只有第一行會被處理。
3. 批處理模式,在腳本中使用再合適不過(使用 key 認證)
-o BatchMode=yes
當 key 認證不成功時,有可能會彈出「密碼認識」,從而影響腳本運行下去,此時可以打開 BatchMode模式。
4. 遇到未知主機:
-o StrictHostKeyChecking=no
當遇到未知的主機公鑰時,自動接受key。
5. 糟遇遠程主機連接後無響應:
當設置了 BatchMode 時 ServerAliveInterval 默認被設置成 300 秒(服務端無數據傳回的持續時間)。
ServerAliveCountMax相當於是重試的次數,比如下面的例子,15秒 x 3 = 45 秒,即當 45 秒後,真正超時斷開。
TCPKeepAlive打開時,便於發現網路的斷開。當網路故障(比如路由器壞掉)或者遠端開機、死機時,連接會主動斷開,否則的話,將會等待相當一段時間後才會斷開。
-o ServerAliveInterval=15
-o ServerAliveCountMax=3
-o TCPKeepAlive=yes
需要注意的是,這里的超時、無響應,僅是 ssh或者sshd無影響,假如是在遠程上執行程序,程序無響應,則不能處理此時的超時,解決方法見《在Shell中實現非同步》。

㈡ 求ssh無密碼登錄linux系統的expect腳本。詳細點的,登錄之後可以進行相關操作的那種,如果可以希望詳談。

#!/usr/local/bin/expect

set timeout 10

spawn ssh root@ip

expect "*password*"

send "123456\r"

expect "#"

send "service crond restart\r"

expect eof

㈢ 如何寫shell腳本自動通過ssh命令登錄到伺服器

用EXPECT實現用密碼登錄,也可配置成不需要密碼

#!/usr/bin/expect -f

if { $argc < 3 } {

puts stderr "Usage: $argv0 IPAdress Login OldPasswd"

exit
}

set IPADDR [lindex $argv 0]
set LOGIN [lindex $argv 1]
set OLD_PW [lindex $argv 2]

set timeout 30

stty -echo

spawn ssh $IPADDR -l $LOGIN
expect {
"*Password:*" {
send "$OLD_PW\r"
exp_continue
} "*Last login:*" {
#interact
exit 0
} timeout {
send_user "connection to $IPADDR timeout!\n"
exit 1
} "*incorrect*" {
send_user "password incorrect!\n"
exit 2
} "*Permission*" { #for LINUX ssh
send_user "password Error!\n"
exit 2
} eof {
exit 3
}
}

㈣ 求一個批量ssh登錄linux伺服器,修改配置文件的腳本參考一下。

1、可以配置無密碼訪問或者用sshpass在shell中存密碼
2、實例
ip.txt包含ip列表,每行一個ip
test.sh保護修改配置的命令或者直接修改好,復制到遠程指定路徑。
3、代碼
#!/bin/sh
for ip in `cat ip.txt`; do
echo ${ip};
scp -P22 test.sh root@${ip}:/opt;
ssh -p22 root@$ip "cd /opt;./test.sh;"
done
exit 0;

㈤ 本地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

㈥ 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。

㈦ SSH的運行腳本的語句


-V Display the version number and exit.

顯示版本號並退出。

退出SSH當然就斷開連接啦。


寫在shell腳本里,執行的時候是在新建shell中執行的,退出也只是退出新建shell回到原shell,所以不影響連接。

試試執行:

(ssh-V)

放到小括弧中,同樣會新建shell去執行。




熱點內容
米加小鎮更新大學的密碼是多少 發布:2024-11-20 11:33:21 瀏覽:587
加密文件夾免費下載 發布:2024-11-20 10:48:47 瀏覽:773
有什麼低配置好玩的單機游戲 發布:2024-11-20 10:22:18 瀏覽:700
去哪裡可以把手機密碼清除 發布:2024-11-20 10:17:06 瀏覽:530
什麼游戲適合電腦配置不高的玩 發布:2024-11-20 09:52:02 瀏覽:235
安卓如何拷貝微信聊天記錄 發布:2024-11-20 09:51:02 瀏覽:940
php中for 發布:2024-11-20 09:48:04 瀏覽:29
安卓手機用什麼軟體防止別人蹭網 發布:2024-11-20 09:37:18 瀏覽:840
頂級asmr助眠解壓赫敏 發布:2024-11-20 09:36:34 瀏覽:429
帝瓦雷演算法 發布:2024-11-20 09:16:11 瀏覽:53