刚开始用云服务器时,很多人第一关就卡住了。实名没做完,密钥找不到,或者教程照着做了,SSH还是连不上。这篇文章按实际操作顺序讲如何连接阿里云,重点放在ECS的公网地址、密钥和安全组端口这三处,大部分连接失败都能从这里找到原因。

连接前先确认三件事
动手之前,先看账号是否完成实名认证,目标产品是否已经开通,以及本地网络能否访问阿里云的公网地址。实名认证没完成时,有些资源无法创建,控制台的部分功能也可能进不去。这一步很容易被跳过,但一旦出问题,后面的排查会很乱。
账号准备好后,建议先在“账号管理”里开启多因素认证(MFA)。日常操作尽量不要直接用主账号的AccessKey,因为主账号权限最大,一旦泄露,影响范围很难控制。更稳妥的做法是通过RAM(资源访问控制)创建子账号,只授予当前任务需要的权限。
三种常见的连接方式
阿里云的连接需求大致分三类,对应的场景各不相同。
- 控制台访问:用浏览器登录阿里云官网,查看资源、调整配置、看账单,大多数日常查看都在这里完成。
- 远程登录云服务器:Linux实例用SSH,Windows实例用远程桌面连接ECS。部署应用和维护服务基本靠这种方式。
- 程序化连接:用AccessKey配合SDK或CLI调用API,适合自动化运维、批量操作,或者和本地系统对接。
三种方式的区别主要在身份凭证和网络路径上。控制台用账号密码加MFA;远程登录用密钥对或密码,还要看安全组是否放行了对应端口;程序化连接则用AccessKey ID和AccessKey Secret。弄清楚这一点,报错时就知道先看哪里。
案例:用SSH连接一台ECS
小李是一位独立开发者,在华东1(杭州)地域买了一台Ubuntu系统的ECS,打算用来部署个人博客。买完后,他在本地终端执行SSH命令,提示连接超时。他的排查过程基本可以照着走一遍。
- 确认公网IP:在ECS控制台的实例详情页找到公网IP,确认实例确实分配了公网地址。只有内网地址的话,从外网是连不上的。
- 检查安全组:他打开安全组规则,发现入方向只放行了80和443,22端口没有开。他添加了一条SSH(TCP 22)规则,授权对象没有填0.0.0.0/0,而是限制在自己办公网络的出口IP上。放行的范围越宽,暴露给外部的面就越大。
- 验证密钥:创建实例时他选的是密钥对登录,所以需要对应的私钥文件。命令如下:
ssh -i ~/.ssh/aliyun_key.pem root@你的公网IP
用户名要以实例镜像的默认登录用户为准,不同系统的默认账号并不一样。如果私钥文件权限过于开放,OpenSSH会直接拒绝使用,这时执行chmod 400 ~/.ssh/aliyun_key.pem修正权限即可。
三步做完,小李成功登录了服务器。之后他创建了普通用户,关闭了root的密码登录,又把SSH的访问范围收紧了一些。整个过程不复杂,却正好覆盖了公网地址、安全组和密钥权限这三个最常见的问题。
连接失败通常出在哪里
连接失败的原因大多集中在下面几类:
- 安全组没有放行对应端口,或者授权IP范围不包含你当前的出口地址。出口IP可能会变,比如换了网络之后,之前能连的规则就可能失效。
- 实例没有公网IP,却用内网地址从外网去连。
- 私钥路径写错、权限过宽,或者私钥和实例绑定的密钥对不是同一把。
- 系统防火墙(如ufw、firewalld)和安全组同时拦截。改了安全组却没生效时,要检查服务器内部的防火墙设置。
- 用AccessKey调用API时,本地时间偏差过大会导致签名失败;子账号缺少对应的RAM权限,则会报权限相关的错误。
排查时建议按网络可达性、端口放行、身份凭证、权限策略的顺序逐层来。每次只改一处,改完立刻验证,否则很容易越改越乱,也分不清到底是哪一处起了作用。
连上之后的几个安全习惯
能连上只是第一步,长期使用还需要注意安全。AccessKey不要写进代码仓库,可以通过环境变量或凭据管理服务注入。安全组尽量按最小范围开放,不用的端口及时关掉。密钥要定期轮换,操作日志也要定期看一看。阿里云的云安全中心和操作审计可以帮助团队发现异常登录和高风险配置,建议在使用初期就打开。
小结
如何连接阿里云,说到底是把身份、网络和权限三者的关系理清楚。先完成账号和实名准备,再按场景选择控制台、SSH或API方式,连接失败时按层排查。小李的例子说明,大多数问题并不复杂,关键是把每个环节逐一核对。