浏览器无法通过安全SSH隧道连接到web2py

浏览器无法通过安全SSH隧道连接到web2py,ssh,web2py,Ssh,Web2py,我跟着。SSH到我的服务器似乎工作正常: [~/prg]$ ssh -L 8002:127.0.0.1:8002 username@linux-server.com Linux schemelab2 4.6.5-x86_64-linode71 #2 SMP Fri Jul 29 16:16:25 EDT 2016 x86_64 The programs included with the Debian GNU/Linux system are free software; the exact

我跟着。SSH到我的服务器似乎工作正常:

[~/prg]$ ssh -L 8002:127.0.0.1:8002 username@linux-server.com
Linux schemelab2 4.6.5-x86_64-linode71 #2 SMP Fri Jul 29 16:16:25 EDT 2016 x86_64

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
You have new mail.
但是,当我尝试访问或收到大量拒绝连接的消息时:

channel 3: open failed: connect failed: Connection refused
channel 4: open failed: connect failed: Connection refused
channel 3: open failed: connect failed: Connection refused
channel 3: open failed: connect failed: Connection refused
channel 3: open failed: connect failed: Connection refused
channel 3: open failed: connect failed: Connection refused
channel 4: open failed: connect failed: Connection refused
channel 3: open failed: connect failed: Connection refused
channel 3: open failed: connect failed: Connection refused
channel 3: open failed: connect failed: Connection refused
如果有帮助的话

另请注意:
telnet localhost 8002

schemelab@schemelab2:~$ telnet localhost 8002
Trying ::1...
Trying 127.0.0.1...
telnet: Unable to connect to remote host: Connection refused
schemelab@schemelab2:~$ 

可能是几个可能的原因之一。我假设您最感兴趣的是访问远程服务器上的web2py管理页面,因为web2py不允许通过不安全的通道进行远程管理访问。。。因此,首先,您要确保服务器的IP表允许访问您试图连接到的端口上的服务,否则这些远程连接解决方案可能无法工作(除了Plan C)。有关更多信息,请参见此处:

首先,让我向您展示我是如何通过过去使用的几十台服务器通过SSH隧道连接到web2py的。在我的示例中,我将使用端口8889:

ssh -L 8889:127.0.0.1:8889 username@linux-server.com
与普通SSH一样,您现在应该可以看到服务器的外壳(您已经演示了)。现在,在同一终端中,将cd刻录到服务器的根web2py目录,并执行以下操作(之后不要关闭终端窗口):

现在,在您的本地浏览器访问中,您应该会看到服务器上的web2py管理页面

计划B-使用自签名SSL证书

如果ssh隧道仍然存在问题,那么可以尝试使用自签名SSL证书

制作自签名证书非常容易,而且您还可以使用一些自签名证书生成器(尽管我不建议这样做)来节省更多的时间

生成.crt.key文件后,将sftp上载到服务器并将文件上载到服务器的根web2py目录(或将其上载到Dropbox,将ssh上载到服务器,将cd上载到根web2py目录并设置文件链接)。最后,使用ssh连接到服务器并执行以下操作(之后不要关闭终端窗口):

现在在您的浏览器上输入(注意https)(xxx…是您的服务器IP),或者如果您已经设置了域名,您也可以这样做

现在,您应该在浏览器上看到SSL安全警告。只需忽略此警告并添加一个异常,最后您应该能够从服务器上看到web2py管理页面

计划C-编辑web2py源

这是允许通过不安全通道进行管理的最不推荐的计划,应该作为最后的手段使用。您只需添加一行代码,即可编辑web2py源代码中禁用admin的部分。在里面
可能是几个可能的原因之一。我假设您最感兴趣的是访问远程服务器上的web2py管理页面,因为web2py不允许通过不安全的通道进行远程管理访问。。。因此,首先,您要确保服务器的IP表允许访问您试图连接到的端口上的服务,否则这些远程连接解决方案可能无法工作(除了Plan C)。有关更多信息,请参见此处:

首先,让我向您展示我是如何通过过去使用的几十台服务器通过SSH隧道连接到web2py的。在我的示例中,我将使用端口8889:

ssh -L 8889:127.0.0.1:8889 username@linux-server.com
与普通SSH一样,您现在应该可以看到服务器的外壳(您已经演示了)。现在,在同一终端中,将cd刻录到服务器的根web2py目录,并执行以下操作(之后不要关闭终端窗口):

现在,在您的本地浏览器访问中,您应该会看到服务器上的web2py管理页面

计划B-使用自签名SSL证书

如果ssh隧道仍然存在问题,那么可以尝试使用自签名SSL证书

制作自签名证书非常容易,而且您还可以使用一些自签名证书生成器(尽管我不建议这样做)来节省更多的时间

生成.crt.key文件后,将sftp上载到服务器并将文件上载到服务器的根web2py目录(或将其上载到Dropbox,将ssh上载到服务器,将cd上载到根web2py目录并设置文件链接)。最后,使用ssh连接到服务器并执行以下操作(之后不要关闭终端窗口):

现在在您的浏览器上输入(注意https)(xxx…是您的服务器IP),或者如果您已经设置了域名,您也可以这样做

现在,您应该在浏览器上看到SSL安全警告。只需忽略此警告并添加一个异常,最后您应该能够从服务器上看到web2py管理页面

计划C-编辑web2py源

这是允许通过不安全通道进行管理的最不推荐的计划,应该作为最后的手段使用。您只需添加一行代码,即可编辑web2py源代码中禁用admin的部分。在里面
可能的副本可能的副本谢谢。它失败的原因是。。。如果您注意到他们在前两个ssh命令后面都放了一个符号,而第一个命令后面应该只有一个。谢谢。它失败的原因是。。。如果您注意到他们在前两个ssh命令后面都放了一个符号,而第一个命令后面应该只有一个。
> cd mywebite.com
> python web2py.py -a password -p 8889 -i 0.0.0.0 server.crt -k server.key
*web2py startup stuff*
'...'
request.is_local=True #TESTING ONLY. COMMENT OUT OR REMOVE IN PRODUCTION!
if request.env.http_x_forwarded_for or request.is_https:
    session.secure()
elif not request.is_local and not DEMO_MODE:
    raise HTTP(200, T('Admin is disabled because insecure channel'))
'...'