天道酬勤,学无止境

ssh-tunnel

SFTP、SSH 和 SSH 隧道(SFTP, SSH & SSH Tunneling)

问题 我想详细了解 SSH 隧道的概念,因为我正在围绕这个主题学习一些东西。 我已经在公共论坛上浏览了一些细节,但仍然有一些问题。 SFTP 服务正在远程服务器中运行,我已获得连接到它的凭据。 我正在使用像 WinScp 这样的 GUI 来连接远程服务器。 SSH 隧道在这里的作用是什么? 远程 SFTP 服务器管理员要求我从我的机器生成 RSA 公钥并将其添加到远程服务器。 现在,我可以在没有密码的情况下从 SSH 终端直接连接到服务器。 SSH 隧道在这里的作用是什么? 隧道是隐式的还是需要在某些情况下显式调用? 请说清楚。 回答1 SSH 隧道、SSH 控制台会话和 SFTP 会话在功能上是无关的。 它们可以在单个会话期间同时使用,但通常情况并非如此,因此不要试图在 ssh/sftp 会话中找到隧道的任何关系或角色。 将 ssh 隧道与多个 ssh/sftp 会话混合使用是没有意义的。 基本上,您将使用专用的 ssh 会话进行隧道传输,并使用额外的会话进行控制台和传输。 SSH 隧道到底是什么? 通常双方(您和服务器)都位于不同的网络中,在这些网络之间不可能进行任意网络连接。 例如,服务器可以在其网络上看到由于 NAT 而对外部网络不可见的工作站节点和服务节点。 这对于发起到远程服务器的连接的用户同样有效:因此您(ssh 客户端)可以看到您的本地资源(最坏的节点和服务器节点)

2021-12-05 18:56:17    分类:技术分享    ssh   sftp   ssh-tunnel

如何使用 Node.js 建立到 MongoDB 数据库的 SSH 隧道连接(How to use Node.js to make a SSH tunneling connection to a MongoDB database)

