阿里云 ECS 账号管理后台提供了创建 SSH 密钥对的功能,用来提高 SSH 连接的安全性。记得前面写过Xshell 用 SSH 密钥登录服务器配置过程的文章,这里面的密钥是 Xshell 生成的。那么今天我们来体验一下阿里云 ECS 服务器密钥对如何生成及使用。
SSH 密钥对简称为密钥对,是阿里云提供的远程登录 ECS 云服务器的认证方式,与传统的用户名加密码模式的认证方式,密钥对的方式安全性更高,2048 位加密不存在被破解的可能。
SSH 密钥对通过加密算法生成一对密钥,一个对外界公开的叫公钥,另一个自己保留的叫私钥。
把公钥放到 Linux 云服务器中,那么在本地或者另外的 ECS 云服务器中,你可以使用私钥通过 Xshell 软件登录而不用输入密码。使用 SSH 密钥对登录 Linux 云服务器,默认禁用密码登录来提高安全性。
使用 lastb 命令看看今天有多少人在尝试登陆 SSH 连接,下图看到的都是登陆失败的用户,可见有多少人有意无意中在撸你的服务器,时刻处在危险之中,当务之急是给阿里云 ECS 加一把锁头。
没有阿里云账号的点我领取阿里云千元代金券,购买阿里云全部产品有不同程度优惠。注册好之后登陆你的阿里云管理控制台,云服务器 ECS,选择你购买的云服务器地域,老魏这里使用的是华东 1-杭州,网页下面能找到密钥对,再看右上角点击“创建密钥对”。
点击创建密钥对,输入名称(老魏用域名来区分不同密钥对),创建类型选择自动新建密钥对,确定。
这时候浏览器会弹窗提示是否下载私钥,大家一定要下载私钥保存到本地电脑和邮箱,因为你只有一次下载私钥的机会。
在刚创建的密钥最右侧,点击“绑定密钥对”,弹窗如下图,选择你要绑定到哪个 ECS 云服务器实例,再点击向右的箭头添加上去,确定。
这样我们就在云服务器层面把密钥对和实例绑定成功了。
这里老魏碰到了问题,这时候务必要重启一下阿里云 ECS 云服务器,否则下面第三步操作的时候会无法用密钥登陆到服务器,提示“所选的用户密钥未在远程主机上注册”。
现在我们打开 SSH 软件,老魏用的是 Xshell6.0,打开 SSH 连接属性,方法改成 Public Key,用户密钥右侧点击浏览,弹窗中选择导入,把刚才下载的私钥导入进来。
因为阿里云创建的私钥使用未加密的 PEM(Privacy-enhanced Electronic Mail) 编码的 PKCS#8 格式,我们不用输入密码直接点击确定。
最后点击连接。
当你看到 Welcome to Alibaba Cloud Elastic Compute Service !字样的时候,SSH 密钥连接就成功了。
1、阿里云 ECS 创建密钥默认没有密码,这方面 SSH 软件就可以在密钥的基础上加密码,双重加密(参考Xshell 用 SSH 密钥登录服务器的配置过程)。
2、阿里云 ECS 密钥和 SSH 软件创建的密钥一样都可以给 SSH 连接提供超强加密功能,提高了 SSH 连接安全性。
3、阿里生成的私钥务必下载到本地和邮箱保存好,保证换一台电脑也可以正常 SSH 登陆阿里云 ECS,如果不慎丢失就要先删除掉现有的密钥,再重新生成一次。