推荐一款开源跨平台的超级终端工具-windterm

前言

说到SSH终端工具,大家首先想到的可能会是putty、xshell这些老牌客户端。以上这些工具能够流行至今,并有一定的用户群体,一定有其独特之处。不过在互联网日益发达的今天,我们工作中的使用需求也越来越多,比如:在远程连接服务器、运行Linux命令的同时,可能还需要传输一些文件;我们希望可以同时连接多台服务器,在多个窗口下管理,便于相互切换;在管理Linux的同时,还可以运行cmd/zsh以及gitbash,而不是开多个软件......

对于上述功能,如果是putty和xshell,就显得有些力不从心。而在开源工具如雨后春笋般涌现的今天,windterm作为其中的佼佼者,可以同时满足以上需求。

一、windterm简介

1.关于windterm

windterm是一款风格独特、开源、且完全免费的SSH/Telnet/Serial/Shell/Sftp 客户端

项目地址:https://github.com/kingToolbox/WindTerm 下载地址:https://github.com/kingToolbox/WindTerm/releases

2.windterm特点

  • 实现了 SSH v2、Telnet、Raw Tcp、串行、Shell 协议;
  • 会话认证时支持 SSH 自动执行;
  • 支持 SSH ControlMaster;
  • 支持 SSH ProxyCommand 或 ProxyJump;
  • 支持 SSH 代理转发;
  • 支持使用密码、公钥、键盘交互、gssapi-with-mic 的 SSH 自动登录;
  • 支持X11转发;
  • 支持直接/本地端口转发、反向/远程端口转发和动态端口转发;
  • 支持 XModem、YModem 和 ZModem;
  • 集成sftp、scp客户端,支持下载、上传、删除、重命名、新建文件/目录等;
  • 集成本地文件管理器,支持移动、复制、复制、删除、重命名、新建文件/目录等;
  • 支持 Windows Cmd、PowerShell 和 Cmd、PowerShell 作为管理员;
  • 支持Linux bash、zsh、powershell core等;
  • 支持 MacOS bash、zsh、powershell 内核等;

二、创建服务器连接

以下将会结合实际案例,分别从直连方式以及代理连接两方面,介绍windterm如何连接、管理远程服务器。

1.本地或公网直连

1)新建会话

  • 主机:输入内网主机地址或可以直连的公网地址
  • 标签:可以创建一个别名
  • 分组:选择分组(分组可以提前新建,如百度云、华为云、内网服务器等),便于分类管理
  • Description:描述信息

2)输入用户名

输入用户名,勾选“下次自动登录”,点击“继续”

3)输入密码

输入密码,点击“继续”

登录成功页面如下:

2.通过代理连接

内网服务器或公网地址直连相对较为简单,直接输入用户名和密码就可以了。但很多情况下,并不是每台远程服务器都有公网地址,或是22端口不对外开放,这时就需要通过一台公网服务器的代理跳转到其同一体系的各个内网下才能进行连接。以下为代理连接核心思路:

先建立一个隧道,用来监听本地端口,再新建一个代理连接,并在代理中填写前面创建的隧道中填写的本地监听端口号,通过【隧道+代理】即可跳转到远程服务器的内网其他主机,注意:

  • 一个隧道中填写一个端口号,端口号只要是本地没被占用的端口号就行;
  • 一个隧道最好只对应一个代理连接(避免因为一个端口挂掉而导致关联连接全断掉的情况);
  • 一个代理对应一个远程服务器的内网主机;
  • 内网主机登录前,跳板机必须处于登录状态,跳板机断开后,相应各内网主机也会自动断连;

1)新建隧道

点击右上角“隧道”-“Tunnel Settings”进入隧道管理,再点击右下角“+”号新建一个隧道,如下图所示:

  • 名称:任意,自己能记住就行,最好带有一定标识来标识特定的含义
  • 类型:选择动态转发
  • 会话:选择跳板机所在的会话(需要通过这台跳板机、也是公网服务器来跳转到内网)
  • 监听端口:任意,注意不要与其他已正在使用的端口重复即可
  • 目标主机:选择动态转发后此项会自动填充为“任何”,无需改动
  • 目标端口:选择动态转发后此项会自动填充为“0”,无需改动
  • Status:默认Closed,可以在新建时打开,也可以新建完成后打开

