通常大家都是通过putty之类的ssh客户端,从Windows登录Linux。
但也有些时候,机器上没有装putty之类,又懒得去下载(虽然putty很小),这个时候怎么办。
之前发现了ajaxterm 这个小玩意,可以让你从浏览器中登录你的Linux主机。
一、下载ajaxterm和并安装
ajaxterm的deb包、rpm包都有,这里我为了更为通用些,就以源码包为例。
下载地址:http://antony.lesuisse.org/software/ajaxterm/files/Ajaxterm-0.10.tar.gz
安装过程很简单:
make
sudo make install
二、启动ajaxterm
最简单的启动就是直接输入ajaxterm,然后就可以了,默认的端口号是8022
这时虽然ajaxterm进程已经启起来了,但却只能通过本机(localhost)来访问。要解决这个问题,可以借助于apache的proxy设置。
另外,要想ajaxterm以daemon运行,可以这样:(同时你也可以指定端口号等等)
三、apache的相关设置
(1)在这里需要用到apache的proxy,因此,如果你的apache在编译时没有开启proxy支持,则需要你重新编译一个apache
apache的编译办法(并enable proxy)
下载apache2,下载地址:http://archive.apache.org/dist/httpd/httpd-2.2.11.tar.bz2
编译步骤:
make
sudo make install
(2)apache的设置
最简单的apache设置就是:
编辑httpd.conf文件(这种发型版对apache的编译方式都不同,因此不保证其他系统也是这个文件啊),添加:
ProxyRequests Off
<proxy *>
Order allow,deny
Allow from all
</proxy>
ProxyPass / http://localhost:8022/
ProxyPassReverse / http://localhost:8022/
(3) 这时你重启一下apache试试吧
sudo /opt/httpd/sbin/httpd -f /etc/apache/httpd.conf -k start
(4) 在浏览器中访问你刚才那台机器的地址。
注意:因为我之前在httpd.conf配置了ProxyPass和ProxyPassReverse是"/",也就是说根目录,因此我这里访问的是http://10.20.137.22/,如果你要用子目录的话,修改这里的就可以了。
四、lighttpd的相关设置(Optional)
我个人比较喜欢lighttpd这种轻量级的http服务器,因此也尝试了一下在lighttpd中配置proxy。
编辑/etc/lighttpd/lighttpd.conf这个文件,添加:
proxy.server = (
"/ajaxterm/" =>
(
("host" => "127.0.0.1",
"port" => 8022
)
)
)
注意:我这里使用的是lighttpd 1.4.x,如果是1.5.x的话,我回头再看看。
另外一点还需要注意的是,因为我这里配置的是“/ajaxterm/",因此在浏览器输入的也必须是”http://10.20.137.24:9001/ajaxterm/“,像”http://10.20.137.24:9001/ajaxterm“就访问不了了。
五、ajaxterm的窗口太小了
默认ajaxterm的窗口是80*25,如何让窗口更大一点?
要解决这个问题,可以编辑ajaxterm目录下的,编辑ajaxterm.html文件,将t=ajaxterm.Terminal("term",80,25)改成t=ajaxterm.Terminal("term",120,25),试试,是不是变大了一些了:
这样就把width从80改成了120,但究竟怎么像putty这样的全屏,还没研究出来,不好意思。