zoukankan      html  css  js  c++  java
  • SSH原理及操作

    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
    "}
    
    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中

  • 相关阅读:
    浅析data:image/png;base64的应用
    利用Audacity软件分析ctf音频隐写
    利用Audacity软件分析ctf音频隐写
    php笔记(一)php介绍及数据类型
    php笔记(一)php介绍及数据类型
    ctf学习(web题二)
    ctf学习(web题二)
    win10显示许可证即将过期,但在激活界面显示的仍是已激活问题解决
    实验吧web题:
    js各种练习
  • 原文地址:https://www.cnblogs.com/lemon-le/p/5981986.html
Copyright © 2011-2022 走看看