科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网网络频道利用Ajaxterm完成远程管理任务

利用Ajaxterm完成远程管理任务

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

大多需要进行远程管理的服务器往往也安装了Apache服务。因此,通过使用Ajaxterm可以很容易完成这项功能。

作者:ZDNet China 2007年4月23日

关键字: 网络管理

  • 评论
  • 分享微博
  • 分享邮件

进行远程管理通常要求访问远程系统上的某个终端,但是如果你不想允许直接ssh访问,我们就没有多少其它的选择。目前,随着针对ssh服务的端口探测和蛮力攻击的增加,人们就不希望公共IP能够侦听ssh,但是为了完成远程管理任务又不得不这样做。

一个简单解决方案可以是:通过Web运行终端系统。大多需要进行远程管理的服务器往往也安装了Apache服务。因此,通过使用Ajaxterm可以很容易完成这项功能。

Ajaxterm是用Python脚本写的一个终端系统,其中使用了一些AJAX JavaScript用于客户端处理,它的工作原理是:通过运行ajaxerm.py脚本,可以在本地机上侦听HTTP请求,端口号为8022。使用Apache代理命令,你可以强迫某个位置如https://www.myhost.com/term/ 前导返回请求信息给ajaxterm.py,用来完成所有基于Web终端的支持功能。

首先,下载并解压Ajaxterm-0.10.tar.gz压缩包,这是发表本文时的最新版本。然后运行ajaxterm.py。通过命令如下:# ./ajaxterm.py

如果你是作为根用户运行ajaxterm.py,将会执行 /bin/login 命令来连接;否则的话,将会打开ssh命令连接到本地主机。

下一步是配置 Apache。显然,这应该包括配置SSL和设定安全密码(实质上就是你需要提供两次登陆信息来访问终端)。Apache配置如下:

ProxyRequests off

<Proxy *>

AuthUserFile /srv/www/mysite.com/.htpasswd-ssl

AuthGroupFile /dev/null

AuthName admin

AuthType basic

require valid-user

 Order deny,allow

Allow from all

</Proxy>

ProxyPass /term/ http://localhost:8022/

ProxyPassReverse /term/ http://localhost:8022/

我们需要使用/srv/www/mysite.com/.htpasswd-ssl文件来获得HTTP认证许可,如果认证成功,那么连接将会被建立。所有请求信息都回传到http://localhost:8022/,而其请求信息也由此发出,这就是ajaxterm.py服务。

将下面的语句加入到/etc/rc.d/rc.local文件中,或者一个类似的开始脚本将会使ajaxterm.py从根用户启动。

LANG="" /usr/local/ajaxterm/ajaxterm.py -d

改变路径来适应你的安装,或者使用压缩包中提供的示例初始化脚本。

(责任编辑:陈毅东

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章