新建完成后,再次点击右上角隧道,即可看到新建的隧道:

2)新建连接代理

在同一会话(即跳板机所在的目录)下,右键-新建会话

① 填写会话内容

  • 主机:目标服务器的内网地址
  • 端口:22
  • 标签:任意,自己能识别即可
  • 分组:跳板机所在的分组
  • 其他保持默认

② 填写代理信息

切换到SSH类目下的代理选项,填写代理信息

  • 代理类型:选择Socks v5 proxy
  • 主机:localhost
  • 端口:3011(前面新建的隧道中的本地监听端口,一个端口对应一个代理)
  • 用户名密码无需填写

③ 填写登录信息

前面一步建立代理、点击连接后,会自动弹出输入用户名页面,可以勾选左下角的“下次自动登录”

勾选后的效果如下,输入用户名即可

输入密码

登录后的页面如下:

四、使用windterm

1.主页

通过截图可以看出:

  • 右上角会话区域,可以新建服务器会话连接,支持新建、导入
  • 左上角区域为已打开的会话
  • 文件管理器支持文件的上传、下载,支持直接拖拽到此区域进行文件上传
  • 大纲区域为此会话输入的历史命令,双击可立即在此会话窗口执行该命令

2.上传&下载文件

左下角文件管理器,可以创建文件夹,上传、下载文件等,也可以将文件直接拖到这个区域进行上传文件、直接将文件从这个区域拖出进行下载文件。

3.cmd & git bash

windterm右上角会话区域Shell sessions中集成了cmd及git bash窗口功能,便于同时操作多种类型会话。

4.历史操作命令

虽然有些执行过的历史命令可以通过history或是上下键进行翻滚查找到,但windterm在右下角大纲区域直接展示了本会话过程中所有执行过的历史命令,双击即可再次执行,免去多次重复键入或查找的麻烦。我认为这也是windterm最好用的特色功能之一。

5.设置锁屏密码

windterm最右下角“锁屏”可以设置锁屏密码,更改密码等,避免误操作,增强安全性。

小结

以上就是超级终端工具windterm的实际使用过程介绍。萝卜青菜各有所爱,windterm也不一定就是最好的,无论什么工具,选择适合自己的就行。如果你有更好的工具推荐,欢迎留言与我交流!

本文转载于网络 如有侵权请联系删除

