ArchLinux 下 OpenSSH 高级运用
00x0、相关介绍
OpenSSH(OpenBSD Secure Shell)使用 SSH 通过计算机网络加密通信的实现。
它是替换由 SSH Communications Security 所提供的商用版本的开放源代码方案。目前 OpenSSH 是 OpenBSD 的子项目。

大家都只知道SSH可以基于密码或密钥登录远程主机使用,但是你知道吗?
其实SSH还可以在运用在公网服务器连接私有IP虚拟机,还可以实现命令行SSH代理。
00x1、公网服务器连接私有IP虚拟机
试验环境:俩台 CentOS 系统,一台为 NAT 模式下虚拟机 :10.0.2.15 ; 以及一台为公网服务器 :45.xxx.xxx.212

测试服务器 IP 地址为:45.xxx.xxx.212
VirtualBox NAT 模式下的 CentOS 虚拟机。
NAT普遍使用在有多台主机但只通过一个公有 IP 地址访问因特网的私有网络中,允许了多台主机共享一个公用 IP 地址。
(即虚拟机的所有数据包最后都由网络中那台有公网 IP 地址主机转发出英特网)


测试虚拟机 IP 地址为:10.0.2.15

命令:ssh -gfN -R <公网映射端口>:127.0.0.1:<本地端口> <目标公网>
虚拟机命令中“SSH”参数介绍:
-g:允许远程主机连接到本地建立的转发端口
-fN:不登录不执行脚本或命令(常连用)
-C:压缩数据传输(小带宽可用)
-R:程序级端口转发 ,“port:host:hostport”方法(必须使用)
接着,测试服务器45.xxx.xxx.212
输入命令 ssh -p <port> localhost

以上公网服务器 连接 虚拟机私有IP实验结束,下面是运用 SSH 实验 Proxy 代理。
00x2、建立公网命令行下SSH代理
操作步骤:本机输入实现ssh代理ssh -nNT <user>@<ip> -D <port> (下有参数介绍)

参数介绍:
ssh -nNT <user>@<IP> -D <port>
-n:后台运行
-N:不执行远程指令
-T:不分配 TTY ,只做代理用
-D:指定代理端口
至此,SSH 代理设置已经完成了。后面要用代理工具完成 SSH 代理。
客户端使用代理设置(本人这里使用的是Chrome浏览器下的SwitchyOmega工具,同类代理还可以用Firefox浏览器下的工具AutoProxy):


代理(Proxy),也称网络代理,是一种特殊的网络服务,允许一个网络终端(一般为客户端)通过这个服务与另一个网络终端(一般为服务器)进行非直接的连接。一些网关、路由器等网络设备具备网络代理功能。一般认为代理服务有利于保障网络终端的隐私或安全,防止攻击。

图解:左边和右边的电脑在通讯时候,需要经过中间的电脑中转,而中间的那部电脑就是代理服务器。
简单的说就是A要访问C,当然可以直接访问C。但是有俩个问题:一个是安全的问题另外还有就是“过滤问题”。
于是我们有了“代理”就是让我们A连接B,由B去访问C,B最后“加密”传送给用户,最后用户就得到了想要的来自C的信息。

