• [linux]阿里云主机的免密码登陆安全SSH配置与思考


    公司服务器使用的第三方云端服务,即阿里云,而本地需要经常去登录到服务器做相应的配置工作,鉴于此,每次登录都要使用密码是比较烦躁的,本着极速思想,我们需要配置我们的免登陆。

    enter image description here

    一 理论概述

    SSH介绍

    SSH 为 Secure Shell 的缩写,由 IETF 的Network Working Group提出.
    SSH 是建立与应用层基础上的安全协议.
    SSH 相对可靠,专为远程s登录会话和其他网络服务提供安全性的协议.

    SSH好处

    利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题.

    SSH基本使用

    SSH主要用于远程登录。假定你要以用户名root,登录远程主机10.97.0.10

    $ ssh root@10.97.0.10
    

    假如你本地用户名与远程用户名一致,可以缩写为:

    $ ssh 10.97.0.10
    

    SSH工作原理

    1. 服务器接受到客户端登录请求,首先会把公钥发给用户;
    2. 客户端使用该公钥,将登录密码加密后,发给服务器;
    3. 服务器利用自己的公钥,解密登录密码,如果成功,允许客户端访问。

    二 实战分析

    需求场景

    远程免密码登录服务器

    环境属性

    远程服务器:centos linux版本
    本地计算机:mint linux版本
    (说明:基本上不管哪一种linux服务版本,基本配置基本一致)

    解决方案

    我们对免登陆,我们可以使用 SSH协议,通过公钥,私钥来实现.


    三 本地客户端配置

    a.查询本地是否生成过

    打开命令窗口 查询本地是否已有SSH秘钥:

     cat ~/.ssh/id_rsa.pub
    

    如果之前使用过,可以看到如图。
    enter image description here
    如果没有,则说明没有生成过,这里我的已经生成了
    如果现实ssh-rsa或 ssh-dsa开头的字符串,说明您本地已经有了,可以跳过下面b步.

    b.生成公钥

     ssh-keygen -t rsa -C "*******@qq.com"
    

    注解:引号内是你唯一Email,这里可以作为以后Git远程仓库使用.
    该指令回车后,需要输入键值对和密码,直接回车就行.

    c.获取公钥

     cat ~/.ssh/id_rsa.pub
    

    与a步一致,查看是否生成.

    通过上面过程,会在本地客户端生成一堆公钥私钥,目录一般在/home的子目录下

    注意:这里我的用户名hyh,所以在/home/hyh/.ssh目录下
    注意2: .ssh文件夹属于隐藏文件夹
    Linux图形化界面可以使用:Ctrl+H快捷键查看
    Shell命令窗口使用:ls -a 命令查看
    /home/hyh下生成.ssh目录,.ssh有id_rsaid_rsa.pub


    四 配置远程服务端

    a.复制文件

    复制本地客户端文件到远程服务端,使用scp进行上传
    本地运行(这里路径使用自己配置,包括远程IP):

     scp -r /home/hyh/.ssh/id_rsa.pub root@10.97.0.10:/home/.ssh/id_rsa.pub 
    

    注意:我这里远程服务器使用的是root用户,直接在/home下的.ssh下,如果远程还没有该目录,请自行先到远程服务器mkdir .ssh 生成一个.
    运行上面代码,是要输入密码登录的,输入正确之后,会显示上传进度.

    id_rsa.pub      100%  223     0.2KB/s   00:00
    

    b.添加该文件到 authorzied_keys文件

    $ cat id_rsa.pub >> .ssh/authorized_keys
    

    c.设置权限

    $ chmod 600 .ssh/authorized_keys
    

    四 测试

    在本地客户端 ssh登录远程 服务端

    $ ssh 10.97.0.10
    

    OK...第一次登录还需要再次输入一次密码。往后就不需要了

    The authenticity of host '10.97.0.10 (10.97.0.10)' can't be established.
    RSA key fingerprint is 00:a6:a8:87:eb:c7:40:10:39:cc:a0:eb:50:d9:6a:5b.
    Are you sure you want to continue connecting (yes/no)? **yes**
    Warning: Permanently added '192.168.1.181' (RSA) to the list of known hosts.
    Last login: Thu Dec 29 23:31:17 2016 from 10.97.0.10
    
    Welcome to aliyun Elastic Compute Service!
    

    至此,完美的实现了客户端免密码登录到服务端的配置。

    SSH百科

    SSH 为 Secure Shell 的缩写,安全外壳协议,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH在正确使用时可弥补网络中的漏洞。SSH客户端适用于多种平台。几乎所有UNIX平台—包括HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平台,都可运行SSH。

    本文完
    原创文章,转发请注明出处:http://www.cnblogs.com/hyhnet/p/6253691.html
    独立博客:http://www.hanyahong.com
    Wechat :wixf150

  • 相关阅读:
    [luogu1594]护卫队(dp)
    [luogu1968]美元汇率(dp)
    [NOIP2006]金明的预算方案(dp)
    [caioj1056](相同数列问题)填满型01背包2
    [IPUOJ]混合背包 (dp)
    趣说倍增算法
    [POI2005]BAN-Bank Notes (dp、倍增)
    NOIP考前注意
    SharePoint 2013 App 开发—Auto Hosted 方式
    SharePoint 2013 App 开发—App开发概述
  • 原文地址:https://www.cnblogs.com/hyhnet/p/6253691.html
Copyright © 2020-2023  润新知