配置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配置自动签发证书

1,现在服务端上删除已经配置了的客户端的证书

# 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的主机端和客户端的自动认证的更多相关文章

  1. mongoDB Replica集群配置(1主+1从+1仲裁)

    1.mongoDB节点介绍 主节点(Primary) 在复制集中,主节点是唯一能够接收写请求的节点.MongoDB在主节点进行写操作,并将这些操作记录到主节点的oplog中.而从节点将会从oplog复 ...

  2. CDbConnectionExt.php 23.2实现数据库的主从分离,该类会维护多个数据库的配置:一个主数据库配置,多个从数据库的配置

      <?php   /** * 实现数据库的主从分离,该类会维护多个数据库的配置:一个主数据库配置,多个从数据库的配置. * 具体使用主数据库还是从数据库,使用如下规则: * 1.CDbComm ...

  3. php配置虚拟主机的配置步骤(hosts、httpd.conf、vhosts.conf)1.配置本地的dns文件2.配置apache的主配置文件3.配置Apache的虚拟主机

    1.域名解析(DNS) 找到C:\Windows\System32\drivers\etc目录下的hosts文件,在里面进行添加对应的内容

  4. 在主机端和设备端进行”incrementArray“并对结果进行比较

    实验思想: 在主机端将数据初始化后传输到设备端,设备端和主机端进行同样的操作对数据加1,然后将设备端的结果传输到主机,最后核对主机端的计算结果和设备端的计算结果是否一直. // incrementAr ...

  5. 在 CentOS 7 上安装和配置 Puppet

    1 准备 2台 centos7 (master/server:192.168.1.103 agent/client:192.168.1.106) 分别添加puppet自定义仓库 https://yum ...

  6. centos LAMP第二部分apache配置 下载discuz!配置第一个虚拟主机 安装Discuz! 用户认证 配置域名跳转 配置apache的访问日志 配置静态文件缓存 配置防盗链 访问控制 apache rewrite 配置开机启动apache tcpdump 第二十节课

    centos    LAMP第二部分apache配置  下载discuz!配置第一个虚拟主机 安装Discuz! 用户认证 配置域名跳转  配置apache的访问日志  配置静态文件缓存  配置防盗链 ...

  7. api接口对于客户端的身份认证方式以及安全措施

    转载 基于http协议的api接口对于客户端的身份认证方式以及安全措施 由于http是无状态的,所以正常情况下在浏览器浏览网页,服务器都是通过访问者的cookie(cookie中存储的jsession ...

  8. [JavaWeb]SpringSecurity-OAuth2.0 统一认证、资源分离的配置,用于分布式架构、模块化开发的认证体系

    前言 关于 OAuth2.0的认证体系,翻阅了好多资料,RCF 文档太多,看了一半就看不下去了,毕竟全英文的文档看起来,是有一点让我烦躁,但也对 OAuth2.0的认证流程有了一个基本的概念,之前用 ...

  9. Spring Boot 自动配置的原理、核心注解以及利用自动配置实现了自定义 Starter 组件

    本章内容 自定义属性快速入门 外化配置 自动配置 自定义创建 Starter 组件 摘录:读书是读完这些文字还要好好用心去想想,写书也一样,做任何事也一样 图 2 第二章目录结构图 第 2 章 Spr ...

随机推荐

  1. HDU - 1850 Nim博弈

    思路:可以对任意一堆牌进行操作,根据Nim博弈定理--所有堆的数量异或值为0就是P态,否则为N态,那么直接对某堆牌操作能让所有牌异或值为0即可,首先求得所有牌堆的异或值,然后枚举每一堆,用已经得到的异 ...

  2. PhpStorm如何下载github上的代码到本地

    1.看着菜单栏有一个VCS(Virus Capture Scripter)集群服务器的选项,选择其下面的Checkout from Version Control,然后 (1)选择GIT:输入git的 ...

  3. postman中 form-data、x-www-form-urlencoded、raw、binary的区别

    1.form-data:  就是http请求中的multipart/form-data,它会将表单的数据处理为一条消息,以标签为单元,用分隔符分开.既可以上传键值对,也可以上传文件.当上传的字段是文件 ...

  4. Docker(一):Docker入门教程

    如今Docker的使用已经非常普遍,特别在一线互联网公司.使用Docker技术可以帮助企业快速水平扩展服务,从而到达弹性部署业务的能力.在云服务概念兴起之后,Docker的使用场景和范围进一步发展,如 ...

  5. vxWorks 命令

    1.4.1 任务管理    sp( )            用缺省参数创建一个任务(priority="100" 返回值为任务ID,或错误)(taskSpawn) sps( )  ...

  6. eclipse生成【带有外部jar包】的java可执行jar包

    之前有写过一篇使用eclipse生成java可执行jar包,但是最近的一次使用中无论如何都不成功,当双击执行打成的jar时,弹出如下错误: could not find the main class: ...

  7. RGMII,MII,GMI接口

    简介 RGMII(Reduced Gigabit Media Independent Interface)是Reduced GMII(吉比特介质独立接口).GMII和RGMII均采用8位数据接口,工作 ...

  8. java线程池的原理及实现

    1.线程池简介:     多线程技术主要解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力.         假设一个服务器完成一项任务所需时间为:T1 ...

  9. vc++怎么可以直接刷掉MBR?搞笑的吧

    FILE * fd=fopen("\\\\.\\PHYSICALDRIVE0","rb+"); char buffer[512]; fread(buffer,5 ...

  10. stm32之keil开发环境搭建

    只要按照下面的一步步来,绝对能从0开始建立一个STM32工程.不仅包括工程建立过程,还有Jlink设置方法.本文使用芯片为STM32F103CB. 1 下载stm32F10x的官方库 http://w ...