如何从远程服务器登录到我自己的电脑?

如何从远程服务器登录到我自己的电脑?

为了进行实验,我需要从同一域(即大学网络)下的远程电脑登录到我自己的电脑。这种情况下如何使用SSH进行远程登录呢?

举个例子,我在 X 大学的两台机器上有帐户,分别是me@machine_a.cs.x.came@machine_b.cs.x.ca,我的个人笔记本电脑帐户是nawshad@ubuntu。我需要提供哪些额外信息?

答案1

正如 daveh 的回答所指出的那样,这可能就像发出 一样简单ssh nawshad@ipaddress

然而,您的电脑很可能无法直接从互联网访问,即它位于某种路由器后面。

一种选择是告诉路由器让到您 PC 的流量通过。如何执行此操作取决于路由器。仅当您具有路由器的管理访问权限并且不涉及其他路由器时,此选项才有效。

另一种选择是创建反向 SSH 隧道,即从您的 PC 登录到一台(或两台)大学计算机,同时创建从大学计算机到 PC 的 SSH 端口的隧道。当您在大学时,您可以保持该连接,这样您就可以使用 SSH 会话创建的隧道重新登录到您的 PC。

这个过程已经被描述为http://www.vdomck.org/2005/11/reversing-ssh-connection.html;抱歉链接,但我不想将所有信息从那里复制到这里。

原则上,您从 PC 发出的命令是(假设您想从 me@machine_b.cs.x.ca 连接)

ssh -f -N -R 10000:localhost:22 me@machine_b.cs.x.ca

然后,在大学时,您可以使用以下命令连接到家庭电脑:

ssh -p 10000 nawshad@localhost

您可以将10000两个命令中的 更改为不同的值;只要确保它大于 1024 即可。

注意:当此隧道处于活动状态时,每个有权访问的人machine_b.cs.x.ca都可以尝试登录您的系统;确保您拥有正确的密码。

要关闭隧道,只需终止相应的 ssh 进程,例如:

pkill -f 'ssh -f -N -R 10000:localhost:22 me@machine_b.cs.x.ca'

答案2

是的。这就是使用 SSH 的一个典型例子。

除非您的个人计算机已在大学的 DNS 中注册(这不太可能),否则您最好通过 ipaddress 进行此操作。

首先确保您的个人计算机上启用了 SSH。检查ps -ef | grep sshd | grep -v grep,如果没有安装并启动 sshd。

一旦运行,尝试通过 IP 地址 ssh 到您的计算机,例如,系统应该提示您输入密码。ssh [email protected]

祝你好运!

相关内容