|
func: fedora 上的统一网络控制器
func为我们带来了什么:
· 你曾经试图命令或查询的系统大量使用SSH? 你想要一个更好的办法?
·你需要一个方法来审核你的系统你所有的远程命令呢?
·厌倦了编写shell脚本和解析命令的输出?
·你是美联储通过CIM,WBEM的,复杂的通信系统,防止doing /real/ work??
·那么我们有没有给你买了一个解决方案。 它的 功能 。
func几乎可以解决运维上任何问题:
一个方案,系统和一些工具,需要大量的沟通方式。功能提供了一种双向认证的统称做这些事情的排序制度。你可以建立自己的在顶部,这样,很容易扩大应用在其他模块添加功能,无论你 希望通过这些工作func命令行或其他一些应用的手段。如果你只是想用命令行的功能,这是伟大的。如果你想建立应用程序的功能工具,那也很好。如果这听起来很笼统空泛,它只是因为它确实是容易扩展。
下载源码:
git clone git://git.fedorahosted.org/certmaster.git
git clone git://git.fedorahosted.org/func.git
或者:
wget https://fedorahosted.org/releases/f/u/func/func-0.27.tar.gz
wget https://fedorahosted.org/releases/c/e/certmaster/certmaster-0.27.tar.gz
#修改 master机器 hosts
127.0.0.1 localhost
127.0.1.1 mysql
127.0.1.1 certmaster
192.168.6.161 master
192.168.6.160 minions
#修改 minions机器 hosts
127.0.0.1 localhost
127.0.1.1 slave
192.168.6.161 master
192.168.6.160 minions
以git 为例:
安装 func
master $> cd func
master $> make clean
master $> make install
master $> cd ..
安装certmaster
master $> cd certmaster
master $> make clean
master $> make install
#修改配置文件:
master $> vim /etc/certmaster/certmaster.conf
[main]
autosign = no
listen_addr =
listen_port = 51235
cadir = /etc/pki/certmaster/ca
cert_dir = /etc/pki/certmaster
certroot = /var/lib/certmaster/certmaster/certs
csrroot = /var/lib/certmaster/certmaster/csrs
cert_extension = cert
sync_certs = False
master $> vim /etc/certmaster/minion.conf
[main]
certmaster = certmaster
certmaster_port = 51235
log_level = DEBUG
cert_dir = /etc/pki/certmaster
minions 机器上安装master的安装步骤。
配置:
minions $> vim /etc/certmaster/minion.conf
[main]
certmaster = master #对应master 和minions hosts文件 的名字或者IP地址
certmaster_port = 51235
log_level = DEBUG
cert_dir = /etc/pki/certmaster
minions $> vim /etc/func/minion.conf
[main]
log_level = INFO
acl_dir = /etc/func/minion-acl.d
listen_addr =
listen_port = 51234 #端口与master 一致
minion_name = minions #这个名字就是master和minions里定义的名字。
method_log_dir = /var/log/func/methods/
在 master 启动服务
master $> /etc/init.d/certmaster start
在minions 端启动服务
minions $> /etc/init.d/funcd start
master端操作
查看为签发证书列表:
master $> certmaster-ca --list
minions
为客户端签发证书:
master $> certmaster-ca --sign minions
#OK 可以使用了
例子:
master $> func '*' ping
[ ok ... ] minions
master $> func "*" call command run "date"
('minions', [0, 'Fri Jan 21 16:13:09 CST 2011\n', ''])
|
|
|
|
|
|
|