java 建立ssh隧道_SSH基础

SSH

2bcabd9162f0d23ca7535c56552b91bb.png

基本概念

SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。SSH 是较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH在正确使用时可弥补网络中的漏洞。SSH客户端适用于多种平台。几乎所有UNIX平台—包括HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平台,都可运行SSH。

功能

  1. 传统的网络服务程序,如:ftp、pop和telnet在本质上都是不安全的,因为它们在网络上用明文传送口令和数据,别有用心的人非常容易就可以截获这些口令和数据。
  2. 而且,这些服务程序的安全验证方式也是有其弱点的, 就是很容易受到“中间人”(man-in-the-middle)这种方式的攻击。所谓“中间人”的攻击方式, 就是“中间人”冒充真正的服务器接收你传给服务器的数据,然后再冒充你把数据传给真正的服务器。服务器和你之间的数据传送被“中间人”一转手做了手脚之后,就会出现很严重的问题。
  3. 通过使用SSH,你可以把所有传输的数据进行加密,这样"中间人"这种攻击方式就不可能实现了,
  4. 而且也能够防止DNS欺骗和IP欺骗。使用SSH,还有一个额外的好处就是传输的数据是经过压缩的,所以可以加快传输的速度。SSH有很多功能,它既可以代替Telnet,又可以为FTP、PoP、甚至为PPP提供一个安全的"通道

安全验证方法

  1. 第一种级别(基于口令的安全验证) 只要你知道自己帐号和口令,就可以登录到远程主机。所有传输的数据都会被加密,但是不能保证你正在连接的服务器就是你想连接的服务器。可能会有别的服务器在冒充真正的服务器,也就是受到“中间人”这种方式的攻击。
  2. 第二种级别(基于密匙的安全验证) 需要依靠密匙,也就是你必须为自己创建一对密匙,并把公用密匙放在需要访问的服务器上

协议

  • 传输层协议 [SSH-TRANS] 提供了服务器认证,保密性及完整性。此外它有时还提供压缩功能。 SSH-TRANS 通常运行在TCP/IP连接上,也可能用于其它可靠数据流上。 SSH-TRANS 提供了强力的加密技术、密码主机认证及完整性保护。该协议中的认证基于主机,并且该协议不执行用户认证。更高层的用户认证协议可以设计为在此协议之上。
  • 用户认证协议 [SSH-USERAUTH] 用于向服务器提供客户端用户鉴别功能。它运行在传输层协议 SSH-TRANS 上面。当SSH-USERAUTH 开始后,它从低层协议那里接收会话标识符(从第一次密钥交换中的交换哈希H )。会话标识符唯一标识此会话并且适用于标记以证明私钥的所有权。 SSH-USERAUTH 也需要知道低层协议是否提供保密性保护。
  • 连接协议 [SSH-CONNECT] 将多个加密隧道分成逻辑通道。它运行在用户认证协议上。它提供了交互式登录话路、远程命令执行、转发 TCP/IP 连接和转发 X11 连接。

传输方法

SSH是由客户端和服务端的软件组成的,有两个不兼容的版本分别是:1.x和2.x。 用SSH 2.x的客户程序是不能连接到SSH 1.x的服务程序上去的。OpenSSH 2.x同时支持SSH 1.x和2.x。 服务端是一个守护进程(daemon),他在后台运行并响应来自客户端的连接请求。服务端一般是sshd进程,提供了对远程连接的处理,一般包括公共密钥认证、密钥交换、对称密钥加密和非安全连接。 客户端包含ssh程序以及像scp(远程拷贝)、slogin(远程登陆)、sftp(安全文件传输)等其他的应用程序。 他们的工作机制大致是本地的客户端发送一个连接请求到远程的服务端,服务端检查申请的包和IP地址再发送密钥给SSH的客户端,本地再将密钥发回给服务端,自此连接建立。SSH 1.x和SSH 2.x在连接协议上有一些差异。 一旦建立一个安全传输层连接,客户机就发送一个服务请求。当用户认证完成之后,会发送第二个服务请求。这样就允许新定义的协议可以与上述协议共存。连接协议提供了用途广泛的各种通道,有标准的方法用于建立安全交互式会话外壳和转发(“隧道技术”)专有 TCP/IP 端口和 X11 连接。

