如何在可通过ssh连接的服务器上打开Web浏览器?

时间:2016-10-30 16:19:53

标签: apache perl unix ssh server

我在大学的计算机科学课程(瑞尔森)和我学习perl编程。

我们学习的方式是在我们大学的服务器上托管perl脚本,然后用它们做点什么。

我远离大学,大学的服务器对哪些IP可以使用www2子域(运行perl脚本的子域)非常严格。我工作的IP给我带来了错误:



禁止

您无权访问此服务器上的/〜w3dixon/cgi-bin/lab4.cgi。

Apache / 2.2.22(Debian)服务器,位于www2.scs.ryerson.ca端口80



Here's the link, if you want to try to access the script yourself.

所以我被封锁了。通常情况下,我会联系系统管理员并让他们解锁我,但是今晚有一个工作的perl脚本。 (我也试过使用VPN,它也被阻止了。)

我的解决方案是将我的mac上的终端和/或PC上的Putty连接到Ryerson的服务器,并使用unix命令' lynx'运行我的脚本(因为他们不会阻止自己的IP)。

我取得了一些成功,直到我尝试使用html表单中的perl get方法(我从https://www.tutorialspoint.com/perl/perl_cgi.htm复制粘贴脚本只是为了开始,看看语法正确的代码是否能正常使用我的lynx策略)。

因此,当我使用大学的终端(使用谷歌浏览器)处理我的脚本时,我的脚本工作正常。

Ryerson(我的大学),没有设置远程访问程序(除了ssh),但有没有办法通过我的机器上安装的GUI浏览器上的服务器访问我的网页?

1 个答案:

答案 0 :(得分:1)

SSH隧道很可能是做到你想要的最可行和最简单的方法。像这样设置隧道:

ssh -L8080:www2.scs.ryerson.ca:80 username@www2.scs.ryerson.ca

如果www2服务器不是您通过SSH连接的主机,只需在命令中用SSH服务器替换它的第二个实例。

我在这里使用端口8080,因为这可以减轻您的root权限。

现在,在您的本地工作站上,在浏览器中,浏览到:

http://localhost:8080