服务器之家:专注于服务器技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|系统进程|Fedora|注册表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服务器之家 - 服务器系统 - Linux - 在Linux系统中安装web端的远程连接工具Wetty

在Linux系统中安装web端的远程连接工具Wetty

2019-06-29 14:00cnblogslienhua34 Linux

这篇文章主要介绍了在Linux系统中安装web端的远程连接工具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系统中安装web端的远程连接工具Wetty

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

 在命令行终端中输入node app.js会如下提示,其中列出了启动wetty服务的所有选项说明。
在Linux系统中安装web端的远程连接工具Wetty

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

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

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

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

 

复制代码
代码如下:
$ ssh-keygen

来生成我们的公钥和私钥。
在Linux系统中安装web端的远程连接工具Wetty

 

该命令生成的公钥和密钥默认都保存在~/.ssh目录下,
在Linux系统中安装web端的远程连接工具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系统中安装web端的远程连接工具Wetty

 

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

复制代码
代码如下:

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

在Linux系统中安装web端的远程连接工具Wetty

 

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

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

延伸 · 阅读

精彩推荐
  • Linuxlinux中rmdir命令使用详解(删除空目录)

    linux中rmdir命令使用详解(删除空目录)

    今天学习一下linux中命令: rmdir命令。rmdir是常用的命令,该命令的功能是删除空目录,一个目录被删除之前必须是空的 ...

    linux命令大全5372019-11-19
  • Linux确保Linux系统安全的前提条件 漏洞防护

    确保Linux系统安全的前提条件 漏洞防护

    Linux 作为开放式的操作系统受到很多程序员的喜爱,很多高级程序员都喜欢编写Linux操作系统的相关软件。这使得Linux操作系统有着丰富的软件支持,还有无...

    Linux之家2642020-04-11
  • LinuxLinux lnmp下无法使用mail发邮件的两种解决方法

    Linux lnmp下无法使用mail发邮件的两种解决方法

    在配置了lnmp环境后,出现了mail函数不能发送邮件的问题,其实有两种方法,一是使用sendmail组件,而是使用postfix。下面为大家一一介绍下 ...

    Linux之家4042019-09-17
  • Linux手把手教您在 Linux 上使用 GPG 加解密文件

    手把手教您在 Linux 上使用 GPG 加解密文件

    在本教程中,我将告诉你如何用 GPG 加密和解密文件。这是一个简单的教程,你可以在你的 Linux 系统上尝试所有的练习。这将帮助你练习 GPG 命令,并在你...

    Linux中国6962021-12-15
  • LinuxLinux常用的日志文件和常用命令

    Linux常用的日志文件和常用命令

    成功地管理任何系统的关键之一,是要知道系统中正在发生什么事。 Linux 中提供了异常日志,并且日志的细节是可配置的。Linux 日志都以明文形式存储,所...

    Linux教程网2632020-04-18
  • LinuxLinux上设置用户通过SFTP访问目录的权限的方法

    Linux上设置用户通过SFTP访问目录的权限的方法

    这篇文章主要介绍了Linux上设置用户通过SFTP访问目录的权限的方法,SFTP可以理解为使用SSH协议进行FTP传输的协议,因而同时要对OpenSSH进行相关设置,需要的朋...

    OSChina10022019-06-19
  • Linux详解Linux系统下PXE服务器的部署过程

    详解Linux系统下PXE服务器的部署过程

    这篇文章主要介绍了Linux系统下PXE服务器的部署过程,包括对PXE的API架构作了一个基本的简介,需要的朋友可以参考下...

    运维之道9812019-07-04
  • LinuxLinux中环境变量配置的步骤详解

    Linux中环境变量配置的步骤详解

    Linux中环境变量包括系统级和用户级,系统级的环境变量是每个登录到系统的用户都要读取的系统变量,而用户级的环境变量则是该用户使用系统时加载的...

    Myths7882022-02-10