Go語言利用ssh連線伺服器的方法步驟

2022-09-21 17:09:18 字數 1245 閱讀 4885

學習了go語言後,打算利用最近比較空一點,寫乙個前端部署工具,不需要每次都複製貼上的麻煩,需要完成部署的第一步就需要連線遠端伺服器

首先我們想要利用ssh連線伺服器的前提是服程式設計客棧務器開啟了ssh server,ssh 分為client和server端 ,如果開啟了client可以連線遠端伺服器,開啟了server就可以被連線.

因為linux網上教程很多,windows比較少,所以這裡只寫windows版本的,

首先我們一般用open ssh這個工具開啟服務,windows系統是自帶 open ssh client 這個服務的, 如果我們需要開啟open server,

發現客戶端(client)已經安裝了,這時候我們開打新增功能,安裝openssh 服務端

安裝完成, 開啟openssh設定自動啟動

最後一步,測試一下是否openssh server已經開啟, 開啟命令列 輸入 使用者名稱(電腦的使用者名稱)@ip(本機的ip位址),再輸入密碼就可以看到連線成功了

嘗試通過ssh連線本機

連線成功

連線ssh的主要用的就是golang.org/x/crypto/ssh這個包, 利用github.com/pkg/sftp來進行檔案傳輸和遠端檔案操作,下面的**都有詳細注釋直接看注釋www.cppcns.com就好了

ps: ssh這個包 直接用go get可能會下不下來,需要手動**

} //連線ip和埠

addr = fmt.sprintf("%s:%d", host, port)

//通過tcp協議,連線ssh

if sshclient, err = ssh.dial("tcp", addr, clientconfig); err != nil

//建立sftp服務物件

if sftpclient, err = sftp.newclient(sshclient); err != nil

//返回sftp服務物件

return sftpclient, nil

}連線ssh的方法已經封裝好了,需要使用直接ycyqbg呼叫就行了

SSH遠端連線伺服器

第一步 伺服器第一次開啟ssh服務,則會自動建立 etc ssh ssh host 公鑰檔案,以及私鑰檔案 第三步 伺服器將自己的公鑰檔案傳送給客戶端 明文 etc init.d ssh restart ssh f o p 帳號 ip 命令 引數 意義 f 不登入,直接在遠端伺服器執行 後面的命令 ...

ssh連線遠端伺服器

平常登陸遠端伺服器,每次都要輸入密碼,感覺挺麻煩的,下面提供一種相對便利的方式 windows 感覺xshell挺好的ubuntu sudo apt install expectmac brew install expect bin bash set timeout 30 spawn ssh l 使...

centos伺服器ssh連線

第一步修改密碼 sudo passwd root生成金鑰對 ssh keygen t rsa找到公鑰的目錄,通常在.ssh下 cat id rsa.pub ssh authorized keys 通過公鑰生成keys檔案,這個檔案每個使用者獨有開啟 sshd config 配置檔案 sudo vi ...