![]() |
1
27
这是我的测试。希望它有用。
|
![]() |
2
40
Netcat是您的朋友:
|
![]() |
3
17
autosh是最佳选择-检查过程并非在所有情况下都有效(例如僵尸进程、网络相关问题) 例子:
|
![]() |
4
9
这实际上更像是一个服务器故障类型的问题,但是您可以使用netstat。 类似:
这将告诉您是否有一个ssh进程在监听指定的端口。它还将告诉您进程的PID。 如果您真的想再次检查ssh进程是否是以正确的选项启动的,那么您可以通过pid查找该进程,如下所示
|
![]() |
6
1
电击是一个很好的工具,可以在主机之间建立半永久性连接。 |
![]() |
7
1
这些是测试或排除SSH隧道故障的更详细步骤。您可以在脚本中使用其中的一些。我添加这个答案是因为在两个应用程序停止工作后,我必须对它们之间的链接进行故障排除。仅仅对ssh进程进行grepping是不够的,因为它仍然存在。我不能用
让我们从头开始。假设有一台机器,它将被调用 地方的 IP地址为10.0.0.1,另一个地址为 遥远的 ,10.0.3.12。我将在下面的命令前面加上这些主机名,所以很明显它们是在哪里执行的。 目标是创建一个隧道,将TCP通信从端口123上远程计算机上的环回地址转发到端口456上的本地计算机。这可以通过以下命令在本地计算机上完成:
要检查进程是否正在运行,我们可以执行以下操作:
如果在输出中看到命令,我们可以继续。否则,检查ssh密钥是否安装在远程中。注意,在远程IP之前排除用户名,使得ssh使用当前用户名。 接下来,我们要检查远程上的隧道是否打开:
我们应该得到类似这样的输出:
真的很高兴
看见
一些数据从远程传输到主机。这里就是
网络猫
进来。在CentOS上可以安装
首先,打开本地计算机上的侦听端口:
然后在遥控器上建立连接:
如果打开本地机器的第二个终端,可以看到连接。像这样:
更好的是,继续在遥控器上输入:
您应该看到这个镜像在本地终端上:
隧道正在施工!但是如果你有一个申请,叫 应用程序名称 ,哪个应该在本地机器的端口456上监听?终止两边的NC,然后运行应用程序。你可以检查它在听 对的 港口与 this 以下内容:
顺便说一下,在远程服务器上运行相同的命令应该显示sshd正在监听端口127.0.0.1:123。 |
![]() |
8
0
|
![]() |
9
0
我们可以用ps命令检查
将显示所有运行的SHH服务,我们可以找到列出的隧道服务 |
![]() |
OM222O · Bash命令替换问题 1 年前 |
|
Kilian Calefice · Docker容器外的SSH隧道 1 年前 |
|
Ahmed0LorD · SSH服务器a上载配置文件时出错 1 年前 |
![]() |
RamenCoder · 易出错的剧本外壳模块不工作 1 年前 |
![]() |
asayke · 写入远程linux机器上的文件[关闭] 1 年前 |