标签: ssh-tunnel

用于Java的SSH库

有没有人知道从Java登录SSH的好库.

java ssh ssh-tunnel

185
推荐指数
5
解决办法
25万
查看次数

有人可以用简单的方式解释SSH隧道吗?

虽然我使用一些别名来做ssh隧道或反向隧道,但我从来不知道它是如何工作的.有人知道如何以非常简单的方式解释它吗?

我认为3个主要用途是:

首先,我可以使用我的家用电脑进行ssh foo.mycompany.com,而不使用任何密码(foo是工作中的服务器)

1)如何 foo.mycompany.com:8080去我的家用电脑localhost:3000

2)如果在家,我无法访问http://bar.mycompany.com,但foo可以访问bar,如何使家用电脑能够访问http://bar.mycompany.com

3)如果在家里,我无法访问MySQL数据库db.mycompany.com,但foo可以,如何db.mycompany.com使用ssh隧道也可以访问它.

可以用非常简单的术语解释一下吗?除了这3个,还有其他一些流行的用途吗?谢谢.

ssh ssh-tunnel

54
推荐指数
5
解决办法
3万
查看次数

通过SSH隧道的MySQL连接 - 如何指定其他MySQL服务器?

我有大约50个数据库都设置在不同的主机名,要求我通过SSH隧道连接到它们.

例如:

  • SSH主机在 ssh.example.com

  • MySQL主持人在 mysql1.example.com

我已经设法使用autossh(运行Debian的Web服务器)创建隧道,但我似乎无法弄清楚如何连接到SSH隧道之外的特定MySQL主机名.

键入lsof -i -n | egrep '\<ssh\>'确认隧道正在工作(将端口3307发送到ssh.example.com端口3306)

因此,当我尝试时,我mysql -h 127.0.0.1 -P 3307拒绝Connection.不太奇怪,因为它不是MySQL服务器.

我向你们提问:

如何在mysql1.example.com创建SSH隧道后指定主机?我试过到处寻找,但似乎无法弄明白.

mysql ssh-tunnel

54
推荐指数
4
解决办法
5万
查看次数

rsync通过ssh隧道

我想rsync到我通常通过另一个系统连接的集群节点:

说我先连接到

  ssh user@bridge 
Run Code Online (Sandbox Code Playgroud)

从那里到

  ssh user@clusternode
Run Code Online (Sandbox Code Playgroud)

现在我想从我的工作站rsync到clusternode.我做以下事情:

我知道它不起作用

 ssh_exchange_identification: Connection closed by remote host
Run Code Online (Sandbox Code Playgroud)

为什么不起作用?我需要做什么?


我在这里找到了很多信息:

http://toddharris.net/blog/2005/10/23/rsyncing-through-an-ssh-tunnel/

我想要明白我的问题是桥和目的地之间的第二次认证,所以我改为方法2,这也不是很优雅,但它的工作原理.我想尝试方法3,但我不知道如何配置rsync守护进程

ssh rsync ssh-tunnel

39
推荐指数
3
解决办法
4万
查看次数

ssh:检查隧道是否存活

我编写了一个小的bash脚本,它需要一个ssh隧道来从远程服务器中绘制数据,因此它会提示用户:

echo "Please open an ssh tunnel using 'ssh -L 6000:localhost:5432 example.com'"
Run Code Online (Sandbox Code Playgroud)

我想检查用户是否已打开此隧道,如果没有隧道,则退出并显示错误消息.有没有办法查询ssh隧道,即检查本地端口6000是否真的通过隧道连接到该服务器?

ssh tunneling ssh-tunnel

36
推荐指数
5
解决办法
9万
查看次数

从docker容器访问主机的ssh隧道

使用ubuntu tusty,有一个服务在远程机器上运行,我可以通过ssh隧道从端口转发访问localhost:9999.

我有一个docker容器正在运行.我需要通过主机的隧道从容器内访问该远程服务.

我尝试从容器隧道到主机-L 9000:host-ip:9999,然后127.0.0.1:9000从容器内访问服务无法连接.为了检查端口映射是否打开,我试过了 nc -luv -p 9999 # at host nc -luv -p 9000 # at container

此之后,parag.2但即使 nc -luv host-ip -p 9000 在集装箱内进行操作也没有感知到的沟通

我也试过通过映射端口docker run -p 9999:9000,但是这报告绑定失败,因为主机端口已经在使用中(可能是从主机隧道到远程机器).

所以我的问题是