相关文章

  • Linux从入门到精通系列之NFS

    网络文件系统(NFS,NetworkFileSystem)是一种将远程主机上的分区(目录)经网络挂载到本地系统的一种机制,通过对网络文件系统的支持,用户可以在本地系统上像操作本地分区一样来对远程主机的共享分区(目录)进行操作。Linux服务器端NFS服务器的配置  以root身份登陆Linux服务器,编辑/etc目录下的共享目录配置文件exports,指定共享目录及权限等。 执行如下命令编辑文件/etc/exports: #vi/etc/exports 在该文件里添加如下内容: /home/work192.168.0.*(rw,sync,no_root_squash) 然后保存退出。 添加的内容表示:允许ip地址范围在192.168.0.*的计算机以读写的权限来访问/home/work目录。 /home/work也称为服务器输出共享目录。 括号内的参数意义描述如下: rw:读/写权限,只读权限的参数为ro; sync:数据同步写入内存和硬盘,也可以使用async,此时数据会先暂存于内存中,而不立即写入硬盘。 no_root_squash:NFS服务器共享目录用户的属性,如果用户是roo

  • 【UVA 11462】 Age Sort(基数排序)

    题意  给你最多2000000个数据,大小是1到99的数,让你排序输出。分析  快排也可以过。不过这题本意是要基数排序(桶排序),就是读入年龄age,a[age]++,然后输出时,从1到99岁(看清范围,我看成1到100了TAT)有几个就输出几次。这题还有注意格式,最后不要空格,然后换行。代码#include<cstdio> #include<cstring> intn,a[100],age,ok; intmain() { while(scanf("%d",&n)&&n) { memset(a,0,sizeof(a)); ok=0; for(inti=1;i<=n;i++) { scanf("%d",&age); a[age]++; } for(inti=1;i<100;i++) { for(intj=1;j<=a[i];j++) if(ok)printf("%d",i); else { printf("%d",i); ok=1;

  • C++ const常量对象、常量成员函数和常引用

    —1—常量对象如果不希望某个对象的值被改变,则定义该对象的时候可以在前面加const关键字。classCTest { public: voidSetValue(){} private: intm_value; }; constCTestobj;//常量对象复制—2—常量成员函数在类的成员函数后面可以加const关键字,则该成员函数成为常量成员函数。这里有两个需要注意的点: 在常量成员函数中不能修改成员变量的值(静态成员变量除外);也不能调用同类的非常量成员函数(静态成员函数除外)。classSample { public: voidGetValue()const{}//常量成员函数 voidfunc(){} intm_value; }; voidSample::GetValue()const//常量成员函数 { value=0;//出错 func();//出错 } intmain() { constSampleobj; obj.value=100;//出错,常量对象不可以被修改 obj.func();//出错,常量对象上面不能执行非常量成员函数 obj.GetValue;//OK

  • psd面试(lps或lcs)

    题目链接: https://www.nowcoder.com/acm/contest/90/D     题解有两种方法,一种是用另一个字符串把原字符串复制下来并反转,然后对这两个字符串进行LCS,第二种是直接dp。这里我用的是第一种方法。      LPS博客:https://blog.csdn.net/charles_zaqdt/article/details/79714210       LCS博客:https://blog.csdn.net/charles_zaqdt/article/details/79696286 AC代码:#include<iostream> #include<cstdio> #include<cstring> usingnamespacestd; intdp[1500][1500]; stringstr1,str2; intmain() { while(cin>>str1){ intlen=str1.length(); memset(dp,0,sizeof(dp)); for(inti=0,j

  • 干货 | Tensorflow设计简单分类网络实现猫狗图像分类训练与测试

    模型结构与代码实现 第一层:32个featuremap5x5卷积、步长为2、最大值池化 局部相应归一化处理(LRN) 第二层:64个featuremap3x3卷积、步长为1、没有池化 第三层:128个featuremap3x3卷积、步长为1、最大值池化 局部相应归一化处理(LRN) 扁平层操作12x12x128个神经元 输出层操作2个神经元输出、sigmoid激活函数 卷积层采用relu作为激活函数。 模型解释卷积层深度不断加深,用以补偿分辨率下降带来的信息损失、 LRN提升神经元竞争能力,增强最终模型的泛化能力。通过上述简单的卷积神经网络,对25000张的猫狗图像进行训练,对卷积层1、3后面使用局部响应归一化处理(LRN),最终输出二分类图像。从测试集选择测试图像进行分类预测,计算准确率。 网络模型代码实现definference(input_tensor): #-----------------------第一层---------------------------- withtf.variable_scope('layer1-conv1'): #初始化权重c

  • 期待已久的—YOLO V3

    好久不见各位研友(研究好友,不是考研的小伙伴,嘿嘿)!最近,因为题主学校事情比较繁忙,没有花更多的时间在我们的平台,希望关注支持我们的您,原谅我们更新的速度,希望大家继续支持我们,谢谢!刚结束自己的手头事情,就想到给大家更新点东西,然后就想到了YOLOV3的东西,因为之前自己有认真研读,发现确实了不起的框架,但是如果有对V1和V2了解的,一定很熟悉了,今天我就和大家来分享下最近的框架——YOLOV3。论文:https://pjreddie.com/media/files/papers/YOLOv3.pdf代码:https://github.com/pjreddie/darknet要不先来简单回忆下YOLO系列的框架。YOLO算法,从V1到V2,再到现在的V3系列,算法的性能在不断改进,以至于现在成为了开源通用目标检测算法的佼佼者。一直以来,在计算机视觉领域有一个问题待解决,那就是如何检测两个距离很近的同类的目标或不同类目标?大多数的算法都会对输入的图像数据进行尺度变化,缩放到较小的分辨率情况下,但是一般在这总情况下只会给出一个BoundingBox,主要由于特征提取过程中将这总情况人为

  • 谈谈虚拟化及其安全性

    虚拟化是硬件和软件工程的协作,以创建虚拟机(VM)。这被认为是计算机硬件的抽象化,使单个物理机能够当作多个机器运行。没有虚拟机,单个操作系统将会占用所有的硬件资源,但是随着虚拟机的部署,具有各自独立虚拟机的多个操作系统可以共享硬件。虚拟化是指创建虚拟或基于软件版本的能力,包括存储设备、虚拟计算机硬件平台和计算机网络资源。虚拟化可以大致分为三类,包括操作系统虚拟化,完全虚拟化和半虚拟化(para-virtualization)。当组织的服务器被虚拟化时,对物理硬件的需求将会降低,这给企业带来的最直观的优势就是成本大幅降低。企业可以创建虚拟服务器的备份,并且还可以以更快更简单的方式重新部署虚拟服务器。虚拟化的灾难恢复能力非常强大,且能够在很短的时间内完成灾难恢复,所需的人力资源和成本都低于物理硬件的灾难恢复。虚拟机本身具备向云端迁移的功能,这使得企业能够以更高效的方式运行。虚拟化可以提高IT灵活性、可扩展性和可见性,同时能够显著降低成本,还能有助于减少企业员工队伍的工作。今天,虚拟化代表了IT行业的巨大趋势,其中囊括了众多的功能。以上都是虚拟化能够为企业带来的主要的优势,但虚拟化也面临着严

  • BeautifulSoup用法讲解

    BeautifulSoup的使用讲解 文章转自:pythonbeautifulsoup库的超详细用法 1.BeautifulSoup简介 简单来说,BeautifulSoup是python的一个库,最主要的功能是从网页抓取数据。官方解释如下: BeautifulSoup提供一些简单的、python式的函数用来处理导航、搜索、修改分析树等功能。它是一个工具箱,通过解析文档为用户提供需要抓取的数据,因为简单,所以不需要多少代码就可以写出一个完整的应用程序。BeautifulSoup自动将输入文档转换为Unicode编码,输出文档转换为utf-8编码。你不需要考虑编码方式,除非文档没有指定一个编码方式,这时,BeautifulSoup就不能自动识别编码方式了。然后,你仅仅需要说明一下原始编码方式就可以了。Beautiful Soup已成为和lxml、html6lib一样出色的python解释器,为用户灵活地提供不同的解析策略或强劲的速度。 2.BeautifulSoup安装 BeautifulSoup3目前已经停止开发,推荐在现在的项目中使用BeautifulSou

  • ngnix搭建前端服务

    首先下载ngnix包 http://nginx.org/en/download.html 将ngnix包解压到某个文件夹下   windownginx基础命令 在Windows下使用Nginx,我们需要掌握一些基本的操作命令,比如:启动、停止Nginx服务,重新载入Nginx等,下面我就进行一些简单的介绍。(说明:打开cmd窗口) 1、启动: C:\server\nginx-1.0.2>startnginx 或 C:\server\nginx-1.0.2>nginx.exe 注:建议使用第一种,第二种会使你的cmd窗口一直处于执行中,不能进行其他命令操作。 2、停止: C:\server\nginx-1.0.2>nginx.exe-sstop 或 C:\server\nginx-1.0.2>nginx.exe-squit 注:stop是快速停止nginx,可能并不保存相关信息;quit是完整有序的停止nginx,并保存相关信息。 

  • css3 rgba

    css3中新增rgba计颜色的表示方法。与rgb相同,只是新增了Alpha透明度。

  • 简化Hadoop命令

    1.安装客户端(通过端用户可以方便的和集群交互) 2.简化Hadoop命令 修改~/.bashrcaliashadoop='/home/work/hadoop/client/hadoop-client/hadoop/bin/hadoop' #hadoop可执行文件位置aliashls='hadoopfs-ls' aliashlsr='hadoopfs-lsr' aliashcp='hadoopfs-cp' aliashmv='hadoopfs-mv' aliashget='hadoopfs-get' aliashput='hadoopfs-put' aliashrm='hadoopfs-rm' aliashmkdir='hadoopfs-mkdir' aliashcat='hadoopfs-cat' aliashrmr='hadoopfs-rmr' aliashstat='hadoopfs-stat' aliashtest='hadoopfs-test' a

  • Netty(三)TCP粘包拆包处理

    tcp是一个“流”的协议,一个完整的包可能会被TCP拆分成多个包进行发送,也可能把小的封装成一个大的数据包发送,这就是所谓的TCP粘包和拆包问题。 粘包、拆包问题说明 假设客户端分别发送数据包D1和D2给服务端,由于服务端一次性读取到的字节数是不确定的,所以可能存在以下4种情况。 1.服务端分2次读取到了两个独立的包,分别是D1,D2,没有粘包和拆包; 2.服务端一次性接收了两个包,D1和D2粘在一起了,被成为TCP粘包; 3.服务端分2次读取到了两个数据包,第一次读取到了完整的D1和D2包的部分内容,第二次读取到了D2包的剩余内容,这被称为拆包; 4.服务端分2次读取到了两个数据包,第一次读取到了部分D1,第二次读取D1剩余的部分和完整的D2包; 如果此时服务端TCP接收滑动窗非常小,而数据包D1和D2都很大,很有可能发送第五种可能,即服务端多次才能把D1和D2接收完全,期间多次发生拆包情况。(TCP接收滑动窗:是接收端的大小,随着流量大小而变化,如果我的解释还不明确,请读者自行百度,或者查阅《计算机网络》、《TCP/IP》中TCP的内容) 粘包问题的解决策略 由于底层的TCP无

  • ASP.NET Forms 身份认证

    ASP.NETForms身份认证

  • shazam音乐检索算法 附完整c代码

    在讲算法之前,上一些前人的资料。 http://coding-geek.com/how-shazam-works/ https://laplacian.wordpress.com/2009/01/10/how-shazam-works/ http://royvanrijn.com/blog/2010/06/creating-shazam-in-java/ 当然历史也有点久远了,如果你有心去百度一下 shazam算法, 你会发现这类的博客也是不少的。 当然这显得我现在写这个,好像有点多余。 这里我就快速过一下算法的思路。 假设你有一首歌,换句话说,你有一堆数据。 你可以通过各种各样的方式,对它的内容进行抽象表达。 举个例子,对音乐而言,就是歌名,类型,时长等等。 对于一本书而言就是目录,标题,价位之类的属性。 但是有时候我们会忘记具体内容, 只知道大概的印象,这个时候想要找到对应的那个东西就比较困难了。 举个例子,Beyond乐队的《喜欢你》这首歌,百度上一堆问“黑凤梨”blabla的。。 而音乐检索算法就是为了提供比较人性化的方式帮忙搜索音乐。 而shazam这家公司就是第一

  • jni log 使用

    1.在源文件中添加头文件#include<android/log.h>#defineLOG_TAG"System.out.c"#defineLOGD(...)__android_log_print(ANDROID_LOG_DEBUG,LOG_TAG,__VA_ARGS__)#defineLOGI(...)__android_log_print(ANDROID_LOG_INFO,LOG_TAG,__VA_ARGS__)2.android.mk中添加:LOCAL_LDLIBS+=-llog4.使用: LOGI("findclasserror");也可使用 LOGI("findclasserror=%d",n);来自为知笔记(Wiz)

  • Oracle中如何删除某个用户下的所有数据的方法

    win+R打开cmd 使用dba身份登录: sqlplussys/sys@orclassysdba; 然后使用dba身份删除某个用户: dropuser apptdm_9ycascade;

  • CSS伪类

    一、伪类focus的作用 1、用于给表单方框里添加点击特效[IE不支持] <html> <head> <title>表单</title> <styletype="text/css"> input:focus{border:#0FF;solid:;background-color:#F00;} </style> </head> <body> <formcaption="注册.php"name="reg"method="post"> <tableborder="0"cellpadding="5"align="center"width="100"> <tr> <td>用户名</td> <td><inputtype="text"name="uername"</td> </tr> <tr> <td>密   码</td> <td&

  • 第一周进度总结

    第一周 2月17日至2月23日 每天平均写代码时间 30分钟 代码量 450行左右 所发博客数 九篇 本周学到的知识点 通过网络课学习了大三下学期多门课程知识,总结了寒假做项目用的一些常用 下周的计划 熟练掌握本周学到的知识点,继续学习下学期的知识

  • 二叉树

                       

  • 计算机网络-第二章

  • 发现一个不错的笔记本软件 Notion

    官网地址:https://www.notion.so/help/guides  

相关推荐

推荐阅读