zoukankan      html  css  js  c++  java
  • SSH

    SSH
    作用:
    安全shell,用于登录远程主机并且在远程主机执行命令的
    telnet
    明文密码
    客户端 服务端
    [root@localhost ~]# ssh
    ssh          ssh-agent    sshd         ssh-keyscan  ssh-add      ssh-copy-id  ssh-keygen 
    //服务端                   //客户端
    SSH客户端:
    配置文件:/etc/ssh/ssh_config
    ssh
    xshell
    putty
    securecrt
    SSH服务端:
    配置文件:/etc/ssh/sshd_config 重启sshd才会生效
    [root@localhost ~]# service sshd restart
    sshd
    依赖软件:
    [root@localhost ~]# which ssh
    /usr/bin/ssh
    [root@localhost ~]# rpm -qf /usr/bin/ssh
    openssh-clients-5.3p1-117.el6.x86_64
    [root@localhost ~]# which sshd
    /usr/sbin/sshd
    [root@localhost ~]# rpm -qf /usr/sbin/sshd
    openssh-server-5.3p1-117.el6.x86_64
    在Linux上登录另一个linux
    linux上的ssh使用
    [root@localhost ~]# ssh 172.16.88.191
    登录方式
    LINUX平台:
    ssh -p 200 u1@172.16.88.191
    WINDOWS平台:
    shh u1@172.16.80.191 200
    用ssh连接远程主机,登录用户是以当前用户身份登录远程shell
    自动认为远程主机也有与当前用户名相同的用户
    ssh连接:连接出错
    2级别,3级别
    [root@localhost ~]# chkconfig --list |grep sshd
    sshd           	0:off	1:off	2:on	3:on	4:on	5:on	6:off
    [root@localhost ~]# chkconfig sshd off
    [root@localhost ~]# chkconfig --list |grep sshd
    sshd           	0:off	1:off	2:off	3:off	4:off	5:off	6:off
    [root@localhost ~]# chkconfig sshd on
    [root@localhost ~]# chkconfig --list |grep sshd
    sshd           	0:off	1:off	2:on	3:on	4:on	5:on	6:off
    [root@localhost ~]# service sshd status
    openssh-daemon (pid  1765) is running...
    [root@localhost ~]# 
    公钥:
    (首次连接时提示)
    加密,将明文的字符串改为密文的字符串
    加密算法:
    • 对称,密钥只有1个
    • 非对称,密钥有2个(公钥,私钥)
    • 公钥,私钥成对使用,互相加解密,单一没用,不能通过一方算出另一方
    • 公钥可以对外公开(public)
    • ,私钥不能公开,私人所有(妥善保管)(private)
    常用:
    数据加密(保密性)
    用公钥加密,私钥解密
    123---公钥》1#a(公钥加密之后)
    1#a---私钥》123(私钥解密)
    数字签名(唯一性)
    用私钥加密,用公钥解密
    123---hash(哈希)>>摘要值---私钥》密文
    123和密文---------》对方
    密文---公钥》摘要值
    123---hash(哈希)>>摘要值
    两个摘要值比较,如果相同,就没问题,否则,有问题
    第一次连接:
    The authenticity of host '172.16.50.59 (172.16.50.59)' can't be established.
    RSA key fingerprint is 9f:42:70:b5:79:0c:1d:38:de:6e:80:f8:31:b0:3d:e0.
    Are you sure you want to continue connecting (yes/no)?
    know_hosts文件
    存在客户端
    内容是曾经连接过的服务器的公钥
    免密登录
    前提:配置好ssh的互信(单向)
    1、生成客户机(u1)的私钥公钥(家目录/.ssh/(隐藏文件))
    [root@localhost ~]# su zzh
    [zzh@localhost ~]$ ssh-keygen
    Generating public/private rsa key pair.
    Enter file in which to save the key (/home/zzh/.ssh/id_rsa): 
    Created directory '/home/zzh/.ssh'.
    Enter passphrase (empty for no passphrase): 
    Enter same passphrase again: 
    Your identification has been saved in /home/zzh/.ssh/id_rsa.
    Your public key has been saved in /home/zzh/.ssh/id_rsa.pub.
    The key fingerprint is:
    52:08:16:c2:80:16:c8:08:a7:a9:4f:c6:e5:7a:e8:8b zzh@localhost.localdomain
    The key's randomart image is:
    +--[ RSA 2048]----+
    |O++ +. |
    |+*.o . . |
    |+ . . . |
    |.. o   . |
    |. + . . S        |
    | + o   . |
    | + . |
    | o . |
    |E o. |
    +-----------------+
    su u1
    ssh -keygen
    id_rsa (存放私钥的文件)
    [是否设置密码(保护私钥文件)]:
    id_rsa.pub (存放公钥的文件)
    2、将公钥放到远程主机(服务端)上的某个用户名下
    命令:ssh-copy-id u2@172.16.88.191(另一个主机)
    [zzh@localhost .ssh]$ ssh-copy-id u1@172.16.88.191
    u1@172.16.88.191's password: 
    Now try logging into the machine, with "ssh 'u1@172.16.88.191'", and check in:

     .ssh/authorized_keys

    to make sure we haven't added extra keys that you weren't expecting.
  • 相关阅读:
    golang/windows如何删除只读属性文件
    golang/TLS 采坑
    gsweb —— 理解HTTP协议
    gsweb —— 自己动手用golang写WEB框架
    Scala冒泡排序、快排、归并
    Hadoop自动化部署脚本
    大数据学习笔记
    vim键盘图
    什么是回调或高级函数?
    使用CSS表达式去除超链接的虚框的一些方法
  • 原文地址:https://www.cnblogs.com/qluzzh/p/10306264.html
Copyright © 2011-2022 走看看