29

我正在尝试使用 rsub 在 ssh 中创建隧道以升华文本,我运行命令 rmate .profile 但我得到以下响应。我正在使用 wateroof 打开 1p4 和 ip6 上的端口 52968,我按照这里的说明操作,但它只是不起作用

我在本地机器上运行 osx,在远程机器上运行 ubuntu 12.04 我在 digitalocean 上通过 ssh 进入

root@anderskitson:~# rmate .profile
/usr/local/bin/rmate: connect: Connection refused
/usr/local/bin/rmate: line 186: /dev/tcp/localhost/52698: Connection refused
Unable to connect to TextMate on localhost:52698
4

9 回答 9

53

我遇到了同样的问题。

让 remoteHost = 您尝试 ssh 到的机器的 IP 或主机名。

ssh -R 52698:localhost:52698 remoteHost从本地机器上运行,之后rmate .profile在 remoteHost 上工作。

这使我确定本地计算机上的 ~/.ssh/config 不正确。

我将 ~/.ssh/config 设置为如下所示:

Host remoteHost
  RemoteForward 52698 localhost:52698

自从我做出改变以来,它一直在稳定工作。

于 2013-10-07T23:55:22.893 回答
24

对于在Windows上使用PuTTy遇到相同错误的任何人,此评论者提供了很好的说明:

  1. 在 PuTTy 的配置窗口中,导航到 Connection > SSH > Tunnels 窗格
  2. 在“源端口”字段中,输入 52698
  3. 在“目的地”字段中,输入 127.0.0.1:52698
  4. 选择“远程”和“自动”单选按钮
  5. 点击“添加”按钮
  6. 如果要保留这些设置,请转到会话窗格并保存。

这是一张视觉上解释的图像:

rsub 配置 windows putty sublime text ssh

于 2014-07-01T14:56:51.183 回答
6

我有同样的问题,这对我有用。如果您希望使用多台服务器,请按照此处完全显示的方式执行以下操作:

Host *
  RemoteForward 52698 localhost:52698

我查阅了这个链接:配置 SSH 配置文件并意识到你可以在配置文件中使用 *。

通配符也可用于允许应具有更广泛范围的选项。

于 2016-01-14T20:56:23.707 回答
4

我第一次尝试使用 VS Code 进行设置,并得到了通用的“连接被拒绝”错误,即使我的配置看起来不错。原来是因为我在安装 rmate 扩展(远程 VSCode)后没有重新加载 IDE。确保 rmate 服务器在您的本地计算机上处​​于活动状态,无论您使用什么 IDE。

于 2017-07-25T13:09:26.580 回答
3

我遇到了同样的问题,并在连接时HOSTNAME用实际替换了它: 例如:到IP-Address
ssh pi@raspberrypi.localssh pi@192.168.1.1

于 2016-12-11T09:07:29.730 回答
3

我遇到了同样的问题,浏览了大部分博客,我做了所有被告知的事情。最后,我发现自己的 textmate 或 submile 编辑器已关闭(强制退出),这导致了问题。

于 2018-02-28T17:02:50.627 回答
1

例如,我~/.ssh/config通过远程转发与 DigitalOcean 连接的 SSH 配置文件如下所示:

Host DigitalOcean
  Hostname xxx.xxx.xxx.xxx
  User username
  RemoteForward 52698 localhost:52698

并在终端中调用

ssh DigitalOcean

rmate 然后与我的本地 Atom 编辑器连接良好

于 2018-12-29T03:17:17.780 回答
0

rmate无缘无故停止工作。原来我已经绊倒了“中间人”的检查。我在做的时候看到了这个警告ssh——

\@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

就我而言,这个警告是意料之中的,所以我忽略了它。这可能不适用于您,因此请验证主机身份。没有意识到警告末尾的这一行——

Port forwarding is disabled to avoid man-in-the-middle attacks.

难怪rmate停止工作。验证主机身份,然后清除违规条目~/.ssh/known_hosts使警告消失并rmate重新开始工作。

于 2019-10-07T17:56:55.817 回答
0

我偶尔会遇到这个问题,至少对于我的设置(可能非常特殊),我发现杀死 ssh 会话的僵尸实例可以完成这项工作。

我的特定设置:

我通过我的 OSX 主机上的 VM (VMWare Fusion) 运行 Linux。然后我从 OSX SSH 进入 Linux 主机,并从 Linux 端启动 sublime。我通常有几个 ssh 会话正在运行。

我最近重新启动了我的 Mac(没有先关闭 VM,这可能很糟糕),一旦我回到 VM,就无法启动 Sublime - 得到 OP 提到的“连接被拒绝”错误。

所以我ps aux在 Linux 端做了一个,并寻找所有实例:

root      657399  0.0  0.1  13956  9332 ?        Ss   14:52   0:00 sshd: user [priv]
user      657461  0.0  0.0  14088  5420 ?        S    14:52   0:00 sshd: user@pts/1

user我的用户名在哪里)。我杀死了user工作,例如657461上面,瞧!现在每件事都有效。当然,在终止这些作业的过程中,您可能会终止您当前所在的 ssh 会话,因此您必须重新登录到您的会话。

这可能不适用于在远程计算机上没有必要的终止权限的用户,所以不知道这有多大用处,但我想我会把它放在那里。

于 2021-03-23T21:04:08.300 回答