为避免因密码泄露造成的安全风险,建议配置自定义权限策略,禁止RAM用户创建密码登录的Linux实例,仅可创建密钥对登录的实例。
背景信息
在创建ECS实例时,用户可能倾向于设置简单易记的密码,如“Test123456!”或“Password!”。这些密码容易被攻击者通过暴力破解或字典攻击手段猜出。即使使用了复杂的密码,用户也可能在多个系统中使用相同的密码,此时一个系统的密码被泄露,攻击者便可以利用这个密码尝试登录其他系统,增加安全风险。
阿里云推荐您在创建ECS实例时,选择SSH密钥对作为登录凭证,SSH密钥对安全强度远高于常规用户密码,且从公钥逆向推出私钥的难度极高,可以杜绝暴力破解威胁。同时,也推荐您在连接实例时通过会话管理连接实例,会话管理是云助手提供的功能,无需使用实例密码或密钥对,相比常规登录方式更加安全。
操作步骤
以下提供了一个示例,禁止RAM用户(Alice)创建密码登录的Linux实例。
在RAM控制台,创建RAM用户(Alice)。
具体操作,请参见创建RAM用户。
在RAM控制台,创建权限策略(ecs-password-control),选择脚本编辑,使用如下策略内容。
说明以下策略表示:禁止在创建Linux实例时选择登录凭证为自定义密码,也不能通过重置实例密码或更换系统盘的方式重新设置登录凭证为密码。
{ "Version": "1", "Statement": [ { "Action": [ "ecs:RunInstances", "ecs:CreateInstance", "ecs:ReplaceSystemDisk" ], "Resource": "*", "Condition": { "Bool": { "ecs:PasswordCustomized": [ "true" ] }, "StringEquals": { "ecs:ImagePlatform": "linux" } }, "Effect": "Deny" }, { "Action": [ "ecs:CreateOrder", "ecs:ModifyInstanceAttribute", "ecs:InvokeCommand", "ecs:AttachDisk" ], "Resource": "*", "Condition": { "Bool": { "ecs:PasswordCustomized": [ "true" ] } }, "Effect": "Deny" } ] }
继续创建权限策略(ecs-admin),选择脚本编辑,使用如下策略内容。
说明以下策略表示:拥有管理云服务器ECS相关的权限(包括购买,管理,查看ECS实例等),在此示例中用于模拟云服务器ECS的管理员,您可以按实际需求对策略进行调整。
{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "ecs:*", "ecs-workbench:*", "vpc:CheckCanAllocateVpcPrivateIpAddress", "vpc:DescribeVpcs", "vpc:DescribeVSwitches", "bss:ModifyAgreementRecord", "bss:DescribeOrderList", "bss:DescribeOrderDetail", "bss:PayOrder", "bss:CancelOrder" ], "Resource": "*" } ] }
在RAM控制台,为RAM用户(Alice)授权。
其中,授权范围选择账号级别,授权主体选择RAM用户(Alice),权限策略选择上一步创建的自定义策略(ecs-password-control与ecs-admin)。具体操作,请参见为RAM用户授权。
结果验证
使用RAM用户(Alice)登录阿里云控制台。
具体操作,请参见RAM用户登录阿里云控制台。