问题 我的凭据与 Robomongo 完美配合,但我无法与 node.js 建立连接我尝试使用 ssh2 和 tunnel-ssh npm 模块建立连接,但两次都失败了。 - mongo 连接不需要密码 - ssh 连接是使用 pem 密钥建立的 这是我在 ssh2 模块中使用的代码,我可以正确建立隧道,但 mongo 连接失败 var Client = require('ssh2').Client; var conn = new Client(); conn.on('ready', function() { console.log('Client :: ready'); //mongo connection mongoose.connect('mongodb://localhost:27000/'); var db = mongoose.connection; db.on('error', console.error.bind(console, 'connection error:')); db.once('open', function() { console.log("database connection established"); var users = db.collection('user'); var getallUsers = function (date

2021-11-30 14:23:54    分类:技术分享    node.js   mongodb   ssh   mongoose   ssh-tunnel

使用 ssh 端口转发运行 Erlang Observer(Run Erlang Observer with ssh port forwarding)

问题 我有一个远程 Erlang 节点和本地开发人员的 PC。 我想启动本地节点debug@127.0.0.1 ,启动观察者,调用c:nl/1等调试动作。 我是这样写的: #!/bin/sh export ERL_EPMD_PORT=43690 PORT=`ssh -l user target -p 5022 "/usr/bin/epmd -names" | awk '$2 == "target-node" {print $5}'` pkill -f ssh.*-fxN.*target ssh -fxNL 43690:`hostname`:4369 target -p 5022 -l user ssh -fxNL $PORT:`hostname`:$PORT target -p 5022 -l user ssh -fxNR 9001:`hostname`:9001 target -p 5022 -l user erl -name dev@127.0.0.1 -setcookie ABCDEFFJKGSK \ -kernel inet_dist_listen_min 9001 inet_dist_listen_max 9001 \ -eval "net_adm:ping('nodename@target')." pkill -f ssh.*-fxN.*target

2021-11-28 17:24:35    分类:技术分享    ssh   erlang   portforwarding   ssh-tunnel

How to setup ssh tunnel for ipython cluster (ipcluster)

I would like to run an ipython cluster on a ssh-accessible server and on some other machines all of which can connect to each other via ssh. The network is not trusted. I have tried setting up ssh tunneling using what I understood from the documentation on ipcontroller and ipengine. However the only way that I ended up getting a communication working is by implementing the tunnels manually. Using the instruction from Jean-Francis Roy one would first fix all the necessary ports controller-host ~ $ ipcontroller --ip=0.0.0.0 --location=127.0.0.1 --port=10101 \ --HubFactory.hb=10102,10112 \ -

2021-11-26 01:04:20    分类:问答    parallel-processing   ipython   ssh-tunnel

如何使用堡垒主机通过 SSH 连接到 Redshift(How to use bastion host to SSH to Redshift)

问题 我一直在尝试弄清楚当 Amazon Redshift 集群是私有的而不是可公开访问的集群时如何连接到它们。 我正在尝试将数据从我们当前的 MySQL 数据库安全地移动到 Redshift 中的集群。 目前我有一个 Python 脚本,它创建数据的 CSV,将其放入 S3,为数据创建一个表,然后使用 COPY 将其放入 Redshift。 我们正在使用 Python 脚本来自动化该过程。 但是,当集群设置为私有时,我完全无法与 Redhsift 建立连接。 我做了一些挖掘,发现 SSH 隧道是一个潜在的解决方案。 虽然据我所知 Redshift 不支持 SSH,但可以使用堡垒主机通过运行 psql 的 ec2 实例进行连接。 问题是我需要在 Python 脚本中执行此操作,以尽可能保持流程自动化。 我创建了一个 ec2 实例并使用 PuTTY 将 psql 加载到它,但是我不确定如何将该实例用作堡垒主机,即连接到它并使用它连接到 Redshift,以及如何在 python 中实际执行此操作如果可能的话,脚本。 有没有人做过类似的事情或知道如何连接到 ec2 以及从 ec2 到 redshift? 回答1 Bastion 将仅用于将请求从您自己的计算机转发到 Amazon Redshift。 你不需要安装任何软件(例如psql )的堡垒。

2021-11-24 14:26:23    分类:技术分享    python   amazon-ec2   amazon-redshift   putty   ssh-tunnel

Scp through ssh tunnel opened

I want to send files from machineA which has opened a reverse tunnel with a server. The reverse tunnel connects port 22 on machineA with port 2222 on the server: autossh -M 0 -q -f -N -o "ServerAliveInterval 120" -o "ServerAliveCountMax 1" -R 2222:localhost:22 userserver@server.com If I do: scp file userserver@server.com:. then SCP sends the file with a new login over SSH, in my case using public/private key. But if I do: scp -P 2222 file userserver@localhost:. I get a "connection refused" message. The same happens if I replace 2222 above with the port found with: netstat | grep ssh | grep

2021-11-24 08:51:35    分类:问答    ssh   scp   ssh-tunnel

SFTP, SSH & SSH Tunneling

I would like to understand the concept of SSH tunneling in detail as I am learning a few things around this topic. I have gone through some details in public forum but still got a few questions. An SFTP service is running in a remote server and I have been given credentials to connect to it. I am using GUI like WinScp to connect the remote server. What's the role of SSH tunneling here? Remote SFTP Server admin asked me to generate RSA public key from my machine and its added to the remote server. Now, I can directly connect to the server from SSH terminal without password. What's the role of

2021-11-24 01:05:10    分类:问答    ssh   sftp   ssh-tunnel

Run Erlang Observer with ssh port forwarding

I have a remote Erlang node and local developer's PC. I want to start local node debug@127.0.0.1, start observer, call c:nl/1 and other debug actions. I wrote this: #!/bin/sh export ERL_EPMD_PORT=43690 PORT=`ssh -l user target -p 5022 "/usr/bin/epmd -names" | awk '$2 == "target-node" {print $5}'` pkill -f ssh.*-fxN.*target ssh -fxNL 43690:`hostname`:4369 target -p 5022 -l user ssh -fxNL $PORT:`hostname`:$PORT target -p 5022 -l user ssh -fxNR 9001:`hostname`:9001 target -p 5022 -l user erl -name dev@127.0.0.1 -setcookie ABCDEFFJKGSK \ -kernel inet_dist_listen_min 9001 inet_dist_listen_max 9001

2021-11-24 00:42:51    分类:问答    ssh   erlang   portforwarding   ssh-tunnel

如何设置 Google Apps Engine appcfg 以使用 SSH 隧道?(How to set Google Apps Engine appcfg to use SSH tunnel?)

问题 我使用腻子设置了一个 ssh 隧道,并配置了 Windows 设置和 Firefox 代理,以通过它浏览互联网。 它完美地工作。 现在我想通过同一个 ssh 隧道上传我的 GAE 应用程序。 我该怎么做才能做到这一点? 回答1 在Windows中,你可以得到,将socksify应用程序需要使用隧道(socks代理)软件,谷歌其中的一些更多细节: 袜帽自由帽宽帽等等...

2021-11-20 10:42:20    分类:技术分享    php   google-app-engine   ssh-tunnel   appcfg

How to use Node.js to make a SSH tunneling connection to a MongoDB database

My credentials work perfectly with Robomongo but I can't make the connection with node.js I have tried to make the connection using ssh2 and tunnel-ssh npm module and failed both times. -The mongo connection does not require a password -The ssh connection is made with a pem key This is the code I've used with ssh2 module, I can establish the tunneling correctly but the mongo connection fails var Client = require('ssh2').Client; var conn = new Client(); conn.on('ready', function() { console.log('Client :: ready'); //mongo connection mongoose.connect('mongodb://localhost:27000/'); var db =

2021-11-19 08:06:13    分类:问答    node.js   mongodb   ssh   mongoose   ssh-tunnel