在数据传输前,SSH会对需要传输的数据进行加密,保证会话安全与会话中传输数据的安全,SSH客户端还包含一个远程拷贝scp。

1、SSH的结构

SSH服务由服务端软件(openssh)和客户端(SSH、SecureCRT、Xshell)组成,SSH默认使用22端口,SSH服务端是一个守护进程,在后台时刻监听客户端的请求,sshd就是SSH服务端的进程名

补充:(守护进程)

守护进程是一个在后台运行并且不受任何终端控制的进程。Unix操作系统有很多典型的守护进程(其数目根据需要或20—50不等),它们在后台运行,执行不同的管理任务。
用户使守护进程独立于所有终端是因为,在守护进程从一个终端启动的情况下,这同一个终端可能被其他的用户使用。例如,用户从一个终端启动守护进程后退出,然后另外一个人也登录到这个终端。用户不希望后者在使用该终端的过程中,接收到守护进程的任何错误信息。同样,由终端键人的任何信号(例如中断信号)也不应该影响先前在该终端启动的任何守护进程的运行。虽然让服务器后台运行很容易(只要shell命令行以&结尾即可),但用户还应该做些工作,让程序本身能够自动进入后台,且不依赖于任何终端。
守护进程没有控制终端,因此当某些情况发生时,不管是一般的报告性信息,还是需由管理员处理的紧急信息,都需要以某种方式输出。Syslog 函数就是输出这些信息的标准方法,它把信息发送给 syslogd 守护进程。

2、SSH认证类型

(1)基于口令的安全验证,也就是通常所说的账号、密码、端口、IP登录

(2)基于密钥的安全验证

  事先建立一对密钥对,然后将公用的密钥放在服务端,把私有的密钥放在SSH的客户端,最终通过这种密钥验证方式进行加密传输数据。

3、SCP

NAME
scp - secure copy (remote file copy program)  #安全拷贝 SYNOPSIS
scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file]
[-l limit] [-o ssh_option] [-P port] [-S program]
[[user@]host1:]file1 ... [[user@]host2:]file2 DESCRIPTION
scp copies files between hosts on a network.(scp是在网络上通过host之间拷贝文件) It uses ssh() for
data transfer, and uses the same authentication and provides the
same security as ssh(). Unlike rcp(), scp will ask for pass-
words or passphrases if they are needed for authentication. File names may contain a user and host specification to indicate
that the file is to be copied to/from that host. Local file
   names can be made explicit using absolute or relative pathnames
to avoid scp treating file names containing ‘:’ as host speci-
fiers. Copies between two remote hosts are also permitted. When copying a source file to a target file which already exists,
scp will replace the contents of the target file (keeping the
inode). If the target file does not yet exist, an empty file with the
target file name is created, then filled with the source file
contents. No attempt is made at "near-atomic" transfer using
temporary files.

-P  端口

-p  保持属性

-r  拷贝目录

4、FTP功能服务sftp

上传:

[root@localhost tmp]# sftp -oport= root@192.168.181.129
Connecting to 192.168.181.129...
root@192.168.181.129's password:
sftp> put /tmp/ /tmp
stat /tmp/: No such file or directory
sftp> put /tmp/.txt /tmp
Uploading /tmp/.txt to /tmp/.txt
/tmp/.txt % .0KB/s :

查看上传成功!

下载:

sftp> get /tmp/ /tmp
Fetching /tmp/ to /tmp/
sftp> get /tmp/ /opt
Fetching /tmp/ to /opt/

检查下载到本地成功!

