温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

在Linux系统中安装Wetty的详细步骤

发布时间:2021-09-08 18:21:43 来源:亿速云 阅读:216 作者:chen 栏目:系统运维

这篇文章主要讲解了“在Linux系统中安装Wetty的详细步骤”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“在Linux系统中安装Wetty的详细步骤”吧!

Wetty 是什么?

Wetty = Web + tty

作为系统管理员,如果你是在 Linux 桌面下,你可以用它像一个 GNOME 终端(或类似的)一样来连接远程服务器;如果你是在 Windows 下,你可以用它像使用 Putty 这样的 SSH 客户端一样来连接远程,然后同时可以在浏览器中上网并查收邮件等其它事情。

安装步骤

第1步: 安装 epel 源

代码如下:


# wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
# rpm -ivh epel-release-6-8.noarch.rpm


第2步:安装依赖

代码如下:


# yum install epel-release git nodejs npm -y


第3步:在安装完依赖后,克隆 GitHub 仓库

代码如下:


# git clone https://github.com/krishnasrinivas/wetty


第4步:运行 Wetty

代码如下:


# cd wetty
# npm install


第5步:从 Web 浏览器启动 Wetty 并访问 Linux 终端

代码如下:


# node app.js -p 8080


第6步:为 Wetty 安装 HTTPS 证书

代码如下:


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


等待完成。
第7步:通过 HTTPS 来使用 Wetty

代码如下:


# nohup node app.js --sslkey key.pem --sslcert cert.pem -p 8080 &


第8步:为 wetty 添加一个用户

代码如下:


# useradd <username>
# Passwd <username>


第9步:访问 wetty
http://Your_IP-Address:8080
输入你之前为 wetty 创建的证书然后访问。

设置wetty不需要账号登录便可进行命令行操作
我们看到,在浏览器中输入http://127.0.0.1:3000进行访问的时候,还需要我们输入账号密码进行认证(如下图第一行所示)。
在Linux系统中安装Wetty的详细步骤

但在某些应用场景下,我们不需要用户输入账号密码进行认证,而且用户也不一定知道账号密码。我们希望用户打开即可直接进行命令操作。

 在命令行终端中输入node app.js会如下提示,其中列出了启动wetty服务的所有选项说明。
在Linux系统中安装Wetty的详细步骤

从上图的这些选项中看到wetty是通过ssh来进行终端操作的,而其中的--sshauth用于指定ssh的认证模式,其默认为password,表示通过账号密码方式进行认证。
Ssh的认证方式有很四种:hostbased、publickey、keyboard-interactive、password。其中password即我们上面说的账号密码认证方式;publickey是RSA公钥认证方式;其它两个我们暂时不关心。

 Wetty默认采用的是password认证方式,我们可以通过--sshauth选项指定为publickey认证方式即可。关于ssh公钥的认证机制是:

 用户将自己的公钥储存在远程主机上。登录的时候,远程主机会向用户发送一段随机字符串,用户用自己的私钥加密后,再发回来。远程主机用事先储存的公钥进行解密,如果成功,就证明用户是可信的,直接允许登录shell,不再要求密码。

那么我们需要先打开一个命令行终端,然后输入

代码如下:

$ ssh-keygen


来生成我们的公钥和私钥。
在Linux系统中安装Wetty的详细步骤

该命令生成的公钥和密钥默认都保存在~/.ssh目录下,
在Linux系统中安装Wetty的详细步骤

其中id_rsa文件中保存的是私钥,id_rsa.pub文件中保存的是公钥。

 上面ssh公钥认证机制提供我们需要讲公钥保存到远程机器中,保存在登录后的用户主目录的~/.ssh/authorized_keys文件中。公钥就是一段字符串,只要把它追加在authorized_keys文件的末尾就行了。而此时我们的远程机器即是本地机器,于是我们只需要将~/.ssh/id_rsa.pub复制一份并命名为authorized_keys即可。

代码如下:


$ cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys


在Linux系统中安装Wetty的详细步骤

然后我们切换到wetty目录下,启动wetty服务,

代码如下:


$ node app.js -p 3000 --sshauth=publickey


在Linux系统中安装Wetty的详细步骤

然后在浏览器中输入http://127.0.0.1:3000/,可以看到此时不需要输入账号密码即可直接操作,如下图所示,、
在Linux系统中安装Wetty的详细步骤

如果我们嫌每次启动的时候还要指定--sshauth选项太麻烦的话,我们可以直接修改app.js文件中源代码。打开app.js文件,我们可以看到其在第45行指定的sshauth的默认认证方式为password,我们只需要将其修改为publickey即可。
在Linux系统中安装Wetty的详细步骤

感谢各位的阅读,以上就是“在Linux系统中安装Wetty的详细步骤”的内容了,经过本文的学习后,相信大家对在Linux系统中安装Wetty的详细步骤这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI