Some checks failed
Code scanning / CodeQL (push) Failing after 15s
Zulip production suite / Ubuntu 22.04 production build (push) Failing after 26s
Zulip production suite / Debian 12 production install with custom db name and user (push) Has been skipped
Zulip production suite / Ubuntu 22.04 production install and PostgreSQL upgrade with pgroonga (push) Has been skipped
Zulip production suite / Ubuntu 24.04 production install (push) Has been skipped
Zulip production suite / Ubuntu 26.04 production install (push) Has been skipped
Zulip production suite / Debian 13 production install (push) Has been skipped
Zulip production suite / 7.0 Version Upgrade (push) Has been skipped
Zulip production suite / 8.0 Version Upgrade (push) Has been skipped
Zulip production suite / 6.0 Version Upgrade (push) Has been skipped
Zulip production suite / 10.0 Version Upgrade (push) Has been skipped
Zulip production suite / 9.0 Version Upgrade (push) Has been skipped
Zulip production suite / 12.0 Version Upgrade (push) Has been skipped
Zulip production suite / 11.0 Version Upgrade (push) Has been skipped
GitHub Actions Security Analysis with zizmor / zizmor (push) Failing after 3s
Zulip CI / Debian 12 (Python 3.11, backend + documentation) (push) Failing after 26s
Zulip CI / Ubuntu 22.04 (Python 3.10, backend + frontend) (push) Failing after 3s
Zulip CI / Ubuntu 24.04 (Python 3.12, backend) (push) Failing after 25s
Zulip CI / Ubuntu 26.04 (Python 3.14, backend) (push) Failing after 25s
Zulip CI / Debian 13 (Python 3.13, backend) (push) Failing after 28s
Zulip production suite / Required jobs (push) Has been cancelled
Zulip CI / Required jobs (push) Has been cancelled
API Documentation Update Check / check-feature-level-updated (push) Has been cancelled
API Documentation Update Check / notify-if-api-docs-changed (push) Has been cancelled
57 lines
1.8 KiB
Puppet
57 lines
1.8 KiB
Puppet
class kandra::firewall {
|
|
package { 'iptables-persistent': }
|
|
concat { '/etc/iptables/rules.v4':
|
|
ensure => present,
|
|
mode => '0600',
|
|
require => Package['iptables-persistent'],
|
|
}
|
|
concat::fragment { 'iptables-header.v4':
|
|
target => '/etc/iptables/rules.v4',
|
|
source => 'puppet:///modules/kandra/iptables/header.v4',
|
|
order => '01',
|
|
}
|
|
concat::fragment { 'iptables-trailer.v4':
|
|
target => '/etc/iptables/rules.v4',
|
|
source => 'puppet:///modules/kandra/iptables/trailer.v4',
|
|
order => '99',
|
|
}
|
|
|
|
concat { '/etc/iptables/rules.v6':
|
|
ensure => present,
|
|
mode => '0600',
|
|
require => Package['iptables-persistent'],
|
|
}
|
|
concat::fragment { 'iptables-header.v6':
|
|
target => '/etc/iptables/rules.v6',
|
|
source => 'puppet:///modules/kandra/iptables/header.v6',
|
|
order => '01',
|
|
}
|
|
concat::fragment { 'iptables-trailer.v6':
|
|
target => '/etc/iptables/rules.v6',
|
|
source => 'puppet:///modules/kandra/iptables/trailer.v6',
|
|
order => '99',
|
|
}
|
|
|
|
service { 'netfilter-persistent':
|
|
ensure => running,
|
|
|
|
# Because there is no running process for this service, the normal status
|
|
# checks fail. Because Puppet then thinks the service has been manually
|
|
# stopped, it won't restart it. This fake status command will trick Puppet
|
|
# into thinking the service is *always* running (which in a way it is, as
|
|
# iptables is part of the kernel.)
|
|
hasstatus => true,
|
|
status => '/bin/true',
|
|
|
|
# Under Debian, the "restart" parameter does not reload the rules, so tell
|
|
# Puppet to fall back to stop/start, which does work.
|
|
hasrestart => false,
|
|
|
|
require => Package['iptables-persistent'],
|
|
subscribe => [
|
|
Concat['/etc/iptables/rules.v4'],
|
|
Concat['/etc/iptables/rules.v6'],
|
|
],
|
|
}
|
|
}
|