传输过程

远程主机收到用户的登录请求,把自己的公钥发给用户-->用户使用这个公钥,将登录密码加密后,发送回来-->远程主机用自己的私钥,解密登录密码,如果密码正确,就同意用户登录。

参考:百度百科

使用方法

ssh远程登录

# 远程登录 默认端口22
ssh username@ip_host# 远程登录 指定端口
ssh -p 端口 username@ip_host

ssh登出

logout

ssh远程上传文件

ssh

scp

# 上传文件
scp 本地端文件path username@ip_host:服务器端文件路径# 上传文件夹
scp -r 本地端文件夹path username@ip_host:服务器端文件文件夹

ssh远程下载文件

ssh

scp

# 拉取文件
scp username@ip_host:服务器端文件路径 本地端文件path# 拉取文件夹
scp username@ip_host:服务器端文件夹路径 本地端文件夹path

使用ssh在远程后台不中断地跑程序

nohup python test.py

扩展

解包:tar xvf FileName.tar.xz
打包:tar cvf FileName.tar DirName

若你对人工智能(CV/NLP)、C++/python编程、互联网就业及发展有兴趣,欢迎点赞关注和收藏。谢谢鼓励!!!

Anxjing.AI:SSH实现原理​zhuanlan.zhihu.com
b1ca6dd73a56bcd9840df3e2dbd8763c.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/417547.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

中修改环境变量_Golang入门(1):安装与配置环境变量的意义

摘要在几年前学习Java的时候,环境的配置就会劝退一部分的初学者。而对于Golang来说,也需要从环境的配置开始学起。这一篇文章将从如何安装Golang开始讲起,随后将会提到Golang中的环境变量GOROOT和GOPATH的配置以及这两个环境变量起到什么样的…

华科计算机学院有博士吗,华科计算机学院博士毕业条件

华中科技大学计算机学院2008级博士论文规定根据《华中科技大学申请博士学位发表学术论文的规定》,我院博士研究生申请博士学位前,须按以下要求之一发表学术论文:1、A类、B类或学院规定的国际顶尖学术会议论文一篇;2、SCI期刊论文一…

线程打印状态_Java线程状态的转换

根据上面关于线程状态的介绍我们可以得到下面的线程状态转换图:BLOCKED与RUNNABLE状态的转换我们在上面说到:处于BLOCKED状态的线程是因为在等待锁的释放。假如这里有两个线程a和b, a线程提前获得了锁并且暂未释放锁,此时b就处于BLOCKED状态。我们先来看一个例子:初…

GOAndroid的安装和配置

android环境的配置还是比较复杂的,特别对于我这样一直使用mfc的程序员来说,有很多观念上需要转变。好在配置成功后就能够不断复用,那么这样的问题值得整理出来 一、安装jdk 二、解压adt-bundle-windows(GO)。其中sdk是配置好的 三、配置环境变…

开发项目之考研计划_软件测试之项目测试计划模板

1. 引言1.1. 文档版本1.2. 项目情况1.3. 预期读者----部门经理----项目经理----测试经理----需求分析师----开发工程师----测试工程师----XXX银行经理----XXX基金公司经理1.4. 项目质量定义本项目软件测试是为了保障,XXX财务核算系统在应对营改增政策调整的系统升级…

2020计算机领域前沿热门技术,CFP: ICPCSEE 2020 (SCI or EI Indexd) 第6届国际计算机前沿大会...

