linux mint 安装ssh,Linux Mint下tty.js的安装指南

1.简介

tty.js是使用Node.js开发的开源Web-based SSH.通过浏览器即可远程访问shell。

关于Web-based SSH的介绍参考https://en.wikipedia.org/wiki/Web-based_SSH.

关于tty.js项目,请参考下面两个网页,

https://www.npmjs.com/package/tty.js

https://github.com/chjj/tty.js/

2.安装

运行下面命令从github下载tty.js的源代码,

$ git clone https://github.com/chjj/tty.js.git

然后进入tty.js目录下,使用npm进行安装,

$ cd tty.js

$ sudo npm install

在运行npm install过程中,可能会出现node-gyp rebuild的错误,

3e380cbbf526254fc4cdaccbfcf5fc7a.png

此时我们需要运行下面两个命令进行处理,

$ sudo apt-get install build-essential

$ sudo npm install -g node-gyp

然后再次运行sudo npm install.

3.验证

3.1运行tty.js

在bin目录下有个tty.js的可执行文件,运行该文件,

$ cd bin && ./tty.js

便可启动tty.js服务,该服务监听8080端口,

f12af5c4a009ff51044ba03aabd786aa.png

打开浏览器,然后输入http://127.0.0.1:8080/可以访问tty.js,然后点击页面右上角的Open Terminal便可打开网页终端进行命令行操作了(如下图所示)。

ca6172c2814597f5ca889cd5d91da35d.png

3.2自定义tty.js服务

我们可以在根目录新建一个mytty.js的文件,然后输入以下内容,

var tty = require('./lib/tty.js');

var app = tty.createServer({

shell: 'bash',

users: {

foo: 'bar'

},

port: 8000

});

app.get('/foo', function(req, res, next) {

res.send('bar');

});

app.listen();

在tty.createServer()中自定义tty服务,其中shell设置了启动的终端程序,users设置了访问web网页时的认证用户信息,port设置了服务监听端口号。保存文件,然后运行下面命令,

$ node mytty.js

09072da86f8ef01fd634a6bef580852d.png

然后在浏览器中输入http://127.0.0.1:8000/,会弹出输入用户名和密码的输入框,输入foo和bar,然后便可以打开tty服务的网页。

3.3 tty服务的配置文件

tty.js服务的配置文件在~/.tty.js/config.json,该文件以json的格式保存相关的配置。一个配置样例如下所示,

{

"users": {

"hello": "world"

},

"https": {

"key": "./server.key",

"cert": "./server.crt"

},

"port": 8080,

"hostname": "127.0.0.1",

"shell": "bash",

"static": "./static",

"limitGlobal": 10000,

"limitPerUser": 1000,

"localOnly": false,

"cwd": ".",

"syncSession": false,

"sessionTimeout": 600000,

"log": true,

"io": { "log": false },

"debug": false,

"term": {

"termName": "xterm",

"geometry": [80, 24],

"scrollback": 1000,

"visualBell": false,

"popOnBell": false,

"cursorBlink": false,

"screenKeys": false,

"colors": [

"#2e3436",

"#cc0000",

"#4e9a06",

"#c4a000",

"#3465a4",

"#75507b",

"#06989a",

"#d3d7cf",

"#555753",

"#ef2929",

"#8ae234",

"#fce94f",

"#729fcf",

"#ad7fa8",

"#34e2e2",

"#eeeeec"

]

}

}

3.4 以https协议启动服务

我们在~/.tty.js目录下运行openssl命令来自己生成一个ssl的证书,

$ openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 30000 -nodes

9c2efd546c58146d76cdbe7c966838cf.png

然后在~/tty.js目录下便生成了两个文件cert.pem和key.pem。然后修改将上面的配置文件样例拷贝到~/tty.js/config.json中,然后修改https的配置(如下图所示),

67b517317f3273b24a60dfa3abcf07b6.png

然后运行bin/tty.js,

61c9d4b805a999e2e856b6d8e8e8c2f2.png

然后在浏览器中输入https://127.0.0.1:8080/,浏览器会提示说这是一个有风险的网站,继续访问即可。

(done)

0b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值