三三世界-百宝箱

文章 分类 标签
132 9 250

公告

暂无站点公告

阿里云使用密钥方式连接Linux服务器ssh

三三 2024-03-30 984 0条评论 安全加固Linux使用 安全加固centos密钥对登陆

首页 / 正文

SSH密钥对是一种安全便捷的登录认证方式,用于在SSH协议中进行身份验证和加密通信。由公钥和私钥组成且仅支持Linux实例,满足您对更高安全性、便利性和自动化能力的业务需求。您可以直接在Windows环境和支持SSH命令的环境(例如Linux环境、Windows下的MobaXterm)中使用SSH密钥对连接Linux实例。

创建SSH密钥对

创建密钥对后,系统将自动下载私钥,请您妥善保管。使用密钥对绑定ECS实例后,如果没有私钥,您将无法登录该ECS实例。您在一个地域最多可以拥有500个密钥对。本文介绍如何在ECS控制台上创建SSH密钥对。

操作步骤
1.登录ECS管理控制台。
2.在左侧导航栏,选择网络与安全 > 密钥对。
3.在页面左侧顶部,选择目标资源所在的资源组和地域。地域
4.在密钥对列表页面,单击创建密钥对。
5.在创建密钥对页面,完成以下配置。
密钥对名称
密钥对名称不能和已有密钥对重复。长度为2~128个字符,不能以特殊字符及数字开头,只可包含特殊字符中的英文句号(.)、下划线(_)、短划线(-)和冒号(:)。
创建类型
您可以选择以下任一类型创建密钥对。建议您选择自动新建密钥对,并及时保存私钥。
自动新建密钥对:系统会为您自动创建密钥对。创建完成后将自动下载私钥,您只有这一次下载私钥的机会,因此请妥善保存私钥文件。
导入已有密钥对:您可以自行导入Base64编码的公钥内容。

资源组
您可以为密钥对指定一个资源组,实现对资源的分组管理,详情请参见资源组。

标签
您可以为密钥对绑定一个或多个标签,便于搜索和资源聚合,详情请参见标签概述。

单击确定。

密钥对创建成功后,浏览器自动下载私钥文件(密钥对名称.pem)到本地电脑。

为单台ECS实例绑定密钥对

理论上 ,完成上述步骤,直接可以在秘钥列表点击绑定密钥对,就直接可以点选绑定,这个步骤需要重启,如果这步没操作也可以用下列方式。:

1.登录ECS管理控制台。
2.在左侧导航栏,选择实例与镜像 > 实例。
3.在页面左侧顶部,选择目标资源所在的地域。地域
4.找到需要操作的实例,在操作列中,选择image > 实例属性 > 绑定密钥对。
5.在选择密钥对下拉列表中,选择需要绑定到该ECS实例的密钥对,然后单击确定。

重启或启动ECS实例,使操作生效。

为多台ECS实例批量绑定密钥对

1.登录ECS管理控制台。
2.在左侧导航栏,选择网络与安全 > 密钥对。
3.在页面左侧顶部,选择目标资源所在的地域。地域
4.找到需要操作的密钥对,在操作列中,单击绑定密钥对。
5.在选择ECS实例栏中,选中需要绑定该密钥对的ECS实例名称,单击>图标,将其移入已选择栏中。
说明
如果选择ECS实例栏中的ECS实例名称显示为灰色,表示该实例为Windows实例,不支持SSH密钥对。
6.单击确定。

重启或启动ECS实例,使操作生效。

如果ECS实例处于运行中状态,需要重启实例使操作生效。具体操作,请参见重启实例。
如果ECS实例处于停止中状态,需要启动实例使操作生效。具体操作,请参见启动实例。

使用第三方客户端通过密钥认证登录Linux实例

前提条件
1.已创建密钥对并下载.pem私钥文件。具体操作,请参见创建SSH密钥对。
2.实例处于运行中状态。
3.已为实例绑定密钥对,具体操作,请参见绑定SSH密钥对。
4.创建实例时分配了固定公网IP或为实例绑定了EIP,具体操作,请参见绑定ECS实例。
5.已为实例所在的安全组添加安全组规则,并放行对相应端口(例如SSH协议默认的22端口)的访问。具体操作,请参见添加安全组规则。

