利用Ajaxterm完成远程管理任务
进行远程管理通常要求访问远程系统上的某个终端,但是如果你不想允许直接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
改变路径来适应你的安装,或者使用压缩包中提供的示例初始化脚本。
- 最新文章
- 如何升级网络(下)[12-27]
- 使用Windows Server定时调度工具[12-27]
- 适时对网络进行升级[12-27]
- AD域和信任关系 企业10须知[12-27]
- FTTH 下一代有线宽带接入技术[12-27]
- IT全面运维 路有多长[12-27]
- 相关文章
- 办公自动化网络维护与管理经验谈[12-27]
- 加强网络管理完善法律服务[12-27]
- 如何配置Windows SBS 2003 R2远程管理[12-27]
- 管理员如何使用Munin监视服务器[12-27]
- 网吧资源有效利用之——带宽管理[12-27]
- CIO也要懂网络管理[12-27]
