更新:TL\DR 请参阅下面的答案。

更新:TL\DR 请参阅下面的答案。

目标:将 Ubuntu 和 Firefox 配置为通过 SSH 连接到远程华硕路由器,并通过 Firefox 访问远程路由器的配置 GUI。

top从远程路由器返回:

PID     PPID USER    STAT   VSZ %VSZ CPU %CPU COMMAND
22984   493  user    S     1132  0.4   0  0.0 dropbear -p 22 -j -k

远程路由器配置了 openssh-sftp-server 和 Merlin-Asus 固件:

ipkg list_installed | grep  ssh

返回:

openssh-sftp-server - 5.9p1-1 - sftp-server only from a FREE version 

网络连接工具的 SSH 协议套件。

Ubuntu SSH动态端口转发 是用以下内容创建的:

ssh -D localhost:3000 [email protected]

火狐代理配置:

在此输入图像描述

隧道经过测试http://www.whatismyip.com但是,测试无法返回网页。在 BASH 控制台中观察到以下错误消息:

channel 3: open failed: administratively prohibited: 
channel 4: open failed: administratively prohibited: 
channel 5: open failed: administratively prohibited: 
channel 6: open failed: administratively prohibited: 

问题

  • 隧道是否从命令行正确配置?
  • Firefox 中的隧道配置是否正确?
  • 可以执行哪些测试来确认问题?

感谢诊断问题和任何实现目标的可行指导。

更新:TL\DR 请参阅下面的答案。

https://unix.stackexchange.com/a/569165/182280

答案1

如果您的目标是在运行 ssh (dropbear) 的同一路由器上访问路由器配置 GUI,那么您不是在寻找socks proxy,而是在寻找本地端口转发

在 Firefox 主机上设置 ssh 隧道(假设您的 Web UI 在端口 80 上提供服务):

ssh -L 3000:localhost:80 [email protected]

并将 Firefox 指向http://localhost:3000.

(为了更好地理解,请注意:上面的命令是相对于您的路由器的,即 ssh 服务器从其本地上下文localhost转发。)localhost:80

它的作用是打开本地端口 3000 并通过已建立的 ssh 连接将其隧道连接到路由器,并将其连接到路由器上端口 80 上运行的服务。

编辑:您还必须确保 dropbear 运行时带有-a允许端口转发的选项。 (看掉落熊选项.) 这可以在 Web UI 中实现,如下所示这个答案

哈特哈,

企鹅

答案2

SSH 动态端口转发已正确配置。为了实现这一目标,华硕路由器有一个允许 SSH 端口转发的设置,必须启用该设置:

在此输入图像描述

penguin 建议:为了额外的安全性,请考虑添加/更新包含您的公钥的authorized_keys文件(通常在 中)。/root/.ssh/authorized_keys测试后您可以无需密码登录(使用您的公钥/私钥对)离开 Allow Password Login

相关内容