go webssh 簡單例子 (基於gin+ws+ssh)

項目地址

https://github.com/hequan2017/go-websshhtml

go-webssh

go版本 webssh 前端

核心

本項目代碼來自 https://github.com/dejavuzhou/felix ,只是把裏面的webssh拿出來,修改了一下,作成webssh,特此說明.有須要能夠查看此項目。vue

安裝

修改 core/ssh.go 裏面的帳號密碼地址等信息。 也能夠本身修改爲用密鑰登陸。git

func NewSshClient() (*ssh.Client, error) {
                    config := &ssh.ClientConfig{
                        Timeout:         time.Second * 5,
                        User:            "root",
                        HostKeyCallback: ssh.InsecureIgnoreHostKey(), //這個能夠, 可是不夠安全
                        //HostKeyCallback: hostKeyCallBackFunc(h.Host),
                    }
                    //if h.Type == "password" {
                    config.Auth = []ssh.AuthMethod{ssh.Password("123456")}
                    //} else {
                    //  config.Auth = []ssh.AuthMethod{publicKeyAuthFunc(h.Key)}
                    //}
                    addr := fmt.Sprintf("%s:%d", "192.168.100.200", 22)
                    c, err := ssh.Dial("tcp", addr, config)
                    if err != nil {
                        return nil, err
                    }
                    return c, nil
}

go installgithub

go run main.goweb


前端

我測試的時候用得是 vue,你能夠放進大家項目裏面。在web/vue/index.vue裏面,記得修改32行的 後端地址後端

也能夠本身弄個普通 index.html ,放一個websocket鏈接便可。安全

web/html 是普通版本index.html,未測試,僅供參考!websocket

相關文章
相關標籤/搜索