连接Linux实例
根据本地设备不同的环境,您可以通过不同的方式使用密钥远程连接Linux实例。

在Windows环境中使用密钥对
本节以PuTTYgen为例介绍如何将私钥文件格式从.pem转换为.ppk,并以PuTTY为例介绍如何使用密钥对连接Linux实例。

**1.下载并安装PuTTYgen和PuTTY。
下载链接如下:
PuTTYgen
PuTTY

2.将.pem私钥文件转换为.ppk私钥文件。**

启动PuTTYgen。

选择Type of key to generate为RSA,然后单击Load。
选择All Files(*.*)。
选择待转换的.pem私钥文件。
在弹出的对话框中,单击确定。
单击Save private key。
在弹出的对话框中,单击是。
指定.ppk私钥文件的名称,然后单击保存。

在这个过程中建议给生成的key增加一个密码

在密码保护"key passphrase"对话框中,输入密码,在"confirm passphrase"以确认。这样在登陆的时候会提示输入密码后才可以登陆。

启动PuTTY。

3.配置用于身份验证的私钥文件。

选择Connection > SSH > Auth > Credentials(部分软件直接在Connection > SSH > Auth最下端)。
在Private key file for authentication:区域,单击Browse…。
选择转换好的.ppk私钥文件。
配置连接Linux实例所需的信息。
单击Session。
在Host Name (or IP address)中输入登录账号和实例公网IP地址。
格式为username@IP 地址,例如ecs-user@10.10.xx.xxx。
在Port中输入端口号22。
选择Connection type为SSH。
单击Open。

当出现以下提示时,说明您已经成功地使用SSH密钥对登录了实例。
001.png

在支持SSH命令的环境中使用密钥对(通过命令配置信息)

本节介绍如何在支持SSH命令的环境(例如Linux、Windows下的MobaXterm)中通过命令配置所需信息,并通过SSH命令登录Linux实例。

找到.pem私钥文件在本地机上的存储路径,例如~/.ssh/ecs.pem
此处路径和文件名称仅为示例,在后续命令中请根据实际情况修改。
运行以下命令修改私钥文件的属性。

chmod 400 [.pem私钥文件在本地机上的存储路径]

示例如下:

chmod 400 ~/.ssh/ecs.pem

运行以下命令连接至实例。

ssh -i [.pem私钥文件在本地机上的存储路径] username@[公网IP地址]

示例如下:

ssh -i ~/.ssh/ecs.pem ecs-user@10.10.xx.xxx

在支持SSH命令的环境中使用密钥对(通过config文件配置信息)

本节介绍如何在支持SSH命令的环境(例如Linux、Windows下的MobaXterm)中通过命令配置所需信息,并通过SSH命令登录Linux实例。

找到.pem私钥文件在本地机上的存储路径,例如~/.ssh/ecs.pem。
此处路径和文件名称仅为示例,在后续命令中请根据实际情况修改。
运行以下命令修改私钥文件的属性。

chmod 400 [.pem私钥文件在本地机上的存储路径]

示例如下:

chmod 400 ~/.ssh/ecs.pem

运行以下命令,进入用户主目录下的.ssh目录,并创建config文件。

cd ~/.ssh
vim config

在config配置文件内,按i进入编辑模式,添加如下配置项。

配置一台ECS实例的示例内容如下:

# 输入ECS实例的别名,用户SSH远程连接。
Host ecs
# 输入ECS实例的公网IP地址。
HostName 121.196.**.**
# 输入端口号,默认为22。
Port 22
# 输入登录账号。
User ecs-user
# 输入.pem私钥文件在本机的地址。
IdentityFile ~/.ssh/ecs.pem

配置两台ECS实例的示例内容如下:

# 输入ECS实例的别名,用户SSH远程连接。
Host ecs1
# 输入ECS实例的公网IP地址。
HostName 121.196.**.**
# 输入端口号,默认为22。
Port 22
# 输入登录账号。
User ecs-user
# 输入.pem私钥文件在本机的地址。
IdentityFile ~/.ssh/ecs.pem

