`

openstack安全组规则

 
阅读更多

http://www.aboutyun.com/thread-8964-1-1.html

 

 

 

参考官方资料
You must modify the rules for the default security group because users cannot access instances that use the default group from   
any IP address outside the cloud.  

You can modify the rules in a security group to allow access to instances through different ports and protocols. For example,   
you can modify rules to allow access to instances through SSH, to ping them, or to allow UDP traffic – for example, for a DNS   
server running on an instance. You specify the following parameters for rules:  

Source of traffic. Enable traffic to instances from either IP addresses inside the cloud from other group members or from all IP addresses.  

Protocol. Choose TCP for SSH, ICMP for pings, or UDP.  

Destination port on virtual machine. Defines a port range. To open a single port only, enter the same value twice. ICMP does not support ports: Enter values to define the codes and types of ICMP traffic to be allowed.  

Rules are automatically enforced as soon as you create or modify them.  

注: 已通过测试, 修改默认 secgroup 或自定义 secgroup 都可以完成数据访问测试
帮助

  1. [root@station140 ~(keystone_admin)]# nova help | grep secgroup  
  2.     add-secgroup        Add a Security Group to a server.  
  3.     list-secgroup       List Security Group(s) of a server.  
  4.     remove-secgroup     Remove a Security Group from a server.  
  5.     secgroup-add-group-rule  
  6.     secgroup-add-rule   Add a rule to a security group.  
  7.     secgroup-create     Create a security group.  
  8.     secgroup-delete     Delete a security group.  
  9.     secgroup-delete-group-rule  
  10.     secgroup-delete-rule  
  11.     secgroup-list       List security groups for the current tenant.  
  12.     secgroup-list-rules  
  13.     secgroup-update     Update a security group.  
复制代码



创建自定义安全组

  1. [root@station140 ~(keystone_admin)]# nova secgroup-create terry "allow ping and ssh"  
  2. +--------------------------------------+-------+--------------------+  
  3. | Id                                   | Name  | Description        |  
  4. +--------------------------------------+-------+--------------------+  
  5. | 6966a8e4-0980-40ad-a409-baac65b60287 | terry | allow ping and ssh |  
  6. +--------------------------------------+-------+--------------------+  
复制代码



列出当前所有安全组

  1. [root@station140 ~(keystone_admin)]# nova  secgroup-list  
  2. +--------------------------------------+---------+--------------------+  
  3. | Id                                   | Name    | Description        |  
  4. +--------------------------------------+---------+--------------------+  
  5. | 91a191a6-b89e-4f87-99c0-0fb985985978 | default | default            |  
  6. | 6966a8e4-0980-40ad-a409-baac65b60287 | terry   | allow ping and ssh |  
  7. +--------------------------------------+---------+--------------------+  
复制代码



列出某个组中的安全规则

  1. [root@station140 ~(keystone_admin)]# nova  secgroup-list-rules default  
  2. +-------------+-----------+---------+----------+--------------+  
  3. | IP Protocol | From Port | To Port | IP Range | Source Group |  
  4. +-------------+-----------+---------+----------+--------------+  
  5. |             |           |         |          | default      |  
  6. |             |           |         |          | default      |  
  7. +-------------+-----------+---------+----------+--------------+  
复制代码



增加规则方法 (允许 ping)

  1. [root@station140 ~(keystone_admin)]# nova secgroup-add-rule terry icmp -1 -1 0.0.0.0/0  
  2. +-------------+-----------+---------+-----------+--------------+  
  3. | IP Protocol | From Port | To Port | IP Range  | Source Group |  
  4. +-------------+-----------+---------+-----------+--------------+  
  5. | icmp        | -1        | -1      | 0.0.0.0/0 |              |  
  6. +-------------+-----------+---------+-----------+--------------+  
复制代码



增加规则方法 (允许 ssh)

  1. [root@station140 ~(keystone_admin)]# nova secgroup-add-rule terry tcp  22 22 0.0.0.0/0  
  2. +-------------+-----------+---------+-----------+--------------+  
  3. | IP Protocol | From Port | To Port | IP Range  | Source Group |  
  4. +-------------+-----------+---------+-----------+--------------+  
  5. | tcp         | 22        | 22      | 0.0.0.0/0 |              |  
  6. +-------------+-----------+---------+-----------+--------------+  
复制代码



增加规则方法 (允许 dns 外部访问)

  1. [root@station140 ~(keystone_admin)]# nova secgroup-add-rule terry udp 53 53 0.0.0.0/0  
  2. +-------------+-----------+---------+-----------+--------------+  
  3. | IP Protocol | From Port | To Port | IP Range  | Source Group |  
  4. +-------------+-----------+---------+-----------+--------------+  
  5. | udp         | 53        | 53      | 0.0.0.0/0 |              |  
  6. +-------------+-----------+---------+-----------+--------------+
复制代码



列出自定义组规则

  1. [root@station140 ~(keystone_admin)]# nova secgroup-list-rules terry  
  2. +-------------+-----------+---------+-----------+--------------+  
  3. | IP Protocol | From Port | To Port | IP Range  | Source Group |  
  4. +-------------+-----------+---------+-----------+--------------+  
  5. | tcp         | 22        | 22      | 0.0.0.0/0 |              |  
  6. | udp         | 53        | 53      | 0.0.0.0/0 |              |  
  7. | icmp        | -1        | -1      | 0.0.0.0/0 |              |  
  8. +-------------+-----------+---------+-----------+--------------+
复制代码



尝试修改 default secgroup
列出 default secgroup 规则

  1. [root@station140 ~(keystone_admin)]# nova secgroup-list-rules default  
  2. +-------------+-----------+---------+----------+--------------+  
  3. | IP Protocol | From Port | To Port | IP Range | Source Group |  
  4. +-------------+-----------+---------+----------+--------------+  
  5. |             |           |         |          | default      |  
  6. |             |           |         |          | default      |  
  7. +-------------+-----------+---------+----------+--------------+
复制代码



添加规则 (允许 ping)

  1. [root@station140 ~(keystone_admin)]# nova secgroup-add-rule default icmp -1 -1 0.0.0.0/0  
  2. +-------------+-----------+---------+-----------+--------------+  
  3. | IP Protocol | From Port | To Port | IP Range  | Source Group |  
  4. +-------------+-----------+---------+-----------+--------------+  
  5. | icmp        | -1        | -1      | 0.0.0.0/0 |              |  
  6. +-------------+-----------+---------+-----------+--------------+  
复制代码



添加规则 (允许 ssh)

  1. [root@station140 ~(keystone_admin)]# nova secgroup-add-rule default tcp  22 22 0.0.0.0/0  
  2. +-------------+-----------+---------+-----------+--------------+  
  3. | IP Protocol | From Port | To Port | IP Range  | Source Group |  
  4. +-------------+-----------+---------+-----------+--------------+  
  5. | tcp         | 22        | 22      | 0.0.0.0/0 |              |  
  6. +-------------+-----------+---------+-----------+--------------+
复制代码



添加规则 (允许 dns外部访问)

  1. [root@station140 ~(keystone_admin)]# nova secgroup-add-rule default udp 53 53 0.0.0.0/0  
  2. +-------------+-----------+---------+-----------+--------------+  
  3. | IP Protocol | From Port | To Port | IP Range  | Source Group |  
  4. +-------------+-----------+---------+-----------+--------------+  
  5. | udp         | 53        | 53      | 0.0.0.0/0 |              |  
  6. +-------------+-----------+---------+-----------+--------------+  
复制代码



列出默认组规则

  1. [root@station140 ~(keystone_admin)]# nova secgroup-list-rules default  
  2. +-------------+-----------+---------+-----------+--------------+  
  3. | IP Protocol | From Port | To Port | IP Range  | Source Group |  
  4. +-------------+-----------+---------+-----------+--------------+  
  5. |             |           |         |           | default      |  
  6. | icmp        | -1        | -1      | 0.0.0.0/0 |              |  
  7. | tcp         | 22        | 22      | 0.0.0.0/0 |              |  
  8. |             |           |         |           | default      |  
  9. | udp         | 53        | 53      | 0.0.0.0/0 |              |  
  10. +-------------+-----------+---------+-----------+--------------+
复制代码



删除某个实例, 使用中的规则

  1. nova remove-secgroup terry_instance1 terry
复制代码



注: 在虚拟机启动后, 无法在增加其他规则



openstack 命令行管理:内部网络[instance专用]管理 
ip 帮助

  1. [root@station140 ~(keystone_admin)]# nova help | grep ip  
  2.     add-fixed-ip        Add new IP address on a network to server.  
  3.     add-floating-ip     Add a floating IP address to a server.  
  4.     cloudpipe-configure  
  5.                         Update the VPN IP/port of a cloudpipe instance.  
  6.     cloudpipe-create    Create a cloudpipe instance for the given project.  
  7.     cloudpipe-list      Print a list of all cloudpipe instances.  
  8.     dns-create          Create a DNS entry for domain, name and ip.  
  9.     dns-list            List current DNS entries for domain and ip or domain  
  10.     fixed-ip-get        Retrieve info on a fixed ip.  
  11.     fixed-ip-reserve    Reserve a fixed IP.  
  12.     fixed-ip-unreserve  Unreserve a fixed IP.  
  13.     floating-ip-bulk-create  
  14.                         Bulk create floating ips by range.  
  15.     floating-ip-bulk-delete  
  16.                         Bulk delete floating ips by range.  
  17.     floating-ip-bulk-list  
  18.                         List all floating ips.  
  19.     floating-ip-create  Allocate a floating IP for the current tenant.  
  20.     floating-ip-delete  De-allocate a floating IP.  
  21.     floating-ip-list    List floating ips for this tenant.  
  22.     floating-ip-pool-list  
  23.                         List all floating ip pools.  
  24.     remove-fixed-ip     Remove an IP address from a server.  
  25.     remove-floating-ip  Remove a floating IP address from a server.  
复制代码



网络管理帮助

  1. [root@station140 ~(keystone_admin)]# nova help | grep network  
  2.     interface-attach    Attach a network interface to an instance.  
  3.     interface-detach    Detach a network interface from an instance.  
  4.     network-associate-host  
  5.                         Associate host with network.  
  6.     network-associate-project  
  7.                         Associate project with network.  
  8.     network-create      Create a network.  
  9.     network-disassociate  
  10.                         network.  
  11.     network-list        Print a list of available networks.  
  12.     network-show        Show details about the given network.  
  13.     reset-network       Reset network of an instance.  
  14.                         Add a network interface to a baremetal node.  
  15.                         List network interfaces associated with a baremetal  
  16.                         Remove a network interface from a baremetal node.  
  17.     net                 Show a network  
  18.     net-create          Create a network  
  19.     net-delete          Delete a network  
  20.     net-list            List networks  
复制代码



显示当前 openstack 网络方法

  1. [root@station140 ~(keystone_admin)]# nova network-list  
  2. +--------------------------------------+---------+------+  
  3. | ID                                   | Label   | Cidr |  
  4. +--------------------------------------+---------+------+  
  5. | 68a1d874-e7bd-42e2-9f86-8eb0b0b4b8fd | public  | None |  
  6. | e8e14001-44d9-4ab1-a462-ea621b8a4746 | private | None |  
  7. +--------------------------------------+---------+------+  
复制代码



参考 openstack 官方文档, 在某些旧版本中, 需要利用下面方法创建网络, 当前 H 版本可以不使用下面变量

  1. export OS_USERNAME=admin  
  2. export OS_PASSWORD=password  
  3. export OS_TENANT_NAME=admin  
  4. export OS_AUTH_URL=http://localhost:5000/v2.0
复制代码



另外一种列出网络方法

  1. [root@station140 ~(network_admin)]# neutron net-list  
  2. +--------------------------------------+---------+------------------------------------------------------+  
  3. | id                                   | name    | subnets                                              |  
  4. +--------------------------------------+---------+------------------------------------------------------+  
  5. | 68a1d874-e7bd-42e2-9f86-8eb0b0b4b8fd | public  | ce0a4a92-5c23-4557-ad67-97560ab5afa1 172.24.4.224/28 |  
  6. | e8e14001-44d9-4ab1-a462-ea621b8a4746 | private | 79fdeabd-7f8a-4619-a17d-87864ccdfa80 10.0.0.0/24     |  
  7. +--------------------------------------+---------+------------------------------------------------------+
复制代码



显示某个网络详细信息

  1. [root@station140 ~(network_admin)]# neutron net-show public  
  2. +---------------------------+--------------------------------------+  
  3. | Field                     | Value                                |  
  4. +---------------------------+--------------------------------------+  
  5. | admin_state_up            | True                                 |  
  6. | id                        | 68a1d874-e7bd-42e2-9f86-8eb0b0b4b8fd |  
  7. | name                      | public                               |  
  8. | provider:network_type     | local                                |  
  9. | provider:physical_network |                                      |  
  10. | provider:segmentation_id  |                                      |  
  11. | router:external           | True                                 |  
  12. | shared                    | False                                |  
  13. | status                    | ACTIVE                               |  
  14. | subnets                   | ce0a4a92-5c23-4557-ad67-97560ab5afa1 |  
  15. | tenant_id                 | e3a71a59840c4e88b8740b789c3afb9c     |  
  16. +---------------------------+--------------------------------------+  
复制代码



显示网络 extension 详细信息

  1. [root@station140 ~(keystone_admin)]# neutron ext-list  
  2. +-----------------------+-----------------------------------------------+  
  3. | alias                 | name                                          |  
  4. +-----------------------+-----------------------------------------------+  
  5. | ext-gw-mode           | Neutron L3 Configurable external gateway mode |  
  6. | security-group        | security-group                                |  
  7. | l3_agent_scheduler    | L3 Agent Scheduler                            |  
  8. | provider              | Provider Network                              |  
  9. | binding               | Port Binding                                  |  
  10. | quotas                | Quota management support                      |  
  11. | agent                 | agent                                         |  
  12. | dhcp_agent_scheduler  | DHCP Agent Scheduler                          |  
  13. | external-net          | Neutron external network                      |  
  14. | router                | Neutron L3 Router                             |  
  15. | allowed-address-pairs | Allowed Address Pairs                         |  
  16. | extra_dhcp_opt        | Neutron Extra DHCP opts                       |  
  17. | extraroute            | Neutron Extra Route                           |  
  18. +-----------------------+-----------------------------------------------+  
复制代码



创建私有网络

  1. [root@station140 ~(network_admin)]# neutron net-create net1  
  2. Created a new network:  
  3. +---------------------------+--------------------------------------+  
  4. | Field                     | Value                                |  
  5. +---------------------------+--------------------------------------+  
  6. | admin_state_up            | True                                 |  
  7. | id                        | d0e3f988-d62f-4f95-ab21-b73f4dae326b |  
  8. | name                      | net1                                 |  
  9. | provider:network_type     | local                                |  
  10. | provider:physical_network |                                      |  
  11. | provider:segmentation_id  |                                      |  
  12. | shared                    | False                                |  
  13. | status                    | ACTIVE                               |  
  14. | subnets                   |                                      |  
  15. | tenant_id                 | e3a71a59840c4e88b8740b789c3afb9c     |  
  16. +---------------------------+--------------------------------------+  
复制代码



显示 net1 网络详细信息

  1. [root@station140 ~(keystone_admin)]# neutron net-show net1  
  2. +---------------------------+--------------------------------------+  
  3. | Field                     | Value                                |  
  4. +---------------------------+--------------------------------------+  
  5. | admin_state_up            | True                                 |  
  6. | id                        | d0e3f988-d62f-4f95-ab21-b73f4dae326b |  
  7. | name                      | net1                                 |  
  8. | provider:network_type     | local                                |  
  9. | provider:physical_network |                                      |  
  10. | provider:segmentation_id  |                                      |  
  11. | router:external           | False                                |  
  12. | shared                    | False                                |  
  13. | status                    | ACTIVE                               |  
  14. | subnets                   |                                      |  
  15. | tenant_id                 | e3a71a59840c4e88b8740b789c3afb9c     |  
  16. +---------------------------+--------------------------------------+  
复制代码



创建私网络 net1 的子网

  1. [root@station140 ~(network_admin)]# neutron subnet-create --name terry_pri_net1 --allocation-pool start=10.0.0.50,end=10.0.0.100 --no-gateway --ip-version 4  net1 10.0.0.0/24  
  2. Created a new subnet:  
  3. +------------------+---------------------------------------------+  
  4. | Field            | Value                                       |  
  5. +------------------+---------------------------------------------+  
  6. | allocation_pools | {"start": "10.0.0.50", "end": "10.0.0.100"} |  
  7. | cidr             | 10.0.0.0/24                                  |  
  8. | dns_nameservers  |                                             |  
  9. | enable_dhcp      | True                                        |  
  10. | gateway_ip       |                                             |  
  11. | host_routes      |                                             |  
  12. | id               | 3066c397-bccf-4473-8a94-72b09a97a70a        |  
  13. | ip_version       | 4                                           |  
  14. | name             | terry_pri_net1                              |  
  15. | network_id       | d0e3f988-d62f-4f95-ab21-b73f4dae326b        |  
  16. | tenant_id        | e3a71a59840c4e88b8740b789c3afb9c            |  
  17. +------------------+---------------------------------------------+  
复制代码



显示 net1 网络详细信息

  1. [root@station140 ~(keystone_admin)]# neutron net-show net1  
  2. +---------------------------+--------------------------------------+  
  3. | Field                     | Value                                |  
  4. +---------------------------+--------------------------------------+  
  5. | admin_state_up            | True                                 |  
  6. | id                        | d0e3f988-d62f-4f95-ab21-b73f4dae326b |  
  7. | name                      | net1                                 |  
  8. | provider:network_type     | local                                |  
  9. | provider:physical_network |                                      |  
  10. | provider:segmentation_id  |                                      |  
  11. | router:external           | False                                |  
  12. | shared                    | False                                |  
  13. | status                    | ACTIVE                               |  
  14. | subnets                   | 3066c397-bccf-4473-8a94-72b09a97a70a |  
  15. | tenant_id                 | e3a71a59840c4e88b8740b789c3afb9c     |  
  16. +---------------------------+--------------------------------------+  
复制代码



注意 net1 中的 subnets values 部分 3066c397-bccf-4473-8a94-72b09a97a70a 显示为 terry_pri_net1 中的 ID 值

分享到:
评论

相关推荐

    OpenStack云安全特性分析与部署(毕业设计).docx

    (平台搭建版本:Queen版本,安全部署主要包括https安全传输、服务组件日志集中收收集、云主机迁移、VxLAN网络、配置用户密码策略、流量监控、防火墙即服务FwaaS、安全组规则、浮动IP、iptables防火墙、KVM热添加...

    OpenStack云安全部署指导书.zip

    另外,对平台安全性进行配置,包括https传输加密、存储加密、云主机迁移、防火墙即服务、安全组规则、浮动IP、iptables防火墙、用户登录密码策略、VxLAN网络、KVM热添加硬盘、openstack服务组件日志集中收集、DDoS...

    OpenStack从零开始学

    读者还将学习如何创建和管理虚拟机实例、网络配置、存储分配以及安全组规则设定,这些都是OpenStack日常运维的基础。 OpenStack的扩展性和灵活性是其一大亮点,因此,了解如何添加自定义插件或集成第三方服务也是...

    《OpenStack云平台实战》课程测试试卷.docx

    12. OpenStack安全组创建后默认为空,需手动添加规则,保护云主机安全。 13. Swift组件提供对象存储服务,而不是块存储服务,Cinder负责块存储。 14. Keystone提供令牌、目录和策略服务,不提供调度服务。 15. ...

    Openstack用户使用手册.docx

    安全组是 OpenStack 中的一种网络安全策略,你可以添加规则来控制进出虚拟机的流量。默认的安全组允许同一 VXLAN 子网内的端口全开放,但你也可以自定义规则,例如添加 ICMP 规则以允许 PING,添加 SSH 规则以允许...

    OpenStack组件之Nova

    3. 网络和认证管理:Nova处理与网络相关的工作,如IP地址分配、安全组规则实施和网络配置等,以及认证用户和授权操作。 4. REST风格的API:Nova通过与AWS EC2兼容的Web服务API提供服务,方便用户通过HTTP请求进行...

    每天5分钟玩转OpenStack.PDF

    5. **安全组规则**:学习如何通过Neutron的安全组功能设置网络访问规则,保护你的虚拟机。 6. **云存储**:理解Swift的工作原理,以及如何存储和检索对象。 7. **自动化部署**:了解Heat模板,学习如何用模板快速...

    OpenStack云计算平台安全解析.pdf

    此外,OpenStack拥有Dashboard界面,可以设置安全组规则,并通过iptables来定义和实现防火墙规则,允许管理员设置用户安全组,规定哪些端口可以访问虚拟机。授权服务方面,OpenStack提供了两套API,分别为ECSAPI和OS...

    简单使用openstack创建实例

    为了能够通过SSH访问虚拟机实例,还需要在安全组中添加相应的规则,允许SSH连接。具体步骤如下: 1. 进入 Security Groups 页面,找到你的虚拟机实例所关联的安全组。 2. 添加新的规则,允许TCP协议的SSH端口22访问...

    我自己工作当中使用的openstack操作手册

    使用neutron命令行,我们可以创建网络、子网、端口,并配置安全组规则,如`neutron net-create`来创建网络,`neutron subnet-create`创建子网,`neutron security-group-rule-create`添加安全组规则。 3. **Cinder*...

    OpenStack web界面使用ISO镜像安装启动实例

    设置实例的名称、Flavor和其他配置,如安全组规则。然后,点击“创建服务器”以启动实例。 启动实例后,OpenStack会使用ISO镜像进行网络引导,并开始安装过程。你可以通过连接VNC或SPICE客户端来监视安装进度,或者...

    openstack quantum安装文档

    - 安全组是一种基于规则的安全策略,用于控制进出虚拟机实例的流量。 - 说明了如何通过安全组来增强网络安全性。 **6. 高级配置选项** - **OpenStack Networking Server with Plugin** - 描述了如何选择合适的...

    Openstack管理员考试-纯中文版本.pdf

    5. 安全组设定:安全组(Security Group)是OpenStack中的一个虚拟防火墙,用于定义虚拟机的入站和出站规则。在文件中需要为市场部门设定安全组,允许外部的ping、web访问和SSH访问。 6. 密钥对管理:密钥对(Key ...

    116-应用新安全组 1

    为了允许特定类型的网络访问,如ping和SSH,我们需要自定义安全组规则。有两种方法实现这一目标:修改默认安全组或创建新的安全组。这里我们将重点放在第二种方法,即为cirros-vm1添加一个新的安全组。 1. 创建新...

    Cloudify连接OpenStack的配置

    - `securityGroup`:指定实例的安全组,定义了网络访问规则。 2. **OpenStack 服务端点**: - `openstackUrl`:OpenStack Identity(Keystone)服务的URL,用于验证和获取其他服务的端点。格式通常是 `...

    OPENSTACK命令行快速操作入门.docx

    * 列出当前安全组或默认安全规则信息:`nova secgroup-list` NEUTRON 客户端工具的使用 NEUTRON 客户端工具提供了多种命令来管理网络资源,包括: * 列出当前用户的网络:`neutron net-list` * 列出当前用户的...

    OpenStack 用户使用指导 user-guide

    这包括但不限于设置防火墙规则、管理安全组、分配IP地址等。 ##### 2.4 启动和管理实例 用户可以使用仪表板轻松地启动新的计算实例。在启动实例时,可以选择不同的镜像、规格以及其他配置选项。启动后的实例可以在...

    运维OpenStack常见错误排除

    检查Neutron配置文件,确保安全组规则允许必要的流量,排查DHCP服务状态,验证路由功能。 2. 隧道网络问题:OpenStack支持VXLAN、GRE等隧道技术,如果隧道网络出现错误,检查网络设备是否支持隧道模式,配置是否...

    《OpenStack云计算基础架构平台应用》试卷试题及答案.docx

    默认情况下,安全组不会为空,至少包含一些基本规则。安全组分为入口方向和出口方向,外网访问云主机必须经过安全组过滤。 #### 二、OpenStack组件详解 - **Neutron**: Neutron组件提供网络连接服务,支持二层VLAN...

    openstack离线网页

    2. **Neutron**:Neutron提供网络服务,允许用户自定义虚拟网络拓扑,包括子网、路由器和安全组规则。它支持多种网络模型,如Flat、VLAN、VXLAN等,以满足不同环境的需求。 3. **Swift**:Swift是一个分布式对象...

Global site tag (gtag.js) - Google Analytics