【 基于 UDP 的 ssh 】tsshd 发布 v0.1.3,支持自定义端口


【 基于 UDP 的 ssh 】tsshd 发布 v0.1.3,支持自定义端口。

GitHub:https://github.com/trzsz/tsshd


优点简介

  • 降低延迟( 基于 QUIC / KCP 

  • 端口转发( 与 openssh 相同,包括 ssh agent 转发和 X11 转发 )

  • [TODO] 连接迁移( 支持网络切换和掉线重连,依赖于 quic-go#234 

如何使用

  1. 在客户端(本地电脑)上安装 tssh。

  2. 在服务端(远程机器)上安装 tsshd。

  3. 使用 tssh --udp 登录服务器。如下配置可省略 --udp 参数:

    Host xxx
    #!! UdpMode yes
    #!! UdpPort 61000-62000
    #!! TsshdPath ~/go/bin/tsshd
     

原理简介

  • tssh 在客户端扮演 ssh 的角色,tsshd 在服务端扮演 sshd 的角色。

  • tssh 会先作为一个 ssh 客户端正常登录到服务器上,然后在服务器上启动一个新的 tsshd 进程。

  • tsshd 进程会随机侦听一个 61000 到 62000 之间的 UDP 端口(可通过 UdpPort 配置自定义),并将其端口和密钥通过 ssh 通道发回给 tssh 进程。登录的 ssh 连接会被关闭,然后 tssh 进程通过 UDP 与 tsshd 进程通讯。

  • tsshd 支持 QUIC 协议和 KCP 协议(默认是 QUIC 协议),可以命令行指定(如 -oUdpMode=KCP),或如下配置:

    Host xxx
    #!! UdpMode KCP
    

安装方法

  • Ubuntu 可用 apt 安装

    sudo apt install tsshd
    sudo apt update && sudo apt install software-properties-common
    sudo add-apt-repository ppa:trzsz/ppa && sudo apt update
    
    sudo apt install tsshd
    
  • Debian 可用 apt 安装

    sudo apt install tsshd
    sudo apt install curl gpg
    curl -s 'https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x7074ce75da7cc691c1ae1a7c7e51d1ad956055ca' \
    | gpg --dearmor -o /usr/share/keyrings/trzsz.gpg
    echo 'deb [signed-by=/usr/share/keyrings/trzsz.gpg] https://ppa.launchpadcontent.net/trzsz/ppa/ubuntu jammy main' \
    | sudo tee /etc/apt/sources.list.d/trzsz.list
    sudo apt update
    
    sudo apt install tsshd
    
  • Linux 可用 yum 安装

    sudo yum install tsshd
    • 国内推荐使用 wlnmp 源,安装 tsshd 只需要添加 wlnmp 源( 配置 epel 源不是必须的 ):

      curl -fsSL "https://sh.wlnmp.com/wlnmp.sh" | bash
      
      sudo yum install tsshd
      
    • 也可使用 gemfury 源( 只要网络通,所有操作系统通用 )

      echo '[trzsz]
      name=Trzsz Repo
      baseurl=https://yum.fury.io/trzsz/
      enabled=1
      gpgcheck=0' | sudo tee /etc/yum.repos.d/trzsz.repo
      
      sudo yum install tsshd
      
  • ArchLinux 可用 yay 安装

    yay -S tsshd
    yay -Syu
    yay -S tsshd
    
  • 用 Go 直接安装( 要求 go 1.21 以上 )

    go install github.com/trzsz/tsshd/cmd/tsshd@latest
    go install github.com/trzsz/tsshd/cmd/tsshd@latest
    

    安装后,tsshd 程序一般位于 ~/go/bin/ 目录下( Windows 一般在 C:\Users\your_name\go\bin\ )。

  • 用 Go 自己编译( 要求 go 1.21 以上 )

    sudo make install
    git clone --depth 1 https://github.com/trzsz/tsshd.git
    cd tsshd
    make
    sudo make install
    
  • 可从 GitHub Releases 中下载,国内可从 Gitee 发行版 中下载,解压并加到 PATH 环境变量中。


相關推薦

2024-06-25

【 低延迟的 ssh 】tsshd 发布了 v0.1.0,开源地址:https://github.com/trzsz/tsshd ,Gitee:https://gitee.com/trzsz/tsshd 软件简介 tsshd 是类似 mosh-server 的开源程序,主要实现 sshd 相关的功能,与 tssh 客户端使用 UDP ( KCP )通讯,达

2024-07-02

,修复 KCP 协议挂起的问题。 优点简介 低延迟( 基于 QUIC / KCP ) 端口转发( 与 openssh 相同 ) 如何使用 在客户端(本地电脑)上安装 tssh。 在服务端(远程机器)上安装 tsshd。 使用 tssh --udp&nb

2024-07-09

持 X11 转发和 ssh agent 转发。 优点简介 降低延迟( 基于 QUIC / KCP ) 端口转发( 与 openssh 相同,包括 ssh agent 转发和 X11 转发 ) [TODO] 连接迁移( 支持网络切换和掉线重连,依赖于 quic-go#234 

2023-12-14

级代理,通过外部 API,HTTP (S),SOCKS5,SPS 代理可以实现基于用户或者 IP 的限速,连接数限制,动态获取上级。 灵活的上级分配,HTTP (S),SOCKS5,SPS 代理可以通过配置文件实现基于用户或者 IP 的限速,连接数限制,指定上级。

2022-10-10

级代理,通过外部 API,HTTP (S),SOCKS5,SPS 代理可以实现基于用户或者 IP 的限速,连接数限制,动态获取上级。 灵活的上级分配,HTTP (S),SOCKS5,SPS 代理可以通过配置文件实现基于用户或者 IP 的限速,连接数限制,指定上级。

2023-10-21

级代理,通过外部 API,HTTP (S),SOCKS5,SPS 代理可以实现基于用户或者 IP 的限速,连接数限制,动态获取上级。 灵活的上级分配,HTTP (S),SOCKS5,SPS 代理可以通过配置文件实现基于用户或者 IP 的限速,连接数限制,指定上级。

2023-01-19

级代理,通过外部 API,HTTP (S),SOCKS5,SPS 代理可以实现基于用户或者 IP 的限速,连接数限制,动态获取上级。 灵活的上级分配,HTTP (S),SOCKS5,SPS 代理可以通过配置文件实现基于用户或者 IP 的限速,连接数限制,指定上级。

2023-02-25

级代理,通过外部 API,HTTP (S),SOCKS5,SPS 代理可以实现基于用户或者 IP 的限速,连接数限制,动态获取上级。 灵活的上级分配,HTTP (S),SOCKS5,SPS 代理可以通过配置文件实现基于用户或者 IP 的限速,连接数限制,指定上级。

2023-01-10

级代理,通过外部 API,HTTP (S),SOCKS5,SPS 代理可以实现基于用户或者 IP 的限速,连接数限制,动态获取上级。 灵活的上级分配,HTTP (S),SOCKS5,SPS 代理可以通过配置文件实现基于用户或者 IP 的限速,连接数限制,指定上级。

2023-02-10

级代理,通过外部 API,HTTP (S),SOCKS5,SPS 代理可以实现基于用户或者 IP 的限速,连接数限制,动态获取上级。 灵活的上级分配,HTTP (S),SOCKS5,SPS 代理可以通过配置文件实现基于用户或者 IP 的限速,连接数限制,指定上级。

2023-01-25

级代理,通过外部 API,HTTP (S),SOCKS5,SPS 代理可以实现基于用户或者 IP 的限速,连接数限制,动态获取上级。 灵活的上级分配,HTTP (S),SOCKS5,SPS 代理可以通过配置文件实现基于用户或者 IP 的限速,连接数限制,指定上级。

2024-04-12

级代理,通过外部 API,HTTP (S),SOCKS5,SPS 代理可以实现基于用户或者 IP 的限速,连接数限制,动态获取上级。 灵活的上级分配,HTTP (S),SOCKS5,SPS 代理可以通过配置文件实现基于用户或者 IP 的限速,连接数限制,指定上级。

2023-01-27

级代理,通过外部 API,HTTP (S),SOCKS5,SPS 代理可以实现基于用户或者 IP 的限速,连接数限制,动态获取上级。 灵活的上级分配,HTTP (S),SOCKS5,SPS 代理可以通过配置文件实现基于用户或者 IP 的限速,连接数限制,指定上级。

2023-08-05

级代理,通过外部 API,HTTP (S),SOCKS5,SPS 代理可以实现基于用户或者 IP 的限速,连接数限制,动态获取上级。 灵活的上级分配,HTTP (S),SOCKS5,SPS 代理可以通过配置文件实现基于用户或者 IP 的限速,连接数限制,指定上级。