zoukankan      html  css  js  c++  java
  • 阿里云堡垒机密钥连接ECS服务器

    文:铁乐与猫
    2017-6月中旬

    堡垒机远程桌面windows系统就不用细说了
    堡垒机远程ssh连接linux系统倒要说一下,毕竟是为安全一般只用通过密钥连接,而不使用密码的方式连接。

    首先我们得在需要远程的服务器上创建ssh密钥对,
    比如我在Redis服务器上有yunwei和kaifa两个用户,就可以分别在不同用户的家目录下创建密钥对:

    比如上图是在kaifa的家目录下,敲命令:
    ssh-keygen -t rsa
    表示创建一对rsa密钥(因为阿里云的堡垒机只认ssh-keygen创建的rsa密钥)
    三次回车(第一次是默认名称、第二次是默认空密码、第三次是确认)之后,
    在kaifa的家目录下会生成.ssh/(隐藏目录)
    和.ssh/下的id_rsa(私钥,2048位)、id_rsa.pub(公钥,要追加到认证文件)

    接下来要做的是将公钥追加到authorized_keys文件上(默认的名字,当然你也可以改)
    这个文件随追加命令敲完后而生成
    cat id_rsa.pub >> authorized_keys

    注意,以上命令操作都是在已经cd进.ssh目录下敲的,不然的话你要敲全路径。

    还有特别重要的一步,修改authorized_keys文件为600权限!
    chmod 600 authorized_keys

    如果这一步没做将会导致ssh连接不成功,认证失败。
    其实除了authorized_keys文件需要600权限以外,.ssh/目录也是需要700权限,
    只不过在敲ssh-keygen -t rsa 三次回车默认创建的.ssh/目录就是700罢了。

    authorized_keys:存放远程免密登录的公钥,主要通过这个文件记录多台机器的公钥
    id_rsa : 生成的私钥文件
    id_rsa.pub : 生成的公钥文件
    know_hosts : 已知的主机公钥清单
    如果希望ssh公钥生效需满足至少下面两个条件:
            1) .ssh目录的权限必须是700 
            2) .ssh/authorized_keys文件权限必须是600
    

    再来是修改sshd_config配置文件,使ssh使用密钥认证生效

    分别去除以下三行的#号注释

    RSAAuthentication           yes
    PubkeyAuthentication        yes
    AuthorizedKeysFile          .ssh/authorized_keys
    

    (RSA认证开启、公钥开启、公钥记录文件指定)
    此外,如果只允许使用密钥ssh连接,那么可以将密码认证给设置为不开启-no:
    PasswordAuthentication no
    这样会更安全。

    重启ssh服务
    service sshd restart
    本机连接普通用户测试
    **ssh localhost **

    堡垒机上设置好凭据,简单来说也就是将私钥id_rsa对应下载回本地客户机,
    然后再打开文件,复制里面的内容到堡垒机网页相应设置上。

    如果是在普通的linux客户端上用ssh命令连接是这样的:

    ssh -i 私钥文件 用户@远程服务器IP -p ssh端口

    而在堡垒机上只不过隐藏了这条命令,界面是这样的:

    当然后面可以根据分明细组和用户来做到列表明细化。
    这就不是重点了。

    END

  • 相关阅读:
    J2SE API & J2EE API & SSH API
    JSP转发和重定向的区别
    Tomcat详解
    面试题:通过问题排查,考察测试链路熟练程度
    c语言中求数组的长度
    CGContextBeginPath
    CGContextAddAr绘制一个圆弧
    将当前的手机屏幕上的视图控件的view拍照 并保存到手的album中
    CGContextFillPath(ctx)
    CGContextSetRGBFillColor
  • 原文地址:https://www.cnblogs.com/tielemao/p/8509153.html
Copyright © 2011-2022 走看看