1 - 如何实现连接?我是否需要设置到主机的ssh隧道,或者这可以通过单独的docker端口映射来实现?

2 - 测试连接是什么的快速方法是什么?通过bash,最好是.

谢谢.

ssh bash netcat ssh-tunnel docker

32
推荐指数
4
解决办法
2万
查看次数

如何在Windows中使用PuTTY创建SSH隧道?

我需要在Windows中使用PuTTY创建SSH隧道,这与Linux中的此命令相同:

ssh -fN -L 2000:SomeIp:2000 myusername@myLinuxBox
Run Code Online (Sandbox Code Playgroud)

我在PuTTY中尝试了很多选项,包括将GUI中的源端口设置为"2000",将目标设置为"SomeIp:2000".目标设置为本地(如-L交换机所示).

我成功登录到我的SSH盒子但未进行端口转发.

这在Windows中是否可行,因此使用此端口(2000)的程序所做的所有连接都将通过此隧道?

windows ssh putty ssh-tunnel

29
推荐指数
3
解决办法
7万
查看次数

eclipse:远程调试防火墙后面的tomcat服务器

在使用jpda启动tomcat之后,在我的公司,我可以在eclipse中远程调试一堆Web应用程序.出于多种原因,我现在需要从公司防火墙外部开发和远程调试这些相同的Web应用程序,我只能通过端口22上的ssh访问该服务器.

我将最需要的端口(svn,nexus,tomcat本身,从服务器或通过服务器)隧道传输到localhost,这些服务工作正常,但我无法以任何方式启动eclipse调试器; 我从第二次尝试开始时"等待数据包XXX"或"拒绝连接"时"连接超时".在服务器上检查nmap,它会在第一次连接尝试之前报告端口打开,然后在此之后关闭.我在catalina.out中没有有趣的输出日志

我用来启动隧道的命令是:

ssh -L 8000:localhost:8000 user@mycompany.com
Run Code Online (Sandbox Code Playgroud)

iptables暂时停止在服务器和本地机器上进行测试.

我错过了什么吗?我是否需要将其他端口转发给localhost?或者它在某种程度上涉及名称解析?

编辑

在从eclipse连接尝试之前打开端口:

root@lnxulisse:/opt/apache-tomcat-6.0.32/bin# lsof -p 2147  -n |grep TCP
java    2147 root    4u  IPv4 640850      0t0     TCP *:8000 (LISTEN)
java    2147 root   38u  IPv6 640859      0t0     TCP *:http-alt (LISTEN)
java    2147 root   40u  IPv6 640865      0t0     TCP *:https (LISTEN)
java    2147 root   46u  IPv6 640908      0t0     TCP 127.0.0.1:18005 (LISTEN)
java    2147 root   48r  IPv6 642625      0t0     TCP 172.24.0.82:48347->172.24.0.82:mysql (ESTABLISHED)
java    2147 root  181u  IPv6 640891      0t0     TCP 172.24.0.82:60353->172.24.0.82:mysql (ESTABLISHED)
Run Code Online (Sandbox Code Playgroud)

之后: …

java eclipse tomcat remote-debugging ssh-tunnel

27
推荐指数
4
解决办法
2万
查看次数

来自Heroku的SSH隧道

我正在提供一个托管在Heroku上的服务,它允许用户使用他们的数据库报告他们自己的数据.我的客户必须将我的Heroku应用程序连接到他们的数据库.他们中的一些人显然害怕通过互联网清除数据.

是否可以使用Heroku从我的应用程序(Play Framework/Java)打开SSH隧道到他们的机器?

注意:我知道从Heroku到远程数据库SSH隧道?但在这个问题上,使用内置的Heroku数据库是可能的.

谢谢,阿德里安

ssh heroku ssh-tunnel

26
推荐指数
1
解决办法
1万
查看次数

如何通过ssh隧道链(双隧道,公司网络中的服务器)连接到Oracle Database 11g服务器?

我有SSH访问'公共'服务器,这也是公司网络的门户.网络中有另一台服务器,其中运行本地 Oracle数据库服务器(此服务器外部无法访问,只接受本地主机数据库连接).当然,我有另一个SSH访问此服务器.

有没有办法从网络外部加入这个Oracle Database 11g服务器?我问是否有类似ssh隧道链,以及我如何配置它.例如,这对于TOAD for Oracle(ORACLE客户端)非常有用.

编辑:这是图像

替代文字 谢谢

oracle ssh database-connection ssh-tunnel

25
推荐指数
2
解决办法
7万
查看次数