# 输入ECS实例的别名,用户SSH远程连接。
Host ecs2
# 输入ECS实例的公网IP地址。
HostName 121.196.**.**
# 输入端口号,默认为22。
Port 22
# 输入登录账号。
User ecs-user
# 输入.pem私钥文件在本机的地址。
IdentityFile ~/.ssh/ecs.pem
添加完成后,按Esc键,并输入:wq保存config文件。

运行以下命令,重启SSH服务。

**警告
若重启SSH服务失败,会存在SSH服务不可用风险,可能导致业务中断,建议您在非业务高峰期时执行该操作。**

service sshd restart

运行命令连接至实例。

ssh [ECS实例的别名]

示例如下:

ssh ecs

MAC操作方法:

在 macOS 中,您可以使用 ssh 命令来连接远程服务器,而不需要 PuTTY 或 PuTTYgen。以下是使用 PuTTYgen 生成的 .ppk 格式私钥文件在 macOS 终端中连接 SSH 的步骤:

将私钥文件从 .ppk 格式转换为 OpenSSH 格式:

macOS 上的 SSH 客户端使用 OpenSSH 格式的密钥。您需要将 PuTTYgen 生成的 .ppk 格式密钥转换为 OpenSSH 格式。您可以使用 PuTTYgen 或者使用 ssh-keygen 命令来完成转换。

使用 PuTTYgen 转换密钥的步骤:

打开 PuTTYgen。
点击 "Load" 按钮,选择您的 .ppk 格式私钥文件。
在菜单中选择 "Conversions" -> "Export OpenSSH key",然后保存为一个新文件。
使用 ssh-keygen 命令转换密钥的步骤:

ssh-keygen -i -f path/to/your/private_key.ppk > path/to/your/converted_private_key

将私钥文件放置在 ~/.ssh/ 目录下:

将转换后的 OpenSSH 格式私钥文件放置在您的 macOS 用户的 ~/.ssh/ 目录下。如果该目录不存在,可以手动创建。

设置私钥文件的权限:

在终端中运行以下命令,确保私钥文件的权限正确:

chmod 600 ~/.ssh/your_private_key

连接到远程服务器:

使用 ssh 命令连接到远程服务器:

ssh -i ~/.ssh/your_private_key username@remote_host

将 your_private_key 替换为您的私钥文件名,username 替换为您在远程服务器上的用户名,remote_host 替换为远程服务器的 IP 地址或主机名。

输入密码(如果设置了密码):

如果您在私钥文件生成过程中设置了密码,系统会提示您输入密码。输入密码后,您应该可以成功连接到远程服务器。

通过以上步骤,您可以在 macOS 终端中使用 PuTTYgen 生成的私钥文件连接到远程服务器。

参考连接:https://help.aliyun.com/zh/ecs/user-guide/connect-to-a-linux-instance-by-using-an-ssh-key-pair

评论(0)

当前没有评论,还不快来留下第一个脚印吧



最新评论

  • 三三

    @Doug Shume it's ok for me , you can post here.

  • refugiaguenther

    Saved as a favorite, I like your website!

  • josefa

    If some one wishes to be updated with hottest technologies after that he must be visit this site and be up to date daily.

  • Penzu

    Heello would you mind sharing which blog platform you're using? I'm planning to start my own blog in the near future but I'm having a tough time making a decision between BlogEngine/Wordpress/B2evolution and Drupal. The reason I ask is because your layout seems different then moost blogs and I'm looking for something completely unique. P.S Apologies forr being off-topic butt I had to ask!

  • Yupoo Fendi

    Thanks to my father who shared with me regarding this webpage, this website is genuinely amazing.

  • Doug Shume

    Hi, I have an overflow of customers that I'd like to send to you but I want to make sure you can handle more leads, let me know if you'd like me to send you more info.

  • SuperWind

    zh.us.to 有效
    kms.03k.org 有效
    kms.chinancce.com
    kms.shuax.com 有效
    kms.dwhd.org 有效
    kms.luody.info 有效
    kms.digiboy.ir 有效
    kms.lotro.cc 有效
    www.zgbs.cc 有效
    cy2617.jios.org 有效

  • 三三

    @         权限问题,试试sudo 再加命令。

  •         

    你好提示Permission denied 怎么办啊

日历

2024年12月

1234567
891011121314
15161718192021
22232425262728
293031    

文章目录

上一张 下一张