我对这件事很迷茫。从手册页:
-f Requests ssh to go to background just before command execution.
在使用-f选项启动SSH之后,我有了一个工作隧道。但是在我使用完它之后,我不知道如何与它进行进一步的交互。例如,当我完成SSH隧道时,我无法关闭它。
我知道通常的方法行不通。例如,jobs什么也不返回。~命令没有被识别(而且我也不知道具体如何使用它)。
然而,pgrep告诉我,SSH隧道仍然在运行(在我关闭终端之后,等等)。我如何与它互动?我该如何关闭它?
我正在努力理解是否可能以及如何实现以下内容。
假设我有一个机器T (目标),我想从远程(最好是通过ssh)访问它。
T位于路由器/防火墙R之后,我不能将端口(例如,22 of R )转发到T的端口22。总之,ssh不可能直接访问T。
现在说
我有一个可以完全控制的机器A。
我可以从T到A,即T: ssh用户@A成功。
Q1:我能用这个从A访问T的外壳吗?也就是说,我可以使用从T创建的连接到A,使用来自A的T吗?
T ---> ssh ----> A # this is possible
T <--- ? shell
在像ssh <destination> true这样的命令中,ssh在目的地上执行命令true,然后终止会话。当运行ssh <destination> exit时,是什么启动了会话的终止?是ssh程序本身和其他命令一样,还是目标执行的是exit命令本身?
SSH手册上写着,The session terminates when the command or shell on the remote machine exits and all X11 and TCP connections have been closed.
我正试图通过跳转服务器在django应用程序中引导我的db连接,但似乎无法工作,因为django manage.py处理和处理连接。这是我在settings.py里的
#process ssh_key first
ssh_key= os.getenv('SSH_KEY', '').encode('utf8').decode('unicode_escape')
server ={}
with sshtunnel.open_tunnel(
(os.environ.get('SSH_HOST'),int(os.ge
我试图使用以下命令连接到datalab:
datalab connect <datalab name> --no-user-checking
它提供了以下错误消息:
Connecting to <datalab name>.
This will create an SSH tunnel and may prompt you to create an rsa key pair. To manage these keys, see https://cloud.google.com/compute/docs/instances/adding-removing-ssh-keys