nova-rootwrapper相关
来源:互联网 发布:老男孩linux运维pdf 编辑:程序博客网 时间:2024/05/17 09:41
http://blog.csdn.net/weiyuanke/article/details/7966012
openstack运行在普通用户身份下,但运行过程中发起相关指令时却需要管理员特权。
之前这一过程是通过sudo来实现的,通过sudoers文件的简单配置,通过sudo command1 .. 就可以使得command1命令运行在root权限下。
但是这一做法有一个缺陷:无法对权限做详细的控制,如命令的参数;
nova-rootwrapper
为了解决这一缺陷,openstack项目组设计了nova-rootwrapper工具。
发起相关命令时采用:
sudo nova-rootwrapper /etc/nova/rootwrapper.conf command1 ..
在sudo的配置文件中,只允许openstack以root的权限运行nova-rootwrapper命令
- nova ALL = (root) NOPASSWD: /usr/bin/nova-rootwrap /etc/nova/rootwrap.conf *
nova-rootwrapper会根据自己的配置文件,读取相关filter,来检查当前运行的命令command1有没有运行权限,如果没有话则拒绝执行。
通过这种方式,将对sudo的配置,转移到了对nova-rootwrapper的配置,从而灵活度、自由度都得到了增加。
nova-rootwrapper的配置文件是由一个个的filter组成的,当前定义有如下的filter classes:
CommandFilter:
最基本的一种FilterClass,只检查当前命令本身,不对命令的参数进行检查。
有两个参数:可执行命令,以什么用户身份运行该命令
配置示例如下:
- ietadm: CommandFilter, /usr/sbin/ietadm, root
RegExpFilter:
采用正则表达式检查命令的运行参数
ReadFileFilter:
检查命令读取的文件
- read_initiator: ReadFileFilter, /etc/iscsi/initiatorname.iscsi
KillFilter:
检查命令接受的信号
- kill_radvd: KillFilter, root, /usr/sbin/radvd
DnsmasqFilter:
dnsmasq进程相关的检查
- dnsmasq: DnsmasqFilter, /usr/sbin/dnsmasq, root
- nova-rootwrapper相关
- nova-rootwrapper相关
- OpenStack中Nova相关的服务
- nova
- OpenStack块存储nova-volume工作机制和相关问题
- OpenStack块存储nova-volume工作机制和相关问题
- OpenStack块存储nova-volume工作机制和相关问题
- 【Nova】nova-conductor学习
- 【Nova】nova-consoleauth学习
- 【Nova】nova-cert学习
- OpenStack块存储nova-volume工作机制和相关问题--有点老可以看看
- OpenStack Juno删除僵尸实例 - 虚机实例相关nova表
- 引爆NOVA
- openstack nova
- nova命令
- nova-scheduler
- NOVA再见
- nova 命令行
- javasprict中Document对象
- javascript中事件
- javascript中DOM编程
- PHP基础语法2
- PHP动态创建Web站点
- nova-rootwrapper相关
- PHP面向对象编程
- PHP中MySQL的使用
- PHPweb应用程序开发技巧
- PHP中cookie和会话编程
- PHP正则表达式
- PHP smarty编程总结
- Visual Studio2010 C盘空间变小清理
- PHP一些非常有用的函数