SSH客户端应用场景

SSH命令详解 参数 说明 -1 强制使用ssh协议版本1; -2 强制使用ssh协议版本2; -4 强制使用IPv4地址; -6 强制使用IPv6地址; -A 开启认证代理连接转发功能; -a 关闭认证代理连接转发功能; -b 使用本机指定地址作为对应连接的源ip地址; -C 请求压缩所有数据; -F 指定ssh指令的配置文件; -f 后台执行ssh指令; -g 允许远程主机连接主机的转发端口; -i 指定身份文件; -l 指定连接远程服务器登录用户名; -N 不执行远程指令; -o 指定配置选项; -p 指定远程服务器上的端口; -q 静默模式; -X 开启X11转发功能; -x 关闭X11转发功能; -y 开启信任X11转发功能。 -D 指定本地 “动态” 应用程序级端口转发。这通过分配套接字来侦听本地端口,可选地绑定到指定的bind_address。只要与此端口建立连接,就会通过安全通道转发连接,然后使用应用程序协议确定从远程计算机连接的位置。 SSH端口转发实战 概述 在通常情况下,网络防火墙会阻碍你进行某些必要的网络传输。公司的安全策略可能不允许你把SSH密钥存储在某些主机上。或者,你也可能需要在原本安全的环境中运行一些不安全的网络应用程序。 SSH提供了一个重要功能,称为转发forwarding或者称为隧道传输tunneling,它能够将其他 TCP 端口的网络数据通过 SSH 链接来转发,并且自动提供了相应的加密及解密服务。这一过程有时也被叫做tunneling,这是因为 SSH 为其他 TCP 链接提供了一个安全的通道来进行传输而得名。 SSH端口转发主要用来解决如下两方面问题: 突破防火墙的限制完成无法建立的 TCP 连接。 加密 Client 端至 Server 端之间的通讯数据。 开启ssh的端口转发功能 ssh端口转发功能默认是打开的。如需修改的话,修改后需要重启sshd服务才会生效。...

 ·  · 

SSH服务详解

什么是 SSH ? SSH全称(SecureSHell)是一种网络协议,顾名思义就是非常安全的shell,主要用于计算机间加密传输。早期,互联网通信都是基于明文通信,一旦被截获,内容就暴露无遗。1995年,芬兰学者Tatu Ylonen设计了SSH协议,将登录信息全部加密,成为互联网安全的一个基本解决方案,迅速在全世界获得推广,目前已经成为Linux系统的标准配置。 SSH服务是由OpenSSH服务端软件OpenSSH和客户端(常见的由SSH,SecureCRT,Xshell,putty)组成,默认使用22端口提供服务,有两个不兼容的ssh协议版本,分别为1.x和2.x。 SSH协议目前有SSH1和SSH2两个主流版本,SSH2协议兼容SSH1,强烈建议使用SSH2版本。目前实现SSH1和SSH2协议的主要软件有OpenSSH 和SSH Communications Security Corporation 公司的SSH Communications 软件。前者是OpenBSD组织开发的一款免费的SSH软件,后者是商业软件,因此在linux、FreeBSD、OpenBSD 、NetBSD等免费类UNIX系统种,通常都使用OpenSSH作为SSH协议的实现软件。 sh 1 2 3 $ rpm -qa openssh openssl openssl-1.0.1e-30.el6.x86_64 openssh-5.3p1-104.el6.x86_64 SSH1.x 每台ssh服务器主机都可以使用rsa加密方式来产生一个1024bit的RSAKey,这个RSA的加密方式就是用来产生公钥与私钥的算法之一,SSH1.x的整个联机加密步骤如下: 当SSH服务启动时,会产生一个768-bit的临时公钥(sshd_config配置文件中ServerKeyBits 768)存放在server中 sh 1 2 3 # centos5为768 centos6为1024 $ grep ServerKey /etc/ssh/sshd_config #ServerKeyBits 1024 当客户端联机请求传送过来时,服务器就会将这个768-bit的公钥传给客户端,此时客户端会将此公钥与先前存储的公钥进行对比,看是否一致。判断标准是服务器端联机用户目录下~/.ssh/know_hosts文件的内容(linux客户端) sh 1 2 3 $ ssh -p22 lamp@192.168.65.62 $ ll .ssh/known_hosts -rw-r--r--. 1 root root 395 Jun 16 13:15 .ssh/known_hosts windows SecureCRT图示 在客户端接收到这个768-bit的Server Key后,客户端本地也会产生一个256bit的私钥(private key或host key),并且以加密的方式(具体的加密算法由客户端在服务器提供的所有可用算法中选择,默认为3DES算法),将Server key与host...

 ·  · 

使用SSH协议来传输文件

SSH客户端附带的远程拷贝scp命令 scp是加密 的远程拷贝,可以把数据从一台机器推送到另一台机器,也可以从其他服务器把数据拉回到本地执行命令的服务器,但是,每次都是全量拷贝(rsync增量拷贝),因此效率不高。 scp的基本语法使用 secure copy (remote file copy ) 参数选项 注释说明 -p 拷贝前后保持文件或目录属性 -P (大写) 接端口,默认22端口时可省略 -r 拷贝目录 -l 限制速度 推:scp -Pport 源 目标(user@host_ip):/path sh 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 $ touch {a..f}.txt $ ls a.txt b.txt c.txt d.txt e.txt f.txt $ scp -P22 a.txt root@192.168.65.62:/ root@192.168.65.62's password: a.txt 100% 0 0.0KB/s 00:00 $ ls / app a.txt 拉:scp -Pport 源(user@host_ip):/path 目标...

 ·  ·