module ForemanMaintain::Concerns::Firewall::NftablesMaintenanceMode

Public Instance Methods

disable_maintenance_mode() click to toggle source
# File lib/foreman_maintain/concerns/firewall/nftables_maintenance_mode.rb, line 5
def disable_maintenance_mode
  delete_table if table_exist?
end
enable_maintenance_mode() click to toggle source
# File lib/foreman_maintain/concerns/firewall/nftables_maintenance_mode.rb, line 9
def enable_maintenance_mode
  unless table_exist?
    add_table
    add_chain(:chain_options => nftables_chain_options)
    add_rules(rules: nftables_rules)
  end
end
maintenance_mode_status?() click to toggle source
# File lib/foreman_maintain/concerns/firewall/nftables_maintenance_mode.rb, line 17
def maintenance_mode_status?
  table_exist?
end
nftables_chain_options() click to toggle source
# File lib/foreman_maintain/concerns/firewall/nftables_maintenance_mode.rb, line 21
def nftables_chain_options
  '{type filter hook input priority 0\\;}'
end
nftables_rules() click to toggle source
# File lib/foreman_maintain/concerns/firewall/nftables_maintenance_mode.rb, line 25
def nftables_rules
  ['iifname "lo" accept', 'tcp dport 443 reject']
end
status_for_maintenance_mode() click to toggle source
# File lib/foreman_maintain/concerns/firewall/nftables_maintenance_mode.rb, line 29
def status_for_maintenance_mode
  if table_exist?
    ['Nftables table: present', []]
  else
    ['Nftables table: absent', []]
  end
end