Puppet从symlink文件中获取内容

问题描述 投票:1回答:1

是否可以在文件中获取符号链接的内容?

如果fullchain.pem不是符号链接,我可以创建包含内容的文件。

我的文件服务器配置

[shared_files]
    path /etc/puppetlabs/shared_files
    allow *

然后我尝试将内容传递给另一台服务器

file { '/etc/ssl/fullchain.pem':
    ensure => file,
    mode => '0664',
    owner => 'root',
    group => 'root',
    links => follow,
    source_permissions => ignore,
    source => "puppet:///shared_files/fullchain.pem",
  }

预先感谢

puppet
1个回答
2
投票

如果file是主人的象征性链接,我想你问的是给定的/etc/puppetlabs/shared_files/fullchain.pem资源有什么影响。基本答案是Puppet的内置文件服务器遵循符号链接。在您可能看到的地方没有明确记录,但the documentation for the fileserver configuration file在以下警告中如此清楚地说明:

小心:始终限制对已安装目录的写访问权限。文件服务器遵循文件服务器装载中的任何符号链接,包括指向代理节点不应访问的文件的链接(如SSL密钥)。遵循符号链接时,文件服务器可以访问Puppet Server用户帐户可读的任何文件。

请注意,这与links资源的File参数无关。这会影响Puppet在目标节点上的指定路径识别符号链接时所执行的操作。具体来说,如果links设置为follow,如在您的示例中,并且本地路径标识符号链接,则Puppet将管理链接指向的文件。否则(如果links设置为manage,默认值)指定的路径本身始终是托管路径。在这种情况下,如果路径最初识别出符号链接,那么Puppet会用常规文件替换它(假设示例未经修改)。

© www.soinside.com 2019 - 2024. All rights reserved.