我到底该怎么做才能从 SSH 远程访问我的服务器?

我到底该怎么做才能从 SSH 远程访问我的服务器?

我在让远程隧道工作方面遇到了太多麻烦。主要是,我需要在终端中输入什么才能让它工作。我知道这可能是重复的,但至少这会给我指明正确的方向。

以下是我目前所做的:

1) 我进入 Xfinity 网关页面并打开端口转发。2) 我将服务器的 IPv4 和 IPv6 地址添加到端口转发设置对话框中,并将端口 22 作为监听端口,不管这意味着什么。我遇到的问题如下:

我该在终端上写什么来访问我的服务器!

我写吗

"ssh username@Router_IP_Address" or "ssh -R (some random thing about port 
22):localhost:(port 22 again for some reason) username@server_ip"

我已经寻找答案太久了,我只是需要一个答案。我在 Ubuntu 上花了 4 年时间,从来没有遇到过任何问题。这个问题已经持续了 3 天。请帮助我。

答案1

您没有明确说明您要做什么。

  1. 您想要通过 ssh 进入互联网上的某个远程服务器吗?

  2. 您正在尝试通过 ssh 进入本地服务器吗?

  3. 您的计算机是服务器吗?您正在尝试从互联网登录到您的计算机吗?

如果是第一种或第二种情况,则不需要端口转发,在这些情况下您要运行的命令是,

ssh <username>@<server address>

默认情况下,它假定端口是 22。如果不是 22,则需要运行此命令。

ssh <username>@<server address> -p <port number>

如果是第三种情况,那么,首先,您需要在计算机上启动 ssh 服务器。在 Ubuntu 上,您可以启动 ssh 服务器sudo service sshd start 。现在,正确设置端口转发,简而言之,如果有人在端口 22(或您设置端口转发的任何端口)上向您的公共 IP 地址发送请求,它应该将该请求发送到正在运行 ssh 服务器的本地服务器。

完成后,您应该能够通过运行此命令从互联网访问本地计算机。

ssh <your pc's username>@<Your public IP address> -p <Port that you used in port forwarding>

如果这些听起来令人困惑的话请告诉我。

答案2

如果我理解正确的话,您想通过互联网连接到您的家用机器(通过您的家用路由器进行端口转发)。

其语法如下(如果 123.456.789.00 是您的家庭 IP 地址):

ssh [email protected]

或者如果您有域名:

ssh [email protected]

答案3

因此,如果您尝试通过 ssh 隧道传输一个端口,则只需使用此命令。它将使用路由器的端口 22。

ssh [用户]@[远程计算机 ip 地址] -L [本地计算机端口]:本地主机:[远程计算机端口]

例如

远程控制[电子邮件保护]-L 10000:本地主机:80

现在,您可以通过端口 22 的加密连接在本地主机的端口 10000 上访问 10.10.10.10:80 的网站。

相关内容