SSHDroid及sshpass简介
一、SSHDroid簡介
SSH為Secure Shell的縮寫,是建立在應用層基礎上的安全協議。SSH是目前較可靠,專為遠程登錄會話和其他網絡服務提供安全性的協議。利用SSH協議可以有效防止遠程管理過程中的信息泄露問題。SSH客戶端適用于多種平臺,幾乎所有UNIX平臺都可運行SSH。
從客戶端來看,SSH提供兩種級別的安全驗證:
1. 基于口令的安全驗證:只要你知道自己帳號和口令,就可以登錄到遠程主機。所有傳輸的數據都會被加密,但是不能保證你正在連接的服務器就是你想連接的服務器。可能會有別的服務器在冒充真正的服務器,也就是受到”中間人”這種方式的攻擊。
2. 基于密鑰的安全驗證:需要依靠密鑰,也就是你必須為自己創建一對密匙,并把公用密匙放在需要訪問的服務器上。如果你要連接到SSH服務器上,客戶端軟件就會向服務器發出請求,請求用你的密匙進行安全驗證。服務器收到請求之后,先在該服務器上你的主目錄下尋找你的公用密匙,然后把它和你發送過來的公用密匙進行比較。如果兩個密匙一致,服務器就用公用密匙加密”質詢”(challenge)并把它發送給客戶端軟件。客戶端軟件收到”質詢”之后就可以用你的私人密匙解密再把它發送給服務器。
SSHDroid是個免費的Android版的SSH服務器,SSH Server for Android,該應用可以讓你通過PC或命令連接設備,實現無線傳輸和管理文件。 它要求手機和PC都連接在同一路由器(或WiFi)上。
SSHDroid最新版本為2.1.2,可以從https://www.apk20.com/apk/77332/v/73461/ 下載安裝。安裝后的界面如下:
二、sshpass簡介
在Ubuntu中,可以通過源碼安裝sshpass,下載地址: https://pkgs.org/download/sshpas;也可以直接通過apt-get安裝:
sudo apt-get install sshpass
ssh登錄不能在命令行中指定密碼,需要用戶交互輸入密碼,sshpass解決了這個問題,它允許你用-p參數指定明文密碼,然后直接登錄遠程服務器或手機。
sshpass支持密碼從命令行、文件、環境變量中讀取,所以,通過sshpass可以實現以非交互的形式為ssh提供密碼。
假如遠程服務器的密碼為admin,端口號為port=2222,用戶名為root,ip為ip=10.1.10.20:
(1). 將本機a.txt文件傳到服務器,則可執行:
sshpass -p admin scp -P ${port} -r a.txt root@${ip}:~
(2). 在遠程服務器上創建一個名為code的目錄,則可執行:
sshpass -p admin ssh -p ${port} root@${ip} "mkdir -p code"
(3). 將遠程服務器上目錄名為data目錄內容拷貝到本地/home/spring目錄下,則可執行:
sshpass -p admin scp -P ${port} -r root@${ip}:data /home/spring/
以上內容參考:
1.?https://baike.baidu.com/item/ssh/10407?fr=aladdin
2.?http://www.bkjia.com/Androidjc/425513.html
3.?https://www.jianshu.com/p/643aac9a9f4c
總結
以上是生活随笔為你收集整理的SSHDroid及sshpass简介的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 循环神经网络(RNN)简介
- 下一篇: 吴恩达老师深度学习视频课笔记:循环神经网