Linux的SSH(Secure Shell Protocol)服务的更多相关文章

  1. Linux学习笔记二:Ubuntu安装SSH(Secure Shell)服务

    Ubuntu默认是没有安装SSH(Secure Shell)服务,如果想要通过ssh链接到Ubuntu,我们需要手动安装ssh-server. SSH分客户端ssh-client,服务端ssh-ser ...

  2. VNCServer,SSH Secure Shell Client,window远程控制linux

    1.VNC远程连接linux图形化桌面 2.SSH Secure Shell Client连接linux终端 3.设置FTP与linux传输文件 1.VNC远程连接linux图形化桌面 在centos ...

  3. 利用SSH secure Shell实现windows与linux之间传输文件

    在windows下安装SSH secure Shell.默认安装后有两个快捷方式. linux下需要安装openssh-server utuntu默认安装了opens是-client,所以不需要安装, ...

  4. SSH Secure Shell Client连接Linux 命令行显示中文乱码问题 和oracle 查询数据中文乱码问题

    一.SSH Secure Shell Client连接Linux 命令行显示中文乱码问题 linux 设置系统语言 修改 /etc/sysconfig/i18n 文件,如 LANG="en_ ...

  5. SSH secure shell 权威指南(转载)

    本书是一本介绍通信安全的书籍,如果你想保障你的通信安全,本书能给你一个很好的解决方案.本书从ssh协议介绍起,到具体的开源实现和商业实现.但本书同时介绍开源实现和商业实现,给人感觉比较乱.注意:由于o ...

  6. SSH Secure Shell Client安装和使用

    SSH是一个用来替代TELNET.FTP以及R命令的工具包,主要是想解决口令在网上明文传输的问题.为了系统安全和用户自身的 权益,推广SSH是必要的. SSH是英文Secure Shell的简写形式. ...

  7. SSH Secure Shell 无法登录:server responded "algorithm negotiation failed”

    SSH Secure Shell Client 连接 ubuntu系统报错 修改ssh的配置文件 /etc/ssh/sshd_config在配置文件中添加: Ciphers aes128-cbc,ae ...

  8. ssh secure shell

    ssh secure shell 和securecrt xhell一样,都是终端工具

  9. SSH Secure Shell Client的windows客户端样式设置

    SSH Secure Shell Client下载:http://pan.baidu.com/s/1dF2lDdf 其他工具(putty-0.67)下载:http://pan.baidu.com/s/ ...

  10. SSH Secure Shell Client最新版,解决Win10不兼容问题

    SSH的工具很多,像XShell,SecureCRT等等. 不过我一直用的是:SSH Secure Shell Client 主要的原因就是: 软件本身带文件浏览的功能,可以通过拖拽去实现文件上传和下 ...

随机推荐

  1. GUI练习中

    总结:JFrame和Frame是有很大差别的. 不要混淆.否则方法是不能成功调用的 特别是背景色:JFrame.对象f在main里无法调用背景色前景色都不想显示 一下是书上的一段代码,编译错误,但是可 ...

  2. POJ 3728 The merchant(LCA+DP)

    The merchant Time Limit : 6000/3000ms (Java/Other)   Memory Limit : 131072/65536K (Java/Other) Total ...

  3. git教程(远程仓库和管理分支)

    在github上新建了一个仓库,然后相与本地的仓库联系起来 $ Git remote add origin https://github.com/liona329/learngit.git fatal ...

  4. 【转】href="#"与"javascript:void(0);"的区别

    在工作中,如果我们想把a标签中的链接置成空链接,我们一般会用两种方法: 1 <a href="#" target="_blank"></a&g ...

  5. Byte和byte[]数组

    Byte和byte[]数组,“表示一个 8 位无符号整数, 一般为8位二进制数”. Byte是计算机最基础的存储单位和最基础的通讯单位. 而所有的类型都是支持由byte[]类型转换而来. 为什么说By ...

  6. shell脚本 回顾 小练习

    1.把/OPT目录下(包含子目录)下所有后缀为“.sh”的文件后缀变更为“.shell” 2.将A.B.C目录下的文件A1.A2.A3文件改名为A4.A5.A63.如何在vi模式下将文件中的aa字符串 ...

  7. DDD学习笔录——领域驱动设计DDD概念总结

  8. elasticsearch 概念与架构(3)

    转自:https://devops.taobao.com/ Node(节点):单个的装有Elasticsearch服务并且提供故障转移和扩展的服务器. Cluster(集群):一个集群就是由一个或多个 ...

  9. Spring注解-TaskScheduler

    一.定义配置类 import org.springframework.context.annotation.ComponentScan; import org.springframework.cont ...

  10. springJunit测试

    ; m.setModelType(s); m.setModelUrlType(s); modelService.create(m); } }   来源: http://enki-ding-yeah-n ...