存档

文章标签 ‘阿里云’

阿里云ECS全新实例需要配置安全组规则

2018年4月23日 没有评论

最近新买了一台阿里云ECS服务器,新装了httpd服务后,从浏览器无法访问页面。

排查过程如下:

  • 服务器是可以ssh登陆的,说明网络没问题
  • 在服务器本机使用curl http://127.0.0.1/获取首页,输出OK
  • 在服务器本机使用curl http://ecs-外网ip/获取首页,输出OK;这两步说明httpd服务正常
  • 检查防火墙,iptables服务未运行

那问题应该在ecs上,网上搜了一下,原来ecs实例设置了安全组规则,默认只开放ICMP、ssh和3389端口。需要手动开放业务端口才行。

方法为:

  • 在ECS实例列表处,选择要开放端口的ecs,点击右侧的“管理”
  • 在“管理”页面选择左侧“本实例安全组”,进入“安全组”页面
  • 点击“配置规则”,然后“添加安全组规则”,设置好协议、端口、授权对象(ip范围)等,保存

稍等一会儿规则生效,就可以正常访问业务页面了。

分类: 资料 标签: ,

阿里云OSS python sdk使用简介

2017年9月20日 没有评论

阿里云OSS可以方便的存储各类数据,配合CDN的使用,能够极大提高数据的访问效率。向OSS存放数据时一般要登陆阿里云,再进入OSS管理控制台,选择bucket上传文件。手动操作步骤还是有点繁琐的。好在阿里为我们提供了api和sdk,能够实现自动化操作。

这里简单介绍一下阿里云OSS-Python-SDK的使用方法。

  1. 安装:pip install oss2
  2. 检查:在Python命令行中输入import oss2;oss2.__version__。安装成功则会显示版本号
  3. 在OSS管理控制台中创建AccessKey
    1. 进入OSS控制管理台首页,点右上侧的AccessKey按钮,打开AccessKey管理控制台
    2. 点击提示框中的“开始使用子用户AccessKey”–>设置用户名–>设置权限,仅选择AliyunOSSFullAccess即可–>开始创建用户–>验证手机号后就创建成功了
    3. 在“访问控制台RAM”页面的“用户管理”中可看到刚才创建的用户,点击用户名
    4. 在“用户详情”页的下边能看到“用户AccessKey”,默认已生成了一个AccessKey
    5. 我们可以随时点右侧的“创建AccessKey”来生成新的AccessKey,创建成功会显示AccessKeyID和AccessKeySecret。这两个参数是通过SDK访问OSS必需的。
  4. SDK的使用,可参考官方手册快速入门,也可以通过官方提供的示例进行测试。下边的代码演示了如何上传一个文档对象到OSS。
    # -*- coding: utf-8 -*-
    import os
    import shutil
    
    import oss2
    
    # 首先初始化AccessKeyId、AccessKeySecret、Endpoint等信息。
    # 把诸如“<你的AccessKeyId>”替换成真实的AccessKeyId等。
    #
    # 以上海区域为例,Endpoint可以是:
    # http://oss-cn-shanghai.aliyuncs.com
    # https://oss-cn-shanghai.aliyuncs.com
    # 分别以HTTP、HTTPS协议访问。
    access_key_id = os.getenv('OSS_TEST_ACCESS_KEY_ID', 'LTdsa52Gjv0Nt6')
    access_key_secret = os.getenv('OSS_TEST_ACCESS_KEY_SECRET', 'dijw14JxbYeeKdaght3DG4w0k96KQBHu')
    bucket_name = os.getenv('OSS_TEST_BUCKET', 'my-bucket')
    endpoint = os.getenv('OSS_TEST_ENDPOINT', 'oss-cn-shanghai.aliyuncs.com')
    
    # 确认上面的参数都填写正确了
    for param in (access_key_id, access_key_secret, bucket_name, endpoint):
        assert '<' not in param, '请设置参数:' + param
    
    # 创建Bucket对象,所有Object相关的接口都可以通过Bucket对象来进行
    bucket = oss2.Bucket(oss2.Auth(access_key_id, access_key_secret), endpoint, bucket_name)
    
    # 上传文件 “本地座右铭.txt” 到OSS,并命名为 “云上座右铭.txt”
    with open(oss2.to_unicode('本地座右铭.txt'), 'rb') as f:
        bucket.put_object('云上座右铭.txt', f)
分类: Python, 开发 标签: , , ,