赞
踩
之前一直使用用户名+密码
的方式远程登录阿里云服务器。经过一段时间,发现这种方式有如下缺点:
so,现在采取比较安全且便捷的SSH密钥对方式进行登录,在配置过程中,也踩了个大坑,所以记录一下,希望对需要的朋友提供一些帮助。
1、登录阿里云,选择左侧产品与服务
–>云服务器ECS
–>网络与安全
–>密钥对
,点击右上角创建密钥对,创建密钥。
2、创建密钥,名称随意,类型选择“自动创建密钥对”,点击确定,生成密钥对,注意此处必须要将私钥下载至本地
,后续用于密钥配对。
注:如果使用的是chrome内核的浏览器,浏览器会自动下载私钥。
创建密钥后,返回密钥管理页面,点击绑定密钥对,进入如下界面:
点击左侧实例名称,将其添加到右侧列表,确定。
这样就成功将密钥对绑定到了服务器实例。
若不配置安全组规则,则无法使用SSH密钥对进行远程登录,所以此处对服务器安全组进行设置:
1、进入安全组:
2、在安全组入方向
,开放SSH(22)
端口,授权对象为0.0.0.0
。
因为此处使用Putty进行远程登录,而阿里云服务器生成的私钥格式为pem
,所以需要使用puttygen.exe
将其格式修改为Putty可识别的密钥格式ppk
。
步骤如下:
1、进入Putty安装目录,运行puttygen.exe。
此处将阿里云私钥导入,注意此处导入格式选择ALL FILES
。
单击 Save private key。PuTTYgen 会显示一条关于在没有口令的情况下保存密钥的警告,单击 是(Y)。指定与密钥对相同的私钥名称,保存。PuTTY 会自动为文件添加 .ppk 扩展名。
可以看到生成了ppk格式的密钥。
进入Putty页面,选择SSH
->Auth
,导入ppk
格式的密钥。
导入之后,返回主页面,点击Session。
在 Host Name (or IP address) 里输入需要连接的实例公网
IP 地址,
在 Port 里输入端口号 22
;
Connection type 选择SSH
。
至此大功告成?不,连接之后会输出消息Server refused our key
。
这个地方我在网上搜索了很久,各种解决办法层出不穷,最后发现需要重启云服务器实例
,重启之后即可通过SSH密钥连接。
笔者初使用Putty时,经常遇到这种情况:偶尔切换到网页隔一段时间,再切回到putty会发现无法使用,状态显示为inactive
,这是因为没有重复发包给服务器,导致服务器休眠.
可以修改putty,每隔一段时间(此处示例为10s,默认为0s)发给服务器一个包,让服务器不休眠。
绑定密钥对之后,务必要重启一下阿里云 ECS 云服务器,否则之后进行操作连接,会报错Server refused our key。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。