医院手机网站建设,木马设计,东营网站建设哪家专业,域名到期如何续费问题
开发人员需要访问AWS云中私有子网的数据库服务等#xff0c;都需要通过EC2进行SSH隧道代理。这里假设本地已经有一款稳定优秀的SSH客户端工具#xff0c;并且假设已经会熟练使用SSH的隧道代理。
1.创建EC2
搜索找到EC2服务#xff0c;如下图#xff1a; 点击“启动…问题
开发人员需要访问AWS云中私有子网的数据库服务等都需要通过EC2进行SSH隧道代理。这里假设本地已经有一款稳定优秀的SSH客户端工具并且假设已经会熟练使用SSH的隧道代理。
1.创建EC2
搜索找到EC2服务如下图 点击“启动实例”开始EC2实例创建如下图
1.1选择镜像
填入名称后选择默认的免费套餐镜像如下图 1.2创建密钥对
点击“创建新密钥对”如下图 输入密钥对名称为dev如下图
1.3创建安全组
设置ssh端口的安全组方便ssh访问ec2如下图 这里设置IP白名单指定这个IP白名单能够访问这个EC2接下来点击“启动实例”即可。下面就是dev的EC2创建的实例如下图
2.配置队列管理器
左上角搜索SSM找到System Manager如下图 选择队列管理器如下图 选择“配置默认主机管理”如下图 启用EC2主机托管到SM管理如下图 这个创建的权限策略可以在各个环境共用。点击“配置”如下图 等待一段时间可能时间比较长就会出现之前创建的EC2实例如下图 注意这里使用了一个AWSSystemsManagerDefaultEC2InstanceManagementRole角色还需要在这个角色基础上面添加AmazonEC2RoleforSSM权限策略如下图操作 最终所有权限策略如下图
3.配置SSM
3.1创建KMS密钥
搜索KMS找到该服务如下图 点击“创建密钥”如下图 这里我选择对称加密如下图 设置别名如下图 设置密钥管理员如下图 设置使用人员如下图 审计一下kms如下图 点击“完成”进行密钥创建成功后如下图 接下来需要调整KMS密钥使用权限策略添加只能是指定日志组使用如下图 点击“切换到策略视图”如下图 点击“编辑”如下图 添加只能是指定的日志组才能使用这个KMS密钥完整的密钥策略JSON如下图
{Id: key-consolepolicy-3,Version: 2012-10-17,Statement: [{Sid: Enable IAM User Permissions,Effect: Allow,Principal: {AWS: arn:aws:iam::账号ID:root},Action: kms:*,Resource: *},{Sid: Allow access for Key Administrators,Effect: Allow,Principal: {AWS: arn:aws:iam::账号ID:user/zhangyalin},Action: [kms:Create*,kms:Describe*,kms:Enable*,kms:List*,kms:Put*,kms:Update*,kms:Revoke*,kms:Disable*,kms:Get*,kms:Delete*,kms:TagResource,kms:UntagResource,kms:ScheduleKeyDeletion,kms:CancelKeyDeletion],Resource: *},{Effect: Allow,Principal: {Service: logs.amazonaws.com},Action: [kms:Encrypt*,kms:Decrypt*,kms:ReEncrypt*,kms:GenerateDataKey*,kms:Describe*],Resource: *,Condition: {ArnEquals: {kms:EncryptionContext:aws:logs:arn: arn:aws:logs:us-east-1:账号ID:log-group:/aws/ssm/session}}} ]
}3.2创建SSM日志组
搜索cloudwatch找到该服务如下图 点击“创建日志组”如下图 输入日志组名称然后点击创建即可如下图 注意这里需要使用到上一步创建到KMS密钥进行日志组创建。
为ssm创建好的日志组如下图
3.2配置SSM
回到Systems Manager主页找到会话管理器点击“配置首选项”如下图 这里设置会话管理器的日志通过CloudWatch写入到/aws/ssm/session日志组中如下图
4.配置本地AWS设置
在~/.aws/config文件添加如下
[profile my]
region us-east-1
output json5.配置本地AWS访问Key
这里假设本地已经成功安装了AWS CLI后需要在IAM中创建自己的访问key如下图 点击下一步如下图 点击“创建访问密钥”如下图 点击下载.csv文件保存自己的访问密钥配置文件完成访问密钥创建。如下图 打开~/.aws/credentials文件,将上述得到的访问密钥以如下方式加入具体如下 [my] aws_access_key_id xxxx aws_secret_access_key xxxxx
6. 测试连接EC2
如下命令
export AWS_PROFILEmy
aws ssm start-session --target i-xxxx如下图表示使用AWS CLI登录EC2成功 接下来配置SSH配置文件打开~/.ssh/config文件添加如下内容
# SSH over Session Manager
host i-* mi-*ProxyCommand sh -c aws ssm start-session --target %h --document-name AWS-StartSSHSession --parameters portNumber%p配置完~/.ssh/config文件后找到之前创建的dev.pem私钥文件直接使用ssh进行ec2登录具体命令如下
chmod 400 dev.pem
ssh -i dev.pem ec2-useri-xxxx如下图表示使用SSH客户端工具登录EC2成功。
总结
到这里就是dev环境SSM跳板机配置全过程接下来按照上述方式依次搭建完testuatprod环境。第一次弄这个还是有点小复杂的中途还咨询了一次aws支持中心最后他们通过CloudTrail帮我找到了原因并协助我解决了SSM不能写日志问题。
参考
使用 AWS Key Management Service 对 CloudWatch Logs 中的日志数据进行加密满足 Session Manager 先决条件AWS SSM中切换AWS不同的profile