简易web terminal解决方案
为了方便最快速度打开远程连接,浏览器是个不错的终端载体。在github上看到ttyd项目,麻雀虽小,五脏俱全,符合web terminal的需求,爱了爱了。另外,作者似乎还是MC玩家,折腾过树莓派,简直偶像有木有😘
首先安装必要依赖
1 |
|
从官方仓库克隆到本地,建议编译安装,默认安装到/usr/local/bin
,使用ttyd -h
查看帮助文档。因为是明文传输密码,所以不建议Basic Authentication方式做鉴权,要么域名强制https,要么ssl认证方式。ttyd还提供很多使用功能,比如接受链接参数、ssl传输等等。
以非Root身份运行
首先允许普通账户sudo ttyd时无需输入密码。运行sudo visudo
,在末尾添加一行(xxx是当前用户名)
|
然后pm2 start -x 'sudo ttyd --max-clients 2 login -p xxx' -n ttyd
即可
以Root身份运行
需要修改/etc/securetty
,在末尾增加
|
然后运行pm2 start -x 'ttyd --max-clients 2 login' -n ttyd
上传下载文件
编译安装lrzsz,使用rz上传文件到服务器,sz下载文件到本地。此外还可以安装axel,取代wget多线程下载。
参考链接
更优于 Shellinabox 的 web shell 工具 – ttyd
Linux下rz/sz安装及使用方法