配置puppet的主机端和客户端的自动认证
配置puppet的主机端和客户端的自动认证
author:headsen chen 2017-11-01 17:44:56
个人原创,转载请注明作者,出处,否则依法追究法律责任
1,先在主机端和客户端都做好前期环境准备和安装好puppet。
2,客户端配置:
[root@client ~]# vim /etc/sysconfig/puppet
将主机端的域名填上:PUPPET_SERVER=server.com

[root@client ~]# vim /etc/puppet/puppet.conf
在[agent]下面添加:
server = server.com (主机端的域名)
listen = true

[root@client ~]# service puppet restart (重启客户端)
[root@client ~]# puppet agent --test
Exiting; no certificate found and waitforcert is disabled (正常,因为主机端还没有认证)
3,主机端开启自动认证:
[root@server manifests]# vim /etc/puppet/autosign.conf (内容为:*.com )

[root@server manifests]# vim /etc/puppet/fileserver.conf
末行添加:

[root@server puppet]# /etc/init.d/puppetmaster restart
[root@server ~]# puppet cert list --all
出现一下信息表示正常,注意,要加上 --all 这个参数。

补充:手动给客户端分配cert证书:
查看有哪些客户端过来请求了证书而没有分配的客户端:# puppet cert list (当没有输出时,表示没有已经请求了,但主机端没有分配的,若有表示已经有客户端来请求,但主机端还没有分配证书)

查看所有的曾经过来请求了这书的,包含已经分配了证书的:# puppet cert list --all (前面有个 + 号的:该证书已经分配给了客户端了。该客户端已经可以直接使用的。)

给某个固定的客户端分配:#puppet cert --sign client.com
给所有的客户端分配:# puppet cert --sign --all
以上所有的过程:客户端过来请求证书,服务端未分配(puppet cert list 查看),服务端手工分配证书(puppet cert --sign xxx.client.com)(puppet cert list)(puppet cert list --all再次查看), 客户端过来拿证书(puppet agent --test --server xxx.server.com)

客户端再次请求认证:
[root@client ssl]# puppet agent --test --server server.com
出现一下信息表示正常:

4,开启资源验证:
新建一个资源:
主机端:
[root@server ~]# vim /etc/puppet/manifests/site.pp
[root@server ~]# cat /etc/puppet/manifests/site.pp
node default {
file { "/tmp/test.txt":
content=>"I'm test puppet\n";
}
}

此时,因为第一次配置认证后已经重启了puppetmaster ,以后配置资源就不用重启服务了。客户端直接拉取就行了。
客户端:
[root@client ssl]# puppet agent --test --server server.com
不运行这个命令也可以,默认是30分钟去服务端去拉取一次,这里就采取手动拉取,立即更新资源到本地

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
puppet配置自动签发证书
# puppet cert clean client.aming.com
2,客户端上删除ssl下已经获取的证书文件
# rm -rf /var/lib/puppet/ssl/*
3,修改服务端配置文件
# vim /etc/puppet/puppet.conf在[main]下面加一行
autosign = true
服务端创建自动签发的配置文件
# vim /etc/puppet/autosign.conf
加入如下内容(意思是符合这个格式的客户端都遵循自动签发证书):
*.com
重启puppetmaster服务
# /etc/init.d/puppetmaster restart
4 ,客户端重启puppet服务
# /etc/init.d/puppet restart
现在就可以在服务端上自动签发证书了
客户端执行:
# puppet agent --test --server xxx.server.com


