SSH隧道简洁介绍以及SSH隧道实际应用

标签: SSH隧道 SSH代理 SSH端口转发
8898人阅读 评论(0) 收藏 举报
分类:

简介

SSH隧道(即SSH代理、端口转发),接触过Linux系统的都知道SSH,对于SSH隧道,如果之前没接触过,只知道这个概念、网上搜索这方面的资料的话,网上的资料把简单的问题复杂化了,写的很复杂很繁琐。
下面自己把简单介绍下SSH隧道及SSH隧道实际应用总结一下。

SSH隧道几个实际应用

一、为了安全,mysql root用户只本机登录,在没有授权访问情况下,网络连接mysql数据库。

环境:
主机:192.168.0.104
服务:mysql,root只运行本机登录

  • 使用plink工具

plink.exe下载地址:
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
http://putty.cs.utah.edu/download.html
windows命令行进入plink.exe目录,运行命令(访问中不要关闭会话)

plink -L 3306:localhost:3306 root@192.168.1.104
#      本机端口:目标主机:目标端口     隧道主机

输入root密码(普通用户也可)后,打开数据库连接工具访问本机3306端口便可访问数据库了

  • 使用数据库连接工具,比如Navicat
    1、如图配置SSH隧道
    这里写图片描述
    2、配置数据库连接信息
    这里写图片描述
    这时便可以连接上数据库了。

二、数据库主机没有外网ip,外网如何连接数据库

环境:
mysql:10.0.0.10
ssh主机:内网:10.0.0.1,外网:123.1.1.71
(方案一:搭建VPN,通过VPN连接数据库
方案二:配置代理,如在ssh主机上配置Nginx代理,通过Nginx访问数据库)
而这里通过SSH隧道就可以轻松访问数据库,只需要ssh主机普通用户即可,无需服务器多余配置

  • plink工具
plink -L 3306:10.0.0.10:3306 fgf@123.1.1.71
  • 数据库连接工具Navicat
    这里写图片描述
    这里写图片描述

三、一台外网主机,多台内网主机,如何方便登录内网主机

如上二的环境,ssh登录mysql主机需要ssh主机跳转,每次手动输入密码太麻烦,如何能像记住外网密码那样,记住内网密码?

  • SecureCRT
    1、新建一个ssh会话,配置SSH主机登录信息(和正常一样)
    这里写图片描述
    2、配置SSH隧道
    这里写图片描述
    3、保持ssh隧道会话连接,SecureCRT在新建一个ssh会话访问本机22端口,便可以ssh访问mysql主机

  • Xmanager 5
    1、新建SSH隧道会话
    这里写图片描述
    这里写图片描述
    2、保持ssh隧道会话连接,在新建一个ssh会话访问本机22端口,便可以ssh访问mysql主机


SSH/plink命令的基本资料:

ssh -C -f -N -L listen_port:DST_Host:DST_port user@Tunnel_Host 
ssh -C -f -N -R listen_port:DST_Host:DST_port user@Tunnel_Host 
ssh -C -f -N -D listen_port user@Tunnel_Host

相关参数的解释:

-L port:host:hostport #建立本地SSH隧道(本地客户端建立监听端口)
将本地机(客户机)的某个端口转发到远端指定机器的指定端口. 

-R port:host:hostport #建立远程SSH隧道(隧道服务端建立监听端口)
将远程主机(服务器)的某个端口转发到本地端指定机器的指定端口. 
# 有本地映射肯定有远程映射,就是把-L换成-R,这样我们访问远程主机的端口就相当于访问本地的端口,但感觉作用不大。

-D port 
指定一个本地机器 “动态的’’ 应用程序端口转发. 

-C 压缩数据传输。

-N Do not execute a shell or command. 
不执行脚本或命令,仅仅做端口转发。通常与-f连用。
-f Fork into background after authentication. 
后台认证用户/密码,不用登录到远程主机。

转载请务必保留此出处:http://blog.csdn.net/fgf00/article/details/51284335

查看评论

SSH反向隧道进行内网穿透

对应的情况 这篇文章主要介绍了如何利用SSH 反向隧道穿透NAT,并演示了如何维持一条稳定的SSH 隧道。 假设有机器A 和B,A 有公网IP,B 位于NAT 之后并无可用的端口转发,现在想由A ...
  • lidongshengajz
  • lidongshengajz
  • 2017-06-20 11:02:00
  • 5328

ssh隧道建立

问题: 目标服务器(A)在NAT之后,中介服务器(M)在公网上,客户端(C)在NAT后,需要从C发起ssh连接到D。   解决办法: 1. 从A发起ssh连接到M,绑定M的远程端口,假设M的ssh服务...
  • yuanchao99
  • yuanchao99
  • 2017-06-06 15:35:44
  • 964

ssh隧道的理解

本地端口转发从本机发起ssh -l 7001:hostname:389 serverhost将本地应用的数据发送到7001上。 本机ssh 客户端 接收7001上的数据,加密传输到serverhos...
  • qq_30119473
  • qq_30119473
  • 2016-08-22 20:16:50
  • 1482

SSH Tunnel隧道

ssh(secure shell)是一种对数据进行加密安全传输的协议。利用ssh工具可以非常方便的登录远程提供有ssh服务的主机,也可以很方便的进行文件传输。利用 ssh tunnel 可以进行端口转...
  • chenjh213
  • chenjh213
  • 2015-11-12 18:20:26
  • 1565

ssh隧道与代理

ssh是用来远程登录主机的作用大家都知道,而且传输的内容全部经过加密处理也是大家喜欢其的主要因素。但其实ssh能做的更多,例如作为代理服务器。 通过ssh 的-D参数,我们可以在本地搭建一个sock...
  • xanxus46
  • xanxus46
  • 2014-08-30 10:58:07
  • 16348

xshell5之ssh隧道连接

接下来在本机的浏览器或数据库中输入127.0.0.1:27017即可连接内网中的27017端口了...
  • abel004
  • abel004
  • 2017-05-27 16:08:02
  • 2318

SSH隧道

性感女神周韦彤人气火爆,其写真的美丽无人能敌(五)
  • weiyirong
  • weiyirong
  • 2012-08-20 23:44:49
  • 4701

ssh隧道技术

选择ssh的4个理由: 1、使用方便,功能强大,加密强度高,运行稳定. 2、ssh几乎是*nix系统的标配,不需额外安装.现在的想找台没跑sshd的*nix主机也是件难事. 3、防火...
  • hnhbdss
  • hnhbdss
  • 2015-01-02 22:36:07
  • 1706

关于对SSH隧道SSH Tunnel命令参数的理解

开发时需要在本地访问管理云服务器CentOS上的mysql和redis服务,但是这些服务默认是没有开启直接从外网访问的权限,只能从本机访问,不过使用SSH隧道技术可以将远程访问转换为本机访问一样,这样...
  • klyhssrs
  • klyhssrs
  • 2017-08-05 14:39:39
  • 1548

使用SecureCRT进行端口转发

总共有3台机器,我自己的笔记本,跳转机器,
  • a19881029
  • a19881029
  • 2014-10-15 18:21:35
  • 29309
    个人资料
    等级:
    访问量: 33万+
    积分: 3273
    排名: 1万+
    最新评论