Puppet上带有Proftpd的配置故障2ban 我想根据代理计算机上Proftpd的状态更改Fail2ban的jail.conf中的变量“enabled” 例如:如果在代理计算机上,Proftpd正在运行,“enable=true”(Fail2ban将监视Proftpd) 如果Proftpd停止,“启用=错误”(Fail2ban不会监视Proftpd)

Puppet上带有Proftpd的配置故障2ban 我想根据代理计算机上Proftpd的状态更改Fail2ban的jail.conf中的变量“enabled” 例如:如果在代理计算机上,Proftpd正在运行,“enable=true”(Fail2ban将监视Proftpd) 如果Proftpd停止,“启用=错误”(Fail2ban不会监视Proftpd),puppet,proftpd,fail2ban,Puppet,Proftpd,Fail2ban,我的init.pp文件: 类故障2ban{ 包{“fail2ban”: 确保=>“已安装”, } 问题是,我的“启用”结果是根据对Puppet Master的检查,而不是代理机器,而我需要在代理机器上进行检查 有人能帮我吗?对不起,我在“jail.conf.erb”文件中有个错误。“enabled=”不是“$status”。结果总是根据对Puppet master machine的检查。对不起,我在“jail.conf.erb”文件中有个错误。“enabled=”不是“$status”。结果总是

我的init.pp文件:

类故障2ban{ 包{“fail2ban”: 确保=>“已安装”, }

问题是,我的“启用”结果是根据对Puppet Master的检查,而不是代理机器,而我需要在代理机器上进行检查

有人能帮我吗?

对不起,我在“jail.conf.erb”文件中有个错误。“enabled=”不是“$status”。结果总是根据对Puppet master machine的检查。对不起,我在“jail.conf.erb”文件中有个错误。“enabled=”不是“$status”。结果总是根据对Puppet master machine的检查。
service { "fail2ban":
        ensure => "running",
        enable => "true",
        require => Package["fail2ban"],
}
$path = "/var/run/proftpd.pid"
$status = inline_template("<% if File.exist?(@path) -%>true<% else -%>false<%end -%>")
file { "jail.conf":
        path    => '/etc/fail2ban/jail.conf',
    ensure  => file,
    require => Package['fail2ban'],
    content => template("fail2ban/jail.conf.erb"),
notify  => Service['fail2ban'],
}
[proftpd]
enabled  = <%= $status %>
port     = ftp,ftp-data,ftps,ftps-data
filter   = proftpd
logpath  = /var/log/proftpd/proftpd.log
maxretry = 5