配置puppet的主机端和客户端的自动认证的更多相关文章
- mongoDB Replica集群配置(1主+1从+1仲裁)
1.mongoDB节点介绍 主节点(Primary) 在复制集中,主节点是唯一能够接收写请求的节点.MongoDB在主节点进行写操作,并将这些操作记录到主节点的oplog中.而从节点将会从oplog复 ...
- CDbConnectionExt.php 23.2实现数据库的主从分离,该类会维护多个数据库的配置:一个主数据库配置,多个从数据库的配置
<?php /** * 实现数据库的主从分离,该类会维护多个数据库的配置:一个主数据库配置,多个从数据库的配置. * 具体使用主数据库还是从数据库,使用如下规则: * 1.CDbComm ...
- php配置虚拟主机的配置步骤(hosts、httpd.conf、vhosts.conf)1.配置本地的dns文件2.配置apache的主配置文件3.配置Apache的虚拟主机
1.域名解析(DNS) 找到C:\Windows\System32\drivers\etc目录下的hosts文件,在里面进行添加对应的内容
- 在主机端和设备端进行”incrementArray“并对结果进行比较
实验思想: 在主机端将数据初始化后传输到设备端,设备端和主机端进行同样的操作对数据加1,然后将设备端的结果传输到主机,最后核对主机端的计算结果和设备端的计算结果是否一直. // incrementAr ...
- 在 CentOS 7 上安装和配置 Puppet
1 准备 2台 centos7 (master/server:192.168.1.103 agent/client:192.168.1.106) 分别添加puppet自定义仓库 https://yum ...
- centos LAMP第二部分apache配置 下载discuz!配置第一个虚拟主机 安装Discuz! 用户认证 配置域名跳转 配置apache的访问日志 配置静态文件缓存 配置防盗链 访问控制 apache rewrite 配置开机启动apache tcpdump 第二十节课
centos LAMP第二部分apache配置 下载discuz!配置第一个虚拟主机 安装Discuz! 用户认证 配置域名跳转 配置apache的访问日志 配置静态文件缓存 配置防盗链 ...
- api接口对于客户端的身份认证方式以及安全措施
转载 基于http协议的api接口对于客户端的身份认证方式以及安全措施 由于http是无状态的,所以正常情况下在浏览器浏览网页,服务器都是通过访问者的cookie(cookie中存储的jsession ...
- [JavaWeb]SpringSecurity-OAuth2.0 统一认证、资源分离的配置,用于分布式架构、模块化开发的认证体系
前言 关于 OAuth2.0的认证体系,翻阅了好多资料,RCF 文档太多,看了一半就看不下去了,毕竟全英文的文档看起来,是有一点让我烦躁,但也对 OAuth2.0的认证流程有了一个基本的概念,之前用 ...
- Spring Boot 自动配置的原理、核心注解以及利用自动配置实现了自定义 Starter 组件
本章内容 自定义属性快速入门 外化配置 自动配置 自定义创建 Starter 组件 摘录:读书是读完这些文字还要好好用心去想想,写书也一样,做任何事也一样 图 2 第二章目录结构图 第 2 章 Spr ...
随机推荐
- UVA - 11636 Hello World! (贪心)
思路:复制次数最少并且可以部分复制,那么贪心地让当前尽量多的复制,如果最后一次复制会超过n,那就部分复制.即满足并且x尽量小. AC代码 #include <stdio.h> const ...
- hdu 2044 递推
到达第n个格子的方案数等于第n-1个格子的方案数加上第n-2个格子的方案数. d[i]=d[i-1]+d[i-2]; AC代码: #include<cstdio> const int ma ...
- shell脚本中 杀死可能成为僵尸进程的方法
交互式 Bash Shell 获取进程 pid 在已知进程名(name)的前提下,交互式 Shell 获取进程 pid 有很多种方法,典型的通过 grep 获取 pid 的方法为(这里添加 -v gr ...
- OSQA的配置
1.安装Python,我安装的是python 2.7.3 2.安装setuptools 下载setuptools,并安装 安装好以后,在pyton2.7/scripts的路径下将会有easy_inst ...
- hexo持续更新记录
port:50187
- ACL访问控制列表
acl是基于文件系统的,所以支不支持acl在于使用什么文件系统. FAT32文件系统不支持权限,也不区分大小写 如果一个分区不是安装系统时分的分区,是一个新的分区的话,默认是不支持acl CentOS ...
- Hadoop压缩
为什幺要压缩? 压缩会提高计算速度?这是因为mapreduce计算会将数据文件分散拷贝到所有datanode上,压缩可以减少数据浪费在带宽上的时间,当这些时间大于压缩/解压缩本身的时间时,计算速度就会 ...
- 用Node.JS+MongoDB搭建个人博客(model目录)(三)
model目录主要是封装一些经常使用的方法,便于使用. setting.js文件: 很简单,就单单封装了一个url作为公用,以后改就方便改了. md5.js(不推荐用): db.js文件: db.js ...
- linux下在用户空间访问I/O端口的ioperm和iopl函数
1.ioperm函数 功能描述:为调用进程设置I/O端口访问权能.ioperm的使用需要具有超级用户的权限,只有低端的[0-0x3ff] I/O端口可被设置,要想指定更多端口的权能,可使用i ...
- R+openNLP︱openNLP的六大可实现功能及其在R语言中的应用
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- openNLP是NLP中比较好的开源工具,R语 ...