这里我们通过了代理设置,我们的浏览器和“阿里云”服务器连接完成~这样我们就可以代理上网、加速上网。甚至还可以***!
4、总结心得
第一篇过程是client开放了1111端口与22端口server连接。第二篇过程是server开放了1111端口给client连接,数据由server代理转发。
第一篇希望让大家灵活运用SSH,SSH的功能不仅仅只是简单的远程连接部署。通过SSH设置,可以让任何一台机器通过SSH相连接的!第二篇意义在于享受远程任何一台机器同时,还可以明白,能完成互连的SSH。当然也可以完成代理~!
上述就是俩条SSH运用,仅仅只是抛砖引玉。更多好玩的,需要我们自己去发现去总结去设置去享受,也是希望大家不光有宽度更多的还要有“深度”。
ArchLinux 下 OpenSSH 高级运用的更多相关文章
- [daily][device][bluetooth] 蓝牙怎么办!(archlinux下驱动蓝牙鼠标,以及三星手机)
去年地摊买的破无线鼠标坏掉了.看上微软的Designer Mouse蓝牙鼠,但是买之前我要确认我能不能驱起来. 这款鼠标只支持蓝牙4.0.系统支持windows8以上,不支持xp和windows7. ...
- Archlinux下i3wm与urxvt的配置
前段时间学习了GitHub的两位前辈:Airblader和wlh320.他们的相关教程在https://github.com/Airblader/i3和https://github.com/wlh32 ...
- 解决 ArchLinux 下中文 Chinese 不能输入 couldnt input 的问题
解决 ArchLinux 下中文 Chinese 不能输入 couldnt input 的问题 一.Question 一年多的 ArchLinux 用户再次回归.然鹅,见面礼就是终端不能输入中文. 在 ...
- Archlinux 下的 VMWare Workstation 维护笔记
印象中 Archlinux 下的 VMWare Workstation 总是出问题, 因此写这个帖子, 记录出问题时间/原因/解决方案. PS: 每次更新内核后可能需要重新编译 vmware 的内核模 ...
- [archlinux][tls] archlinux下使curl支持sslv3的方法
描述 在archlinux下,希望使用curl产生一条使用sslv3的https访问请求. 使用curl的如下命令: curl -k -vvv --sslv3 https://192.168.7.9: ...
- ArchLinux下electronssr无法启动的解决措施
ArchLinux下electronssr无法启动的解决措施 今天重新配置electron-ssr时发现闪退(无法启动). 于是开始查错 首先是找到了目录位置 /usr/electron-ssr/el ...
- OpenSSH 高级运用两则
00×0.相关介绍 OpenSSH(OpenBSD Secure Shell)使用 SSH 通过计算机网络加密通信的实现. 它是替换由 SSH Communications Security 所提供的 ...
- centos7生产环境下openssh升级
由于生产环境ssh版本太低,导致使用安全软件扫描时提示系统处于异常不安全的状态,主要原因是ssh漏洞.推荐通过升级ssh版本修复漏洞 因为是生产环境,所以有很多问题需要注意.为了保险起见,在生产环境下 ...
- [math][mathematica] archlinux 下 mathematica 的安装 (科学计算软件 mathematica/matlab/sagemath)
ONLINE: http://www.wolframalpha.com/ GPL: segamath: http://www.sagemath.org/ famous and not free: ma ...
随机推荐
- siebel简介
定义公司架构.描述S应用架构.安装应用.配置S.自动化的业务规则.数据整合.不同环境如何整合. 一.介绍CRM 销售.Callcenter等 允许管理客户和联系人. 二.Using the web c ...
- 压力测试工具--Siege
Siege是一款开源的压力测试工具,设计用于评估WEB应用在压力下的承受能力.可以根据配置对一个WEB站点进行多用户的并发访问,记录每个用户所有请求过程的相应时间,并在一定数量的并发访问下重复进行.s ...
- c++之带默认形参值的函数
先来个例子: #include <iostream> using namespace std; ,){ return x+y; } int main(){ //freopen(" ...
- iOS调试程序的方法
IOS各种调试技巧豪华套餐 普通操作 如图3 基本的断点操作如下 图4 点击那个黑列列就创建了一个断点,再次点击就临时取消这个断点(但是不删除),长按那个断点拖出去就删除了(mac os的系统工程师就 ...
- 架构之路:nginx与IIS服务器搭建集群实现负载均衡
http://blog.csdn.net/zhanghan18333611647/article/details/50811980
- linux sed命令详解-乾颐堂CCIE
简介 sed 是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的 ...
- 【转】The most comprehensive Data Science learning plan for 2017
I joined Analytics Vidhya as an intern last summer. I had no clue what was in store for me. I had be ...
- java简单例子介绍IOC和AOP
IOC和AOP的一些基本概念 介绍 IOC 一.什么是IOC IoC就是Inversion of Control,控制反转.在Java开发中,IoC意味着将你设计好的类交给系统去控制,而不是在你的类内 ...
- Go语言特性
1.入口,go有且只有一个入口函数,就是main函数 liteide (IDE)的 一个工程(文件夹)只能有且只有一个main函数 package main import "fmt" ...
- 常用工具类——DatetimeUtil
import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; imp ...