1:公钥与私钥(public and private key)

公钥:提供给远程主机进行数据加密的行为

私钥:远程主机收到客户端使用公钥加密数据后,在本地端使用私钥来解密

2:公钥与私钥进行数据传输时的角色示意图

因为网络连接是双向的,所以服务端与客户端互相拥有对方的公钥。

3:服务器与客户端进行连接的示意图

过程:

(1):服务器建立公钥文件

(2):客户端发送主动连接请求

(3):服务器发送公钥文件给客户端

(4):客户化记录或比对服务器的公钥文件及创建自己的密钥对

(5):返回客户端的公钥给服务端

(6):服务端接收,并开始解密

命令:

1:普通用法   ssh user@host   默认端口号为22

2:指定端口   ssh user@host -p port

3:重启ssh服务 /etc/init.d/sshd restart

4:查看22号端口 lsof -i:22

netstat -tlnp |grep ssh

rsync进行同步镜像备份:

1:在同一个主机,把/ll 备份到/mm

rsync -av /ll /mm

2:ssh形式

rsync -av -e ssh root@192.168.1.24:~/shell/ll /tmp

脚本:

1:每次连接都要输入密码

#!/usr/bin/expect

spawn ssh lile@10.0.0.160

#expect "(yes/no)?" {send "yes"}
expect "password:" { send "123456\r"} interact

2:查看一个用户在一组远程主机上的运行时间,运行时间指的是系统加电后运行了多久

#!/bin/bash

IP="10.0.0.160 10.0.0.161 10.0.0.162"
user="lile" for ip in $IP;
do
utime=$(ssh $user@$ip uptime | awk '{print $3}')
echo "$ip uptime" : $utime
done

SSH实现无密码自动登录

原理:

非对称加密技术:公钥、私钥,用ssh-keygen命令创建密钥,会有id_rsa(私钥)、id_rsa.pub(公钥)。客户端创建一对密钥之后,把公钥放在远程端的~/.ssh/authorized_keys下面,客户端的私钥放在~/.ssh目录中。SSH的相关配置信息可以在/etc/ssh/sshd_config中

SSH原理及操作的更多相关文章

  1. SSH原理与运用(二):远程操作与端口转发

    SSH原理与运用(二):远程操作与端口转发 作者:阮一峰 (Image credit: Tony Narlock) 七.远程操作 SSH不仅可以用于远程主机登录,还可以直接在远程主机上执行操作. 上一 ...

  2. [转帖]SSH原理与运用(二):远程操作与端口转发

    SSH原理与运用(二):远程操作与端口转发 http://www.ruanyifeng.com/blog/2011/12/ssh_port_forwarding.html 接着前一次的文章,继续介绍S ...

  3. SSH原理与运用

    SSH是每一台Linux电脑的标准配置. 随着Linux设备从电脑逐渐扩展到手机.外设和家用电器,SSH的使用范围也越来越广.不仅程序员离不开它,很多普通用户也每天使用. SSH具备多种功能,可以用于 ...

  4. SSH原理与运用(一)和(二):远程登录 RSA算法原理(一)和(二)

    SSH原理与运用(一)和(二):远程登录  RSA算法原理(一)和(二) http://www.ruanyifeng.com/blog/2011/12/ssh_remote_login.html ht ...

  5. SSH原理与运用一:远程登录(转)

    原文:http://www.ruanyifeng.com/blog/2011/12/ssh_remote_login.html 作者: 阮一峰 SSH是每一台Linux电脑的标准配置. 随着Linux ...

  6. ssh原理图解

    SSH(Secure Shell)是一种能够以安全的方式提供远程登录的协议,也是目前远程管理Linux系统的首选方式.在此之前,远程登录一般常用FTP和Telnet,但是它们以明文的形式在网络中传输账 ...

  7. SSH原理与运用(一):远程登录(转)

      作者: 阮一峰 日期: 2011年12月21日 SSH是每一台Linux电脑的标准配置. 随着Linux设备从电脑逐渐扩展到手机.外设和家用电器,SSH的使用范围也越来越广.不仅程序员离不开它,很 ...

  8. 图解SSH原理

    1. 初见SSH SSH是一种协议标准,其目的是实现安全远程登录以及其它安全网络服务. SSH仅仅是一协议标准,其具体的实现有很多,既有开源实现的OpenSSH,也有商业实现方案.使用范围最广泛的当然 ...

  9. (转)图解SSH原理

    图解SSH原理 原文:https://www.jianshu.com/p/33461b619d53 http://blog.51cto.com/forlinux/1352900---------SSH ...

随机推荐

  1. Rancher2.0中使用外置NFS存储部署Nginx实验

    目录: 1.环境准备工作 1.1 准备好Rancher2.0集群环境 1.2 准备好外部NFS服务器 2.Rancher2.0中使用NFS存储的方法 2.1 在集群中创建持久卷(PV) 2.2 在项目 ...

  2. [python]上传文件验证

    上传文件验证 上传文件验证分为:1.文件头验证 2.文件类型验证 3.文件后缀验证 获取文件上传的二进制数据 # 获取上传文件 file = request.files.get('file') if ...

  3. 《SQL 基础教程》第二章:查询基础

    这一章的结构如下: SELECT 语句基础 算术运算符和比较运算符 逻辑运算符 SELECT 语句可用于查询数据,并且可以设定条件来查询具有特定值的记录.条件的设定就需要算数运算符.比较运算符和逻辑运 ...

  4. linux中执行shell命令的几种常用方法

    1 切换到shell脚本所在目录执行shell脚本: cd /test/shell ./test.sh 2 以绝对路径的方式执行shell脚本: /test/shell/test.sh 3 直接使用b ...

  5. Kali linux 2016.2(Rolling)里安装OpenVAS

    不多说,直接上干货! 本博文,是在Kali 2.0 linux里,安装OpenVAS. 前言 OpenVAS是一款开放式的漏洞评估工具,主要用来检测目标网络或主机的安全性.与安全焦点的X-Scan工具 ...

  6. 【IDE】我的花里胡哨VS

    我的 VS2017 效果图,花里胡哨但十分养眼,利于C/C++ Coding~ 一.主题设置 工具 → 扩展和更新 下载插件 Color Theme Editor for Visual Studio ...

  7. Python—字符串的操作

    字符串的操作 变量: 变量只能是 字母,数字或下划线的任意组合,但首个字符不能为数字,且不能有空格 以下关键字不能声明为变量: and ,as, assert, break ,class ,conti ...

  8. 兼容 Spring Boot 1.x 和 2.x 配置类参数绑定的工具类 SpringBootBindUtil

    为了让我提供的通用 Mapper 的 boot-starter 同时兼容 Spring Boot 1.x 和 2.x,增加了这么一个工具类. 在 Spring Boot 中,能够直接注入 XXProp ...

  9. leetcode python 009

    ##懒得自己做 ##  验证回文数字int0=63435435print(int(str(int0)[::-1])==int)

  10. C语言实现Winsocket网络传输数据时乱码问题

    问题描述:输入中文字符时在数据结尾总是有别的字符冒出 解决办法: recvBuf[ret] = '\0';//接收数据的数组,表示存储的数据截止,后面没有数据了 再运行,传输正常. 提示:C语言基础知 ...