libssh2 + OpenSSL + wolfSSL 的swift实现
SSH Term APP ssh2.app 的 SSH2连接核心
全中文注释
协议全,推荐
pod 'SSH/OpenSSL', :git => 'https://github.com/sshterm/ssh.git'
pod 'SSH/OpenSSLFull', :git => 'https://github.com/sshterm/ssh.git'
协议少,不支持ED25519等,适合轻量级应用
pod 'SSH/wolfSSL', :git => 'https://github.com/sshterm/ssh.git'
https://github.com/libssh2/libssh2
https://github.com/openssl/openssl
https://github.com/wolfSSL/wolfssl
src/ SSH2业务
src/DNS/ DNS加密业务
src/Crypto/ 哈希加密业务,包括证书生存等
src/Machine/ Linux服务器状态查询业务
//启动DNS 会自动加密APP的所有DNS请求
DNS.shared.requireEncrypted(.alidns, type: .doh)
//创建SSH
let ssh = SSH(host: "10.0.0.1", port: 22, user: "root", timeout: 5)
//设置插座
ssh.sessionDelegate = delegate
//连接
await ssh.connect()
//握手
await sh.handshake()
//认证 更多方式 请参考 Auth.swift 的函数注释
await ssh.authenticate(password: "<PASSWORD>")
具体函数用法请参考 代码注释