zoukankan      html  css  js  c++  java
  • ssh日常优化使用

    config文件的使用

      ssh命令默认会加载 ~/.ssh/config 文件作为配置文件,如果没有则采用默认配置。如果我们想要对ssh进行定制,那么就可以使用如下方法

    [root@linux-node2 .ssh]# pwd
    /root/.ssh
    [root@linux-node2 .ssh]# cat config 
    Host host2
        StrictHostKeyChecking no
        HostName 10.10.206.145
        Port 5821
        ForwardAgent yes
        User root
        Controlpath ~/.ssh/ssh-%r@%h:%p.sock

    Host *    # 通配符的方式定义了ssh连接时的默认用户名和端口
        StrictHostKeyChecking no
        HostName %h
        Port 1234
        User root
        Controlpath ~/.ssh/ssh-%r@%h:%p.sock
    [root@linux-node2 .ssh]#

      这样再次连接10.10.206.145时,只需要使用 ssh host2 即可。

    ssh-agent管理密钥

      一般在生产上,我们使用ssh的密钥进行登陆,有时会对密钥进行加密,那么每次连接时都需要输入密码,非常麻烦,openssh提供了ssh-agent用来管理密钥

      (如果我们有多台远程服务器与多个私钥文件,使用ssh-agent可以使我们不用在每次登陆时使用-i参数指定私钥文件,ssh-agent会尝试使用不同的私钥文件,直至成功)

    # 启动ssh-agent
    ssh-agent
    
    # 添加私钥交给ssh-agent管理
    ssh-add ~/.ssh/id_rsa
    
    # 列出ssh-agent管理的密钥
    ssh-add -L
    
    # 注意
    1、使用ssh-add失败,提示Could not open a connection to your authentication agent.
    执行:ssh-agent bash 再试
    

      还有一种情况下比如,主机A需要通过主机B才能访问主机C的情况下,我们可能需要在B上保存私钥才可以,但是如果使用ssh-agent的agent forwarding功能后,就可以使用主机A登陆B和C了,而不用在B上保存私钥

  • 相关阅读:
    运维自动化轻量级工具pssh
    Linux下的tar压缩解压缩命令详解
    [shell] while read line 与for循环的区别
    Linux sed命令
    [转]linux awk命令详解
    Centos7上部署openstack ocata配置详解
    自动化运维工具——puppet详解(一)
    OpenStack 初探(一) -- All-In-One模式部署(初学OpenStack必备)
    shell中的重定向(输入输出)
    vim批量注释和反注释快捷键
  • 原文地址:https://www.cnblogs.com/dachenzi/p/8677286.html
Copyright © 2011-2022 走看看