ICPCSEE 2020第六届国际计算机前沿大会CALL FOR PAPER征稿通知(SCI or EI Indexed)September 18-21,2020Taiyuan, ChinaThe 6th International Conference of Pioneering Computer Scientists, Engineers and Educators(ICPCSEE)2020(http://2020.icpcsee.org) will be held in…

前端学习(2218):react元素渲染之函数式函数式编程

index.js import React from react; import ReactDOM from react-dom; import ./index.css; import App from ./App; import { tsPropertySignature } from babel/types;//<app/>js的普通对象 /*let app < App / >let root document.getElementById(root)let h1…

前端学习(2217):react元素渲染之时钟

index.js import React from react; import ReactDOM from react-dom; import ./index.css; import App from ./App;//<app/>js的普通对象 /*let app < App / >let root document.getElementById(root)let h1<h1>helloworld<span>我是</span>…

winmail计算机三级,2016年计算机三级网络技术机考模拟题(1)

1、Winmail用户使用0utlook发送邮件时&#xff0c;使用协议是(  )。A&#xff0e;HTTPB&#xff0e;IMAPC&#xff0e;POP3D&#xff0e;SMTP2、子网掩码为255&#xff0e;128&#xff0e;0&#xff0e;0&#xff0c;该掩码又可以写为(  )。A&#xff0e;&#xff0f;8B&am…

前端学习(2216):react元素渲染

index.js import React from react; import ReactDOM from react-dom; import ./index.css; import App from ./App;//<app/>js的普通对象 let app < App / >let root document.getElementById(root)let h1<h1>helloworld<span>我是</span>&l…

计算机应用基础专科作业二,电子科大18秋《计算机应用基础(专科)》在线作业2...

电子科大18秋《计算机应用基础(专科)》在线作业2谋学网http://doc.docsou.com【奥鹏】[电子科技大学]18秋《计算机应用基础(专科)》在线作业2试卷总分:100 得分:100第1题,在浏览网页中&#xff0c;下列可能泄露隐私的是()。A、HTML文件B、文本文件C、CookieD、应用程序第2题,IP…

【干货分享】前端面试知识点锦集03(JavaScript篇)——附答案

三、JavaScript部分 1、谈谈你对Ajax的理解&#xff1f;(概念、特点、作用) AJAX全称为“Asynchronous JavaScript And XML”&#xff08;异步JavaScript和XML&#xff09; 是指一种创建交互式网页应用的开发技术、改善用户体验&#xff0c;实现无刷新效果。 优点a、不需要插件…

前端学习(2219):react之jsx小案例

import React from react; import ReactDOM from react-dom; import ./index.css; import App from ./App; import { tsPropertySignature } from babel/types;//<app/>js的普通对象 /*let app < App / >let root document.getElementById(root)let h1<h1>…

前端学习(2220):react之jsx的样式小案例

import React from react; import ReactDOM from react-dom; import ./index.css; import ./App.css import App from ./App; import { tsPropertySignature } from babel/types;//<app/>js的普通对象 /*let app < App / >let root document.getElementById(root…

SyntaxError: Non-UTF-8 code starting with '\xba' in file 错误的解决方法!!

第一次在Eclipse建立python工程&#xff0c;添加了自己新建的文件&#xff0c;写了一点代码&#xff0c;随后执行时候出现了错误&#xff0c;和昨天我在Visual Studio 2015里面一样&#xff0c;错误&#xff1a; SyntaxError: Non-UTF-8 code starting with \xba in file G:\wo…

三维向量变化为角度_物体的三维识别与6D位姿估计:PPF系列论文介绍(四)

作者&#xff1a;仲夏夜之星Date&#xff1a;2020-04-14来源&#xff1a;物体的三维识别与6D位姿估计&#xff1a;PPF系列论文介绍(四)文章“3D Pose Estimation of Daily ObjectsUsing an RGB-D Camera”2012发表在IEEE/RSJInternational Conference on Intelligent Robots an…