Server IP : 103.169.32.36 / Your IP : 216.73.216.187 Web Server : Apache System : Linux web.dpmptsp 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64 User : apache ( 48) PHP Version : 5.6.40 Disable Function : NONE MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /bin/ |
Upload File : |
| Current File : /bin/firewall-offline-cmd |
#!/usr/bin/python2 -Es
# -*- coding: utf-8 -*-
#
# Copyright (C) 2009-2016 Red Hat, Inc.
#
# Authors:
# Thomas Woerner <twoerner@redhat.com>
# Jiri Popelka <jpopelka@redhat.com>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
from gi.repository import GObject
import sys
sys.modules['gobject'] = GObject
import argparse
import os
from firewall.client import FirewallClientIPSetSettings, \
FirewallClientZoneSettings, FirewallClientServiceSettings, \
FirewallClientIcmpTypeSettings, FirewallClientHelperSettings
from firewall.errors import FirewallError
from firewall import config
from firewall.core.fw_test import Firewall_test
from firewall.functions import joinArgs, splitArgs
from firewall.core.io.functions import check_config
from firewall.core.io.zone import zone_reader
from firewall.core.io.service import service_reader
from firewall.core.io.ipset import ipset_reader
from firewall.core.io.icmptype import icmptype_reader
from firewall.core.io.helper import helper_reader
from firewall.command import FirewallCommand
# check for root user
def assert_root():
if os.getuid() != 0:
sys.stderr.write("You need to be root to run %s.\n" % sys.argv[0])
sys.exit(-1)
SYSTEM_CONFIG_FIREWALL = config.SYSCONFIGDIR + '/system-config-firewall'
def __usage():
sys.stdout.write("""
Usage: firewall-offline-cmd [OPTIONS...]
If no options are given, configuration from '%s' will be migrated.
General Options
-h, --help Prints a short help text and exists
-V, --version Print the version string of firewalld
-q, --quiet Do not print status messages
--system-config Path to firewalld system configuration
--default-config Path to firewalld default configuration
--check-config Check system and default configuration
Lokkit Compatibility Options
--migrate-system-config-firewall=<file>
Import configuration data from the given configuration
file.
--enabled Enable firewall (default)
--disabled Disable firewall
--addmodule=<module> Ignored option, was used to enable an iptables module
--removemodule=<module>
Ignored option, was used to disable an iptables module
-s <service>, --service=<service>
Enable a service in the default zone (example: ssh)
--remove-service=<service>
Disable a service in the default zone (example: ssh)
-p <port>[-<port>]:<protocol>, --port=<port>[-<port>]:<protocol>
Enable a port in the default zone (example: ssh:tcp)
-t <interface>, --trust=<interface>
Bind an interface to the trusted zone
-m <interface>, --masq=<interface>
Enables masquerading in the default zone, interface
argument is ignored. This is IPv4 only.
--custom-rules=[<type>:][<table>:]<filename>
Ignored option. Was used to add custom rules to the
firewall (Example:
ipv4:filter:%s/ipv4_filter_addon)
--forward-port=if=<interface>:port=<port>:proto=<protocol>[:toport=<destination port>][:toaddr=<destination address>]
Forward the port with protocol for the interface to
either another local destination port (no destination
address given) or to an other destination address with
an optional destination port. This will be added to
the default zone. This is IPv4 only.
--block-icmp=<icmp type>
Block this ICMP type in the default zone. The default
is to accept all ICMP types.
Log Denied Options
--get-log-denied Print the log denied value
--set-log-denied=<value>
Set log denied value
Automatic Helpers Options
--get-automatic-helpers
Print the automatic helpers value
--set-automatic-helpers=<value>
Set automatic helpers value
Zone Options
--get-default-zone Print default zone for connections and interfaces
--set-default-zone=<zone>
Set default zone
--get-zones Print predefined zones
--get-services Print predefined services
--get-icmptypes Print predefined icmptypes
--get-zone-of-interface=<interface>
Print name of the zone the interface is bound to
--get-zone-of-source=<source>[/<mask>]|<MAC>|ipset:<ipset>
Print name of the zone the source is bound to
--list-all-zones List everything added for or enabled in all zones
--new-zone=<zone> Add a new empty zone
--new-zone-from-file=<filename> [--name=<zone>]
Add a new zone from file with optional name override [P only]
--delete-zone=<zone> Delete an existing zone
--load-zone-defaults=<zone>
Load zone default settings [Z]
--zone=<zone> Use this zone to set or query options, else default zone
Usable for options marked with [Z]
--set-description=<description>
Set new description to zone
--get-description Print description for zone
--get-target Get the zone target
--set-target=<target>
Set the zone target
--info-zone=<zone> Print information about a zone
--path-zone=<zone> Print file path of a zone
IPSet Options
--new-ipset=<ipset> --type=<ipset type> [--option=<key>[=<value>]]..
Add a new empty ipset
--new-ipset-from-file=<filename> [--name=<ipset>]
Add a new ipset from file with optional name override [P only]
--delete-ipset=<ipset>
Delete an existing ipset
--load-ipset-defaults=<ipset>
Load ipset default settings
--info-ipset=<ipset> Print information about an ipset
--path-ipset=<ipset> Print file path of an ipset
--get-ipsets Print predefined ipsets
--ipset=<ipset> --set-description=<description>
Set new description to ipset
--ipset=<ipset> --get-description
Print description for ipset
--ipset=<ipset> --set-short=<description>
Set new short description to ipset
--ipset=<ipset> --get-short
Print short description for ipset
--ipset=<ipset> --add-entry=<entry>
Add a new entry to an ipset
--ipset=<ipset> --remove-entry=<entry>
Remove an entry from an ipset
--ipset=<ipset> --query-entry=<entry>
Return whether ipset has an entry
--ipset=<ipset> --get-entries
List entries of an ipset
--ipset=<ipset> --add-entries-from-file=<entry>
Add a new entries to an ipset [P]
--ipset=<ipset> --remove-entries-from-file=<entry>
Remove entries from an ipset [P]
IcmpType Options
--new-icmptype=<icmptype>
Add a new empty icmptype
--new-icmptype-from-file=<filename> [--name=<icmptype>]
Add a new icmptype from file with optional name override [P only]
--delete-icmptype=<icmptype>
Delete an existing icmptype
--load-icmptype-defaults=<icmptype>
Load icmptype default settings
--info-icmptype=<icmptype>
Print information about an icmptype
--path-icmptype=<icmptype>
Print file path of an icmptype
--icmptype=<icmptype> --set-description=<description>
Set new description to icmptype
--icmptype=<icmptype> --get-description
Print description for icmptype
--icmptype=<icmptype> --set-short=<description>
Set new short description to icmptype
--icmptype=<icmptype> --get-short
Print short description for icmptype
--icmptype=<icmptype> --add-destination=<ipv>
Enable destination for ipv in icmptype
--icmptype=<icmptype> --remove-destination=<ipv>
Disable destination for ipv in icmptype
--icmptype=<icmptype> --query-destination=<ipv>
Return whether destination ipv is enabled in icmptype
--icmptype=<icmptype> --get-destinations
List destinations in icmptype
Service Options
--new-service=<service>
Add a new empty service
--new-service-from-file=<filename> [--name=<service>]
Add a new service from file with optional name override [P only]
--delete-service=<service>
Delete an existing service
--load-service-defaults=<service>
Load icmptype default settings
--info-service=<service>
Print information about a service
--path-service=<service>
Print file path of a service
--service=<service> --set-description=<description>
Set new description to service
--service=<service> --get-description
Print description for service
--service=<service> --set-short=<description>
Set new short description to service
--service=<service> --get-short
Print short description for service
--service=<service> --add-port=<portid>[-<portid>]/<protocol>
Add a new port to service
--service=<service> --remove-port=<portid>[-<portid>]/<protocol>
Remove a port from service
--service=<service> --query-port=<portid>[-<portid>]/<protocol>
Return whether the port has been added for service
--service=<service> --get-ports
List ports of service
--service=<service> --add-protocol=<protocol>
Add a new protocol to service
--service=<service> --remove-protocol=<protocol>
Remove a protocol from service
--service=<service> --query-protocol=<protocol>
Return whether the protocol has been added for service
--service=<service> --get-protocols
List protocols of service
--service=<service> --add-source-port=<portid>[-<portid>]/<protocol>
Add a new source port to service
--service=<service> --remove-source-port=<portid>[-<portid>]/<protocol>
Remove a source port from service
--service=<service> --query-source-port=<portid>[-<portid>]/<protocol>
Return whether the source port has been added for service [P only]
--service=<service> --get-source-ports
List source ports of service
--service=<service> --add-module=<module>
Add a new module to service
--service=<service> --remove-module=<module>
Remove a module from service
--service=<service> --query-module=<module>
Return whether the module has been added for service
--service=<service> --get-modules
List modules of service
--service=<service> --set-destination=<ipv>:<address>[/<mask>]
Set destination for ipv to address in service
--service=<service> --remove-destination=<ipv>
Disable destination for ipv i service
--service=<service> --query-destination=<ipv>:<address>[/<mask>]
Return whether destination ipv is set for service
--service=<service> --get-destinations
List destinations in service
Options to Adapt and Query Zones
--list-all List everything added for or enabled in a zone [Z]
--list-services List services added for a zone [Z]
--add-service=<service>
Add a service for a zone [Z]
--remove-service-from-zone=<service>
Remove a service from a zone [Z]
--query-service=<service>
Return whether service has been added for a zone [Z]
--list-ports List ports added for a zone [Z]
--add-port=<portid>[-<portid>]/<protocol>
Add the port for a zone [Z]
--remove-port=<portid>[-<portid>]/<protocol>
Remove the port from a zone [Z]
--query-port=<portid>[-<portid>]/<protocol>
Return whether the port has been added for zone [Z]
--list-protocols List protocols added for a zone [Z]
--add-protocol=<protocol>
Add the protocol for a zone [Z]
--remove-protocol=<protocol>
Remove the protocol from a zone [Z]
--query-protocol=<protocol>
Return whether the protocol has been added for zone [Z]
--list-source-ports List source ports added for a zone [Z]
--add-source-port=<portid>[-<portid>]/<protocol>
Add the source port for a zone [Z]
--remove-source-port=<portid>[-<portid>]/<protocol>
Remove the source port from a zone [Z]
--query-source-port=<portid>[-<portid>]/<protocol>
Return whether the source port has been added for zone [Z]
--list-icmp-blocks List Internet ICMP type blocks added for a zone [Z]
--add-icmp-block=<icmptype>
Add an ICMP block for a zone [Z]
--remove-icmp-block=<icmptype>
Remove the ICMP block from a zone [Z]
--query-icmp-block=<icmptype>
Return whether an ICMP block has been added for a zone
[Z]
--add-icmp-block-inversion
Enable inversion of icmp blocks for a zone [Z]
--remove-icmp-block-inversion
Disable inversion of icmp blocks for a zone [Z]
--query-icmp-block-inversion
Return whether inversion of icmp blocks has been enabled
for a zone [Z]
--list-forward-ports List IPv4 forward ports added for a zone [Z]
--add-forward-port=port=<portid>[-<portid>]:proto=<protocol>[:toport=<portid>[-<portid>]][:toaddr=<address>[/<mask>]]
Add the IPv4 forward port for a zone [Z]
--remove-forward-port=port=<portid>[-<portid>]:proto=<protocol>[:toport=<portid>[-<portid>]][:toaddr=<address>[/<mask>]]
Remove the IPv4 forward port from a zone [Z]
--query-forward-port=port=<portid>[-<portid>]:proto=<protocol>[:toport=<portid>[-<portid>]][:toaddr=<address>[/<mask>]]
Return whether the IPv4 forward port has been added for
a zone [Z]
--add-masquerade Enable IPv4 masquerade for a zone [Z]
--remove-masquerade Disable IPv4 masquerade for a zone [Z]
--query-masquerade Return whether IPv4 masquerading has been enabled for a
zone [Z]
--list-rich-rules List rich language rules added for a zone [Z]
--add-rich-rule=<rule>
Add rich language rule 'rule' for a zone [Z]
--remove-rich-rule=<rule>
Remove rich language rule 'rule' from a zone [Z]
--query-rich-rule=<rule>
Return whether a rich language rule 'rule' has been
added for a zone [Z]
Options to Handle Bindings of Interfaces
--list-interfaces List interfaces that are bound to a zone [Z]
--add-interface=<interface>
Bind the <interface> to a zone [Z]
--change-interface=<interface>
Change zone the <interface> is bound to [Z]
--query-interface=<interface>
Query whether <interface> is bound to a zone [Z]
--remove-interface=<interface>
Remove binding of <interface> from a zone [Z]
Options to Handle Bindings of Sources
--list-sources List sources that are bound to a zone [Z]
--add-source=<source>[/<mask>]|<MAC>|ipset:<ipset>
Bind the source to a zone [Z]
--change-source=<source>[/<mask>]|<MAC>|ipset:<ipset>
Change zone the source is bound to [Z]
--query-source=<source>[/<mask>]|<MAC>|ipset:<ipset>
Query whether the source is bound to a zone [Z]
--remove-source=<source>[/<mask>]|<MAC>|ipset:<ipset>
Remove binding of the source from a zone [Z]
Helper Options
--new-helper=<helper> --module=<module> [--family=<family>]
Add a new helper
--new-helper-from-file=<filename> [--name=<helper>]
Add a new helper from file with optional name
--delete-helper=<helper>
Delete an existing helper
--load-helper-defaults=<helper>
Load helper default settings
--info-helper=<helper> Print information about an helper
--path-helper=<helper> Print file path of an helper
--get-helpers Print predefined helpers
--helper=<helper> --set-description=<description>
Set new description to helper
--helper=<helper> --get-description
Print description for helper
--helper=<helper> --set-short=<description>
Set new short description to helper
--helper=<helper> --get-short
Print short description for helper
--helper=<helper> --add-port=<portid>[-<portid>]/<protocol>
Add a new port to helper
--helper=<helper> --remove-port=<portid>[-<portid>]/<protocol>
Remove a port from helper
--helper=<helper> --query-port=<portid>[-<portid>]/<protocol>
Return whether the port has been added for helper
--helper=<helper> --get-ports
List ports of helper
--helper=<helper> --set-module=<module>
Set module to helper
--helper=<helper> --get-module
Get module from helper
--helper=<helper> --set-family={ipv4|ipv6|}
Set family for helper
--helper=<helper> --get-family
Get module from helper
Direct Options
--direct First option for all direct options
--get-all-chains
Get all chains
--get-chains {ipv4|ipv6|eb} <table>
Get all chains added to the table
--add-chain {ipv4|ipv6|eb} <table> <chain>
Add a new chain to the table
--remove-chain {ipv4|ipv6|eb} <table> <chain>
Remove the chain from the table
--query-chain {ipv4|ipv6|eb} <table> <chain>
Return whether the chain has been added to the table
--get-all-rules
Get all rules
--get-rules {ipv4|ipv6|eb} <table> <chain>
Get all rules added to chain in table
--add-rule {ipv4|ipv6|eb} <table> <chain> <priority> <arg>...
Add rule to chain in table
--remove-rule {ipv4|ipv6|eb} <table> <chain> <priority> <arg>...
Remove rule with priority from chain in table
--remove-rules {ipv4|ipv6|eb} <table> <chain>
Remove rules from chain in table
--query-rule {ipv4|ipv6|eb} <table> <chain> <priority> <arg>...
Return whether a rule with priority has been added to
chain in table
--get-all-passthroughs
Get all passthrough rules
--get-passthroughs {ipv4|ipv6|eb} <arg>...
Get passthrough rules
--add-passthrough {ipv4|ipv6|eb} <arg>...
Add a new passthrough rule
--remove-passthrough {ipv4|ipv6|eb} <arg>...
Remove a passthrough rule
--query-passthrough {ipv4|ipv6|eb} <arg>...
Return whether the passthrough rule has been added
Lockdown Options
--lockdown-on Enable lockdown.
--lockdown-off Disable lockdown.
--query-lockdown Query whether lockdown is enabled
Lockdown Whitelist Options
--list-lockdown-whitelist-commands
List all command lines that are on the whitelist
--add-lockdown-whitelist-command=<command>
Add the command to the whitelist
--remove-lockdown-whitelist-command=<command>
Remove the command from the whitelist
--query-lockdown-whitelist-command=<command>
Query whether the command is on the whitelist
--list-lockdown-whitelist-contexts
List all contexts that are on the whitelist
--add-lockdown-whitelist-context=<context>
Add the context context to the whitelist
--remove-lockdown-whitelist-context=<context>
Remove the context from the whitelist
--query-lockdown-whitelist-context=<context>
Query whether the context is on the whitelist
--list-lockdown-whitelist-uids
List all user ids that are on the whitelist
--add-lockdown-whitelist-uid=<uid>
Add the user id uid to the whitelist
--remove-lockdown-whitelist-uid=<uid>
Remove the user id uid from the whitelist
--query-lockdown-whitelist-uid=<uid>
Query whether the user id uid is on the whitelist
--list-lockdown-whitelist-users
List all user names that are on the whitelist
--add-lockdown-whitelist-user=<user>
Add the user name user to the whitelist
--remove-lockdown-whitelist-user=<user>
Remove the user name user from the whitelist
--query-lockdown-whitelist-user=<user>
Query whether the user name user is on the whitelist
Polkit Options
--policy-server Change Polkit actions to 'server' (more restricted)
--policy-desktop Change Polkit actions to 'desktop' (less restricted)
""" % (SYSTEM_CONFIG_FIREWALL, config.SYSCONFIGDIR))
def parse_port_lokkit(value):
try:
(port, proto) = value.split(":")
except Exception:
cmd.fail("bad port (most likely missing protocol), correct syntax is portid[-portid]:protocol")
return (port, proto)
def pk_symlink(product='server'):
_PK_DIR = '/usr/share/polkit-1/actions/'
_PK_NAME = 'org.fedoraproject.FirewallD1.'
os.chdir(_PK_DIR)
if os.path.isfile(_PK_NAME+product+'.policy.choice'):
if os.path.isfile(_PK_NAME+'policy'):
os.remove(_PK_NAME+'policy')
os.symlink(_PK_NAME+product+'.policy.choice', _PK_NAME+'policy')
cmd.print_and_exit('symlink '+_PK_DIR+_PK_NAME+product+'.policy.choice -> '+_PK_NAME+'policy')
else:
cmd.fail('no such file '+_PK_DIR+_PK_NAME+product+'.policy.choice')
# system-config-firewall
def read_sysconfig_args(config_file=SYSTEM_CONFIG_FIREWALL):
filename = None
if os.path.exists(config_file) and os.path.isfile(config_file):
filename = config_file
try:
f = open(filename, 'r')
except Exception:
return None
argv = [ ]
for line in f:
if not line:
break
line = line.strip()
if len(line) < 1 or line[0] == '#':
continue
argv.append(line)
f.close()
return argv
parser = argparse.ArgumentParser(usage="see firewall-offline-cmd man page",
add_help=False)
parser_group_output = parser.add_mutually_exclusive_group()
parser_group_output.add_argument("-v", "--verbose", action="store_true")
parser_group_output.add_argument("-q", "--quiet", action="store_true")
parser_group_lokkit = parser.add_argument_group()
parser_group_lokkit.add_argument("--enabled", action="store_true")
parser_group_lokkit.add_argument("--disabled", action="store_true")
parser_group_lokkit.add_argument("--addmodule", metavar="<module>", action='append')
parser_group_lokkit.add_argument("--removemodule", metavar="<module>", action='append')
parser_group_lokkit.add_argument("--service", "-s", metavar="<service>", action='append')
parser_group_lokkit.add_argument("--remove-service", metavar="<service>", action='append')
parser_group_lokkit.add_argument("--port", "-p", metavar="<port>", action='append')
parser_group_lokkit.add_argument("--trust", "-t", metavar="<iface>", action='append')
parser_group_lokkit.add_argument("--masq", "-m", metavar="<iface>", action='append')
parser_group_lokkit.add_argument("--custom-rules", metavar="<filename>", action='append')
parser_group_lokkit.add_argument("--forward-port", metavar="<port>", action='append')
parser_group_lokkit.add_argument("--block-icmp", metavar="<icmptype>", action='append')
parser.add_argument("--system-config", metavar="path")
parser.add_argument("--default-config", metavar="path")
parser.add_argument("--check-config", action="store_true")
parser_group_standalone = parser.add_mutually_exclusive_group()
parser_group_standalone.add_argument("-h", "--help",
action="store_true")
parser_group_standalone.add_argument("-V", "--version", action="store_true")
parser_group_standalone.add_argument("--get-log-denied", action="store_true")
parser_group_standalone.add_argument("--set-log-denied", metavar="<value>")
parser_group_standalone.add_argument("--get-automatic-helpers", action="store_true")
parser_group_standalone.add_argument("--set-automatic-helpers", metavar="<value>")
parser_group_standalone.add_argument("--policy-server", action="store_true")
parser_group_standalone.add_argument("--policy-desktop", action="store_true")
parser_group_standalone.add_argument("--lockdown-on", action="store_true")
parser_group_standalone.add_argument("--lockdown-off", action="store_true")
parser_group_standalone.add_argument("--query-lockdown", action="store_true")
parser_group_standalone.add_argument("--get-default-zone", action="store_true")
parser_group_standalone.add_argument("--set-default-zone", metavar="<zone>")
parser_group_standalone.add_argument("--get-zones", action="store_true")
parser_group_standalone.add_argument("--get-services", action="store_true")
parser_group_standalone.add_argument("--get-icmptypes", action="store_true")
parser_group_standalone.add_argument("--get-zone-of-interface", metavar="<iface>", action='append')
parser_group_standalone.add_argument("--get-zone-of-source", metavar="<source>", action='append')
parser_group_standalone.add_argument("--list-all-zones", action="store_true")
parser_group_standalone.add_argument("--info-zone", metavar="<zone>")
parser_group_standalone.add_argument("--info-service", metavar="<service>")
parser_group_standalone.add_argument("--info-icmptype", metavar="<icmptype>")
parser_group_standalone.add_argument("--info-ipset", metavar="<ipset>")
parser_group_standalone.add_argument("--info-helper", metavar="<helper>")
parser_group_config = parser.add_mutually_exclusive_group()
parser_group_config.add_argument("--new-icmptype", metavar="<icmptype>")
parser_group_config.add_argument("--new-icmptype-from-file", metavar="<filename>")
parser_group_config.add_argument("--delete-icmptype", metavar="<icmptype>")
parser_group_config.add_argument("--load-icmptype-defaults",
metavar="<icmptype>")
parser_group_config.add_argument("--new-service", metavar="<service>")
parser_group_config.add_argument("--new-service-from-file", metavar="<filename>")
parser_group_config.add_argument("--delete-service", metavar="<service>")
parser_group_config.add_argument("--load-service-defaults", metavar="<service>")
parser_group_config.add_argument("--new-zone", metavar="<zone>")
parser_group_config.add_argument("--new-zone-from-file", metavar="<filename>")
parser_group_config.add_argument("--delete-zone", metavar="<zone>")
parser_group_config.add_argument("--load-zone-defaults", metavar="<zone>")
parser_group_config.add_argument("--new-ipset", metavar="<ipset>")
parser_group_config.add_argument("--new-ipset-from-file", metavar="<filename>")
parser_group_config.add_argument("--delete-ipset", metavar="<ipset>")
parser_group_config.add_argument("--load-ipset-defaults", metavar="<ipset>")
parser_group_config.add_argument("--new-helper", metavar="<helper>")
parser_group_config.add_argument("--new-helper-from-file", metavar="<filename>")
parser_group_config.add_argument("--delete-helper", metavar="<helper>")
parser_group_config.add_argument("--load-helper-defaults", metavar="<helper>")
parser_group_config.add_argument("--path-zone", metavar="<zone>")
parser_group_config.add_argument("--path-service", metavar="<service>")
parser_group_config.add_argument("--path-icmptype", metavar="<icmptype>")
parser_group_config.add_argument("--path-ipset", metavar="<ipset>")
parser_group_config.add_argument("--path-helper", metavar="<helper>")
parser.add_argument("--name", default="", metavar="<name>")
parser_group_lockdown_whitelist = parser.add_mutually_exclusive_group()
parser_group_lockdown_whitelist.add_argument("--list-lockdown-whitelist-commands", action="store_true")
parser_group_lockdown_whitelist.add_argument("--add-lockdown-whitelist-command", metavar="<command>", action='append')
parser_group_lockdown_whitelist.add_argument("--remove-lockdown-whitelist-command", metavar="<command>", action='append')
parser_group_lockdown_whitelist.add_argument("--query-lockdown-whitelist-command", metavar="<command>", action='append')
parser_group_lockdown_whitelist.add_argument("--list-lockdown-whitelist-contexts", action="store_true")
parser_group_lockdown_whitelist.add_argument("--add-lockdown-whitelist-context", metavar="<context>", action='append')
parser_group_lockdown_whitelist.add_argument("--remove-lockdown-whitelist-context", metavar="<context>", action='append')
parser_group_lockdown_whitelist.add_argument("--query-lockdown-whitelist-context", metavar="<context>", action='append')
parser_group_lockdown_whitelist.add_argument("--list-lockdown-whitelist-uids", action="store_true")
parser_group_lockdown_whitelist.add_argument("--add-lockdown-whitelist-uid", metavar="<uid>", type=int, action='append')
parser_group_lockdown_whitelist.add_argument("--remove-lockdown-whitelist-uid", metavar="<uid>", type=int, action='append')
parser_group_lockdown_whitelist.add_argument("--query-lockdown-whitelist-uid", metavar="<uid>", type=int, action='append')
parser_group_lockdown_whitelist.add_argument("--list-lockdown-whitelist-users", action="store_true")
parser_group_lockdown_whitelist.add_argument("--add-lockdown-whitelist-user", metavar="<user>", action='append')
parser_group_lockdown_whitelist.add_argument("--remove-lockdown-whitelist-user", metavar="<user>", action='append')
parser_group_lockdown_whitelist.add_argument("--query-lockdown-whitelist-user", metavar="<user>", action='append')
parser.add_argument("--zone", default="", metavar="<zone>")
parser_group_zone = parser.add_mutually_exclusive_group()
parser_group_zone.add_argument("--add-interface", metavar="<iface>", action='append')
parser_group_zone.add_argument("--remove-interface", metavar="<iface>", action='append')
parser_group_zone.add_argument("--query-interface", metavar="<iface>", action='append')
parser_group_zone.add_argument("--change-interface", "--change-zone", metavar="<iface>", action='append')
parser_group_zone.add_argument("--list-interfaces", action="store_true")
parser_group_zone.add_argument("--add-source", metavar="<source>", action='append')
parser_group_zone.add_argument("--remove-source", metavar="<source>", action='append')
parser_group_zone.add_argument("--query-source", metavar="<source>", action='append')
parser_group_zone.add_argument("--change-source", metavar="<source>", action='append')
parser_group_zone.add_argument("--list-sources", action="store_true")
parser_group_zone.add_argument("--add-rich-rule", metavar="<rule>", action='append')
parser_group_zone.add_argument("--remove-rich-rule", metavar="<rule>", action='append')
parser_group_zone.add_argument("--query-rich-rule", metavar="<rule>", action='append')
parser_group_zone.add_argument("--add-service", metavar="<service>", action='append')
parser_group_zone.add_argument("--remove-service-from-zone", metavar="<zone>", action='append')
parser_group_zone.add_argument("--query-service", metavar="<zone>", action='append')
parser_group_zone.add_argument("--add-port", metavar="<port>", action='append')
parser_group_zone.add_argument("--remove-port", metavar="<port>", action='append')
parser_group_zone.add_argument("--query-port", metavar="<port>", action='append')
parser_group_zone.add_argument("--add-protocol", metavar="<protocol>", action='append')
parser_group_zone.add_argument("--remove-protocol", metavar="<protocol>", action='append')
parser_group_zone.add_argument("--query-protocol", metavar="<protocol>", action='append')
parser_group_zone.add_argument("--add-source-port", metavar="<port>", action='append')
parser_group_zone.add_argument("--remove-source-port", metavar="<port>", action='append')
parser_group_zone.add_argument("--query-source-port", metavar="<port>", action='append')
parser_group_zone.add_argument("--add-masquerade", action="store_true")
parser_group_zone.add_argument("--remove-masquerade", action="store_true")
parser_group_zone.add_argument("--query-masquerade", action="store_true")
parser_group_zone.add_argument("--add-icmp-block", metavar="<icmptype>", action='append')
parser_group_zone.add_argument("--remove-icmp-block", metavar="<icmptype>", action='append')
parser_group_zone.add_argument("--query-icmp-block", metavar="<icmptype>", action='append')
parser_group_zone.add_argument("--add-icmp-block-inversion", action="store_true")
parser_group_zone.add_argument("--remove-icmp-block-inversion", action="store_true")
parser_group_zone.add_argument("--query-icmp-block-inversion", action="store_true")
parser_group_zone.add_argument("--add-forward-port", metavar="<port>", action='append')
parser_group_zone.add_argument("--remove-forward-port", metavar="<port>", action='append')
parser_group_zone.add_argument("--query-forward-port", metavar="<port>", action='append')
parser_group_zone.add_argument("--list-rich-rules", action="store_true")
parser_group_zone.add_argument("--list-services", action="store_true")
parser_group_zone.add_argument("--list-ports", action="store_true")
parser_group_zone.add_argument("--list-protocols", action="store_true")
parser_group_zone.add_argument("--list-icmp-blocks", action="store_true")
parser_group_zone.add_argument("--list-forward-ports", action="store_true")
parser_group_zone.add_argument("--list-source-ports", action="store_true")
parser_group_zone.add_argument("--list-all", action="store_true")
parser_group_zone.add_argument("--get-target", action="store_true")
parser_group_zone.add_argument("--set-target", metavar="<target>")
parser.add_argument("--option", metavar="<key>[=<value>]", action='append')
parser.add_argument("--type", metavar="<ipsettype>")
parser.add_argument("--ipset", metavar="<ipset>")
parser_ipset = parser.add_mutually_exclusive_group()
#parser_ipset.add_argument("--add-option", metavar="<key>[=<value>]")
#parser_ipset.add_argument("--remove-option", metavar="<key>[=<value>]")
#parser_ipset.add_argument("--query-option", metavar="<key>[=<value>]")
#parser_ipset.add_argument("--get-options", action="store_true")
parser_ipset.add_argument("--get-ipsets", action="store_true")
parser_ipset.add_argument("--add-entry", metavar="<entry>", action='append')
parser_ipset.add_argument("--remove-entry", metavar="<entry>", action='append')
parser_ipset.add_argument("--query-entry", metavar="<entry>", action='append')
parser_ipset.add_argument("--get-entries", action="store_true")
parser_ipset.add_argument("--add-entries-from-file", metavar="<filename>", action='append')
parser_ipset.add_argument("--remove-entries-from-file", metavar="<filename>", action='append')
parser.add_argument("--icmptype", metavar="<icmptype>")
parser_icmptype = parser.add_mutually_exclusive_group()
parser_icmptype.add_argument("--add-destination", metavar="<ipv>", action='append')
parser_icmptype.add_argument("--remove-destination", metavar="<ipv>", action='append')
parser_icmptype.add_argument("--query-destination", metavar="<ipv>", action='append')
parser_icmptype.add_argument("--get-destinations", action="store_true")
parser_service = parser.add_mutually_exclusive_group()
parser_service.add_argument("--get-ports", action="store_true")
parser_service.add_argument("--get-source-ports", action="store_true")
parser_service.add_argument("--get-protocols", action="store_true")
parser_service.add_argument("--add-module", metavar="<module>", action='append')
parser_service.add_argument("--remove-module", metavar="<module>", action='append')
parser_service.add_argument("--query-module", metavar="<module>", action='append')
parser_service.add_argument("--get-modules", action="store_true")
parser_service.add_argument("--set-destination", metavar="<destination>", action='append')
parser_service.add_argument("--get-destination", action="store_true")
parser_service.add_argument("--set-description", metavar="<description>")
parser_service.add_argument("--get-description", action="store_true")
parser_service.add_argument("--set-short", metavar="<description>")
parser_service.add_argument("--get-short", action="store_true")
parser.add_argument("--helper", metavar="<helper>")
parser.add_argument("--family", metavar="<family>")
parser.add_argument("--module", metavar="<module>")
parser_helper = parser.add_mutually_exclusive_group()
#parser_helper.add_argument("--get-ports", action="store_true")
parser_helper.add_argument("--get-helpers", action="store_true")
parser_helper.add_argument("--set-module", metavar="<module>")
parser_helper.add_argument("--get-module", action="store_true")
#parser_helper.add_argument("--query-module", metavar="<module>")
parser_helper.add_argument("--set-family", metavar="<family>|''", nargs="*")
parser_helper.add_argument("--get-family", action="store_true")
parser.add_argument("--direct", action="store_true")
# not possible to have sequences of options here
parser_direct = parser.add_mutually_exclusive_group()
parser_direct.add_argument("--add-passthrough", nargs=argparse.REMAINDER,
metavar=("{ ipv4 | ipv6 | eb }", "<args>"))
parser_direct.add_argument("--remove-passthrough", nargs=argparse.REMAINDER,
metavar=("{ ipv4 | ipv6 | eb }", "<args>"))
parser_direct.add_argument("--query-passthrough", nargs=argparse.REMAINDER,
metavar=("{ ipv4 | ipv6 | eb }", "<args>"))
parser_direct.add_argument("--get-passthroughs", nargs=1,
metavar=("{ ipv4 | ipv6 | eb }"))
parser_direct.add_argument("--get-all-passthroughs", action="store_true")
parser_direct.add_argument("--add-chain", nargs=3,
metavar=("{ ipv4 | ipv6 | eb }", "<table>", "<chain>"))
parser_direct.add_argument("--remove-chain", nargs=3,
metavar=("{ ipv4 | ipv6 | eb }", "<table>", "<chain>"))
parser_direct.add_argument("--query-chain", nargs=3,
metavar=("{ ipv4 | ipv6 | eb }", "<table>", "<chain>"))
parser_direct.add_argument("--get-all-chains", action="store_true")
parser_direct.add_argument("--get-chains", nargs=2,
metavar=("{ ipv4 | ipv6 | eb }", "<table>"))
parser_direct.add_argument("--add-rule", nargs=argparse.REMAINDER,
metavar=("{ ipv4 | ipv6 | eb }", "<table> <chain> <priority> <args>"))
parser_direct.add_argument("--remove-rule", nargs=argparse.REMAINDER,
metavar=("{ ipv4 | ipv6 | eb }", "<table> <chain> <priority> <args>"))
parser_direct.add_argument("--remove-rules", nargs=3,
metavar=("{ ipv4 | ipv6 | eb }", "<table> <chain>"))
parser_direct.add_argument("--query-rule", nargs=argparse.REMAINDER,
metavar=("{ ipv4 | ipv6 | eb }", "<table> <chain> <priority> <args>"))
parser_direct.add_argument("--get-rules", nargs=3,
metavar=("{ ipv4 | ipv6 | eb }", "<table>", "<chain>"))
parser_direct.add_argument("--get-all-rules", action="store_true")
##############################################################################
cmd = FirewallCommand()
def myexcepthook(exctype, value, traceback):
cmd.exception_handler(str(value))
sys.excepthook = myexcepthook
if len(sys.argv) > 1 and \
any('--migrate-system-config-firewall' in arg for arg in sys.argv):
args = sys.argv[1:]
migration_parser = argparse.ArgumentParser(
usage="see firewall-offline-cmd man page", add_help=False)
migration_parser.add_argument("-h", "--help", action="store_true")
migration_parser.add_argument("-v", "--verbose", action="store_true")
migration_parser.add_argument("-q", "--quiet", action="store_true")
migration_parser.add_argument("--migrate-system-config-firewall",
metavar="<file>", action='store')
a,unknown = migration_parser.parse_known_args(args)
cmd.set_quiet(a.quiet)
cmd.set_verbose(a.verbose)
if a.help:
__usage()
sys.exit(0)
else:
assert_root()
if a.quiet:
# it makes no sense to use --quiet with these options
a.quiet = False
cmd.set_quiet(a.quiet)
cmd.fail("-q/--quiet can't be used with this option(s)")
if a.migrate_system_config_firewall:
args = read_sysconfig_args(a.migrate_system_config_firewall)
if not args:
cmd.fail("Opening of '%s' failed, exiting." % \
a.migrate_system_config_firewall)
args += unknown
elif len(sys.argv) > 1:
i = -1
args = sys.argv[1:]
if '--add-passthrough' in args:
i = args.index('--add-passthrough') + 1
elif '--remove-passthrough' in args:
i = args.index('--remove-passthrough') + 1
elif '--query-passthrough' in args:
i = args.index('--query-passthrough') + 1
elif '--add-rule' in args:
i = args.index('--add-rule') + 4
elif '--remove-rule' in args:
i = args.index('--remove-rule') + 4
elif '--query-rule' in args:
i = args.index('--query-rule') + 4
# join <args> into one argument to prevent parser from parsing each iptables
# option, because they can conflict with firewall-cmd options
# # e.g. --delete (iptables) and --delete-* (firewall-cmd)
if (i > -1) and (i < len(args) - 1):
aux_args = args[:]
args = aux_args[:i+1] # all but not <args>
args.append(joinArgs(aux_args[i+1:])) # add <args> as one arg
else:
assert_root()
# migrate configuration from SYSTEM_CONFIG_FIREWALL
args = read_sysconfig_args()
if not args:
cmd.fail("Opening of '%s' failed, exiting." % SYSTEM_CONFIG_FIREWALL)
a = parser.parse_args(args)
options_lokkit = a.enabled or a.disabled or a.addmodule or a.removemodule or \
a.trust or a.masq or a.custom_rules or \
a.service or a.remove_service or a.port or \
a.trust or a.masq or a.forward_port or a.block_icmp
options_standalone = a.help or a.version or \
a.policy_server or a.policy_desktop or \
a.lockdown_on or a.lockdown_off or a.query_lockdown or \
a.get_default_zone or a.set_default_zone or \
a.get_log_denied or a.set_log_denied or \
a.get_automatic_helpers or a.set_automatic_helpers
options_desc_xml_file = a.set_description or a.get_description or \
a.set_short or a.get_short
options_lockdown_whitelist = \
a.list_lockdown_whitelist_commands or a.add_lockdown_whitelist_command or \
a.remove_lockdown_whitelist_command or \
a.query_lockdown_whitelist_command or \
a.list_lockdown_whitelist_contexts or a.add_lockdown_whitelist_context or \
a.remove_lockdown_whitelist_context or \
a.query_lockdown_whitelist_context or \
a.list_lockdown_whitelist_uids or a.add_lockdown_whitelist_uid is not None or \
a.remove_lockdown_whitelist_uid is not None or \
a.query_lockdown_whitelist_uid is not None or \
a.list_lockdown_whitelist_users or a.add_lockdown_whitelist_user or \
a.remove_lockdown_whitelist_user or \
a.query_lockdown_whitelist_user
options_config = a.get_zones or a.get_services or a.get_icmptypes or \
options_lockdown_whitelist or a.list_all_zones or \
a.get_zone_of_interface or a.get_zone_of_source or \
a.info_zone or a.info_icmptype or a.info_service or \
a.info_ipset or a.get_ipsets or a.info_helper or \
a.get_helpers
options_zone_action_action = \
a.add_service or a.remove_service_from_zone or a.query_service or \
a.add_port or a.remove_port or a.query_port or \
a.add_protocol or a.remove_protocol or a.query_protocol or \
a.add_source_port or a.remove_source_port or a.query_source_port or \
a.add_icmp_block or a.remove_icmp_block or a.query_icmp_block or \
a.add_forward_port or a.remove_forward_port or a.query_forward_port
options_zone_interfaces_sources = \
a.list_interfaces or a.change_interface or \
a.add_interface or a.remove_interface or a.query_interface or \
a.list_sources or a.change_source or \
a.add_source or a.remove_source or a.query_source
options_zone_adapt_query = \
a.add_rich_rule or a.remove_rich_rule or a.query_rich_rule or \
a.add_masquerade or a.remove_masquerade or a.query_masquerade or \
a.list_services or a.list_ports or a.list_protocols or \
a.list_source_ports or \
a.list_icmp_blocks or a.list_forward_ports or a.list_rich_rules or \
a.add_icmp_block_inversion or a.remove_icmp_block_inversion or \
a.query_icmp_block_inversion or \
a.list_all or a.get_target or a.set_target
options_zone_ops = options_zone_interfaces_sources or \
options_zone_action_action or options_zone_adapt_query
options_zone = a.zone or options_zone_ops or options_desc_xml_file
options_ipset = a.add_entry or a.remove_entry or a.query_entry or \
a.get_entries or a.add_entries_from_file or \
a.remove_entries_from_file or options_desc_xml_file
options_icmptype = a.add_destination or a.remove_destination or \
a.query_destination or a.get_destinations or \
options_desc_xml_file
options_service = a.add_port or a.remove_port or a.query_port or \
a.get_ports or \
a.add_protocol or a.remove_protocol or a.query_protocol or \
a.get_protocols or \
a.add_source_port or a.remove_source_port or \
a.query_source_port or a.get_source_ports or \
a.add_module or a.remove_module or a.query_module or \
a.get_modules or \
a.set_destination or a.remove_destination or \
a.query_destination or a.get_destinations or \
options_desc_xml_file
options_helper = a.add_port or a.remove_port or a.query_port or \
a.get_ports or a.set_module or a.get_module or \
a.set_family or a.get_family or \
options_desc_xml_file
options_permanent = options_config or options_zone or \
a.new_icmptype or a.delete_icmptype or \
a.new_icmptype_from_file or \
a.load_icmptype_defaults or \
a.new_service or a.delete_service or \
a.new_service_from_file or \
a.load_service_defaults or \
a.new_zone or a.delete_zone or \
a.new_zone_from_file or \
a.load_zone_defaults or \
a.new_helper or a.delete_helper or \
a.new_helper_from_file or \
a.load_helper_defaults or \
a.new_ipset or a.delete_ipset or \
a.new_ipset_from_file or \
a.load_ipset_defaults or \
a.ipset or options_ipset or \
(a.icmptype and options_icmptype) or \
(a.service and options_service) or \
(a.helper and options_helper) or \
a.path_zone or a.path_icmptype or a.path_service or \
a.path_ipset or a.path_helper
options_direct = \
a.add_chain or a.remove_chain or a.query_chain or \
a.get_chains or a.get_all_chains or \
a.add_rule or a.remove_rule or a.remove_rules or a.query_rule or \
a.get_rules or a.get_all_rules or \
a.add_passthrough or a.remove_passthrough or a.query_passthrough or \
a.get_passthroughs or a.get_all_passthroughs
# these are supposed to only write out some output
options_list_get = a.help or a.version or a.list_all or a.list_all_zones or \
a.list_lockdown_whitelist_commands or a.list_lockdown_whitelist_contexts or \
a.list_lockdown_whitelist_uids or a.list_lockdown_whitelist_users or \
a.list_services or a.list_ports or a.list_protocols or a.list_icmp_blocks or \
a.list_forward_ports or a.list_rich_rules or a.list_interfaces or \
a.list_sources or a.get_default_zone or \
a.get_zone_of_interface or a.get_zone_of_source or a.get_zones or \
a.get_services or a.get_icmptypes or a.get_target or \
a.info_zone or a.info_icmptype or a.info_service or \
a.info_ipset or a.get_ipsets or a.get_entries or \
a.info_helper or a.get_helpers or \
a.get_destinations or a.get_description
# Set quiet and verbose
cmd.set_quiet(a.quiet)
cmd.set_verbose(a.verbose)
# Check various impossible combinations of options
if not (options_standalone or options_ipset or \
options_lokkit or \
options_icmptype or options_service or options_helper or \
options_permanent or options_direct or options_desc_xml_file or \
a.check_config):
cmd.fail(parser.format_usage() + "No option specified.")
if options_lokkit and (options_standalone or \
options_permanent or options_direct) and \
not (options_service and a.service):
cmd.fail(parser.format_usage() +
"Can't use lokkit options with other options.")
if options_standalone and (options_permanent or \
options_direct or options_ipset):
cmd.fail(parser.format_usage() +
"Can't use stand-alone options with other options.")
if options_ipset and not options_desc_xml_file and not a.ipset:
cmd.fail(parser.format_usage() + "No ipset specified.")
if (options_icmptype and not a.icmptype) and \
not (options_service and a.service) and not options_desc_xml_file:
cmd.fail(parser.format_usage() + "No icmptype specified.")
if options_service and a.service and len(a.service) > 0:
if len(a.service) > 1:
cmd.fail(parser.format_usage() + "More than one service specified.")
# use the first entry in the array only
a.service = a.service[0]
if (options_helper and not a.helper) and \
not (options_service and a.service) and \
not options_zone and not options_desc_xml_file:
cmd.fail(parser.format_usage() + "No helper specified.")
if options_direct and options_zone:
cmd.fail(parser.format_usage() +
"Can't use 'direct' options with other options.")
if (a.direct and not options_direct) or (options_direct and not a.direct):
cmd.fail(parser.format_usage() +
"Wrong usage of 'direct' options.")
if a.name and not (a.new_zone_from_file or a.new_service_from_file or \
a.new_ipset_from_file or a.new_icmptype_from_file or \
a.new_helper_from_file):
cmd.fail(parser.format_usage() + "Wrong usage of '--name' option.")
if options_config and options_zone:
cmd.fail(parser.format_usage() +
"Wrong usage of --get-zones | --get-services | --get-icmptypes.")
if a.quiet and options_list_get:
# it makes no sense to use --quiet with these options
a.quiet = False
cmd.set_quiet(a.quiet)
cmd.fail("-q/--quiet can't be used with this option(s)")
if a.help:
__usage()
sys.exit(0)
assert_root()
if a.system_config:
config.set_system_config_paths(a.system_config)
if a.default_config:
config.set_default_config_paths(a.default_config)
if a.check_config:
try:
fw = Firewall_test()
fw.start()
check_config(fw)
except FirewallError as error:
cmd.print_and_exit("Configuration error: %s" % error, error.code)
except Exception as msg:
cmd.fail("Configuration error: %s" % msg)
sys.exit(0)
zone = a.zone
fw = Firewall_test()
fw.start()
try:
# Lokkit Compatibility Options
if options_lokkit and not (options_service and a.service):
trusted_zone = "trusted"
default_zone = fw.get_default_zone()
fw_zone = fw.config.get_zone(default_zone)
fw_settings = FirewallClientZoneSettings(
list(fw.config.get_zone_config(fw_zone)))
if a.enabled:
# Enable firewall (default)
os.system("systemctl enable firewalld.service")
if a.disabled:
# Disable firewall
os.system("systemctl disable firewalld.service")
if a.addmodule:
for m in a.addmodule:
cmd.print_msg("Ignoring addmodule '%s'" % m)
if a.removemodule:
for m in a.removemodule:
cmd.print_msg("Ignoring removemodule '%s'" % m)
if a.custom_rules:
for c in a.custom_rules:
cmd.print_msg("Ignoring custom-rule '%s'" % c)
if a.service:
for s in a.service:
cmd.print_msg("Adding service '%s' to default zone." % s)
if not fw_settings.queryService(s):
fw_settings.addService(s)
else:
cmd.print_msg("ALREADY_ENABLED: %s" % s)
if a.remove_service:
for s in a.remove_service:
cmd.print_msg("Removing service '%s' from default zone." % s)
if fw_settings.queryService(s):
fw_settings.removeService(s)
else:
cmd.print_msg("NOT_ENABLED: %s" % s)
if a.port:
for port_proto in a.port:
(port, proto) = parse_port_lokkit(port_proto)
cmd.print_msg("Adding port '%s/%s' to default zone." % (port, proto))
if not fw_settings.queryPort(port, proto):
fw_settings.addPort(port, proto)
else:
cmd.print_msg("ALREADY_ENABLED: %s" % port_proto)
if a.trust:
if default_zone != trusted_zone:
fw_trusted = fw.config.get_zone("trusted")
fw_trusted_settings = FirewallClientZoneSettings(
list(fw.config.get_zone_config(fw_trusted)))
# Bind an interface to the trusted zone
for i in a.trust:
cmd.print_msg("Interface '%s' will be bound to zone '%s'." % \
(i, trusted_zone))
if not fw_trusted_settings.queryInterface(i):
fw_trusted_settings.addInterface(i)
else:
cmd.print_msg("ALREADY_ENABLED: %s" % i)
fw.config.set_zone_config(fw_trusted, fw_trusted_settings.settings)
else:
for i in a.trust:
cmd.print_msg("Interface '%s' will be bound to zone '%s'." % \
(i, trusted_zone))
if not fw_settings.queryInterface(i):
fw_settings.addInterface(i)
else:
cmd.print_msg("ALREADY_ENABLED: %s" % i)
if a.masq:
# Enables masquerading in the default zone, interface argument is ignored
cmd.print_msg("Enabling masquerade for the default zone.")
fw_settings.setMasquerade(True)
if a.forward_port:
for fp in a.forward_port:
(port, protocol, toport, toaddr) = cmd.parse_forward_port(
fp, compat=True)
cmd.print_msg("Adding forward port %s:%s:%s:%s to default zone." % \
(port, protocol, toport, toaddr))
if not fw_settings.queryForwardPort(port, protocol, toport,
toaddr):
fw_settings.addForwardPort(port, protocol, toport, toaddr)
else:
cmd.print_msg("ALREADY_ENABLED: %s" % fp)
if a.block_icmp:
for ib in a.block_icmp:
cmd.print_msg("Adding icmpblock '%s' to default zone." % ib)
if not fw_settings.queryIcmpBlock(ib):
fw_settings.addIcmpBlock(ib)
else:
cmd.print_msg("ALREADY_ENABLED: %s" % ib)
fw.config.set_zone_config(fw_zone, fw_settings.settings)
elif a.version:
cmd.print_and_exit(config.VERSION)
elif a.get_log_denied:
cmd.print_and_exit(fw.get_log_denied())
elif a.set_log_denied:
fw.set_log_denied(a.set_log_denied)
elif a.get_automatic_helpers:
cmd.print_and_exit(fw.get_automatic_helpers())
elif a.set_automatic_helpers:
fw.set_automatic_helpers(a.set_automatic_helpers)
elif a.policy_server:
pk_symlink('server')
elif a.policy_desktop:
pk_symlink('desktop')
# options from firewall-cmd
elif a.get_default_zone:
cmd.print_and_exit(fw.get_default_zone())
elif a.set_default_zone:
fw.set_default_zone(a.set_default_zone)
# lockdown
elif a.lockdown_on:
fw.enable_lockdown()
elif a.lockdown_off:
fw.disable_lockdown()
elif a.query_lockdown:
cmd.print_query_result(fw.policies.query_lockdown())
# zones
elif a.get_zones:
zones = fw.config.get_zones()
cmd.print_and_exit(" ".join(zones))
elif a.new_zone:
fw.config.new_zone(a.new_zone, FirewallClientZoneSettings().settings)
elif a.new_zone_from_file:
filename = os.path.basename(a.new_zone_from_file)
dirname = os.path.dirname(a.new_zone_from_file)
if dirname == "":
dirname = "./"
try:
obj = zone_reader(filename, dirname)
except FirewallError as msg:
cmd.print_and_exit("Failed to load zone file '%s': %s" % \
(a.new_zone_from_file, msg), msg.code)
except IOError as msg:
cmd.fail("Failed to load zone file: %s" % msg)
if a.name:
obj.name = a.name
fw.config.new_zone(obj.name, obj.export_config())
elif a.delete_zone:
obj = fw.config.get_zone(a.delete_zone)
fw.config.remove_zone(obj)
elif a.load_zone_defaults:
obj = fw.config.get_zone(a.load_zone_defaults)
fw.config.load_zone_defaults(obj)
elif a.info_zone:
zone = fw.config.get_zone(a.info_zone)
settings = FirewallClientZoneSettings(
list(fw.config.get_zone_config(zone)))
cmd.print_zone_info(a.info_zone, settings, True)
sys.exit(0)
elif a.path_zone:
obj = fw.config.get_zone(a.path_zone)
cmd.print_and_exit("%s/%s" % (obj.path, obj.filename))
# services
elif a.get_services:
services = fw.config.get_services()
cmd.print_and_exit(" ".join(services))
elif a.new_service:
fw.config.new_service(a.new_service,
FirewallClientServiceSettings().settings)
elif a.new_service_from_file:
filename = os.path.basename(a.new_service_from_file)
dirname = os.path.dirname(a.new_service_from_file)
if dirname == "":
dirname = "./"
try:
obj = service_reader(filename, dirname)
except FirewallError as msg:
cmd.print_and_exit("Failed to load service file '%s': %s" % \
(a.new_service_from_file, msg), msg.code)
except IOError as msg:
cmd.fail("Failed to load service file: %s" % msg)
if a.name:
obj.name = a.name
fw.config.new_service(obj.name, obj.export_config())
elif a.delete_service:
obj = fw.config.get_service(a.delete_service)
fw.config.remove_service(obj)
# remove service from all zones
zones = fw.config.get_zones()
for zone in zones:
_zone = fw.config.get_zone(zone)
_settings = FirewallClientZoneSettings(
list(fw.config.get_zone_config(_zone)))
if _settings.queryService(a.delete_service):
_settings.removeService(a.delete_service)
fw.config.set_zone_config(_zone, _settings.settings)
elif a.load_service_defaults:
obj = fw.config.get_service(a.load_service_defaults)
fw.config.load_service_defaults(obj)
elif a.info_service:
service = fw.config.get_service(a.info_service)
settings = FirewallClientServiceSettings(
list(fw.config.get_service_config(service)))
cmd.print_service_info(a.info_service, settings)
sys.exit(0)
elif a.path_service:
obj = fw.config.get_service(a.path_service)
cmd.print_and_exit("%s/%s" % (obj.path, obj.filename))
# icmptypes
elif a.get_icmptypes:
icmptypes = fw.config.get_icmptypes()
cmd.print_and_exit(" ".join(icmptypes))
elif a.new_icmptype:
fw.config.new_icmptype(a.new_icmptype,
FirewallClientIcmpTypeSettings().settings)
elif a.new_icmptype_from_file:
filename = os.path.basename(a.new_icmptype_from_file)
dirname = os.path.dirname(a.new_icmptype_from_file)
if dirname == "":
dirname = "./"
try:
obj = icmptype_reader(filename, dirname)
except FirewallError as msg:
cmd.print_and_exit("Failed to load icmptype file '%s': %s" % \
(a.new_icmptype_from_file, msg), msg.code)
except IOError as msg:
cmd.fail("Failed to load icmptype file: %s" % msg)
if a.name:
obj.name = a.name
fw.config.new_icmptype(obj.name, obj.export_config())
elif a.delete_icmptype:
obj = fw.config.get_icmptype(a.delete_icmptype)
fw.config.remove_icmptype(obj)
# remove icmpyte from all zones
zones = fw.config.get_zones()
for zone in zones:
_zone = fw.config.get_zone(zone)
_settings = FirewallClientZoneSettings(
list(fw.config.get_zone_config(_zone)))
if _settings.queryIcmpBlock(a.delete_icmptype):
_settings.removeIcmpBlock(a.delete_icmptype)
fw.config.set_zone_config(_zone, _settings.settings)
elif a.load_icmptype_defaults:
obj = fw.config.get_icmptype(a.load_icmptype_defaults)
fw.config.load_icmptype_defaults(obj)
elif a.info_icmptype:
icmptype = fw.config.get_icmptype(a.info_icmptype)
settings = FirewallClientIcmpTypeSettings(
list(fw.config.get_icmptype_config(icmptype)))
cmd.print_icmptype_info(a.info_icmptype, settings)
sys.exit(0)
elif a.path_icmptype:
obj = fw.config.get_icmptype(a.path_icmptype)
cmd.print_and_exit("%s/%s" % (obj.path, obj.filename))
elif a.icmptype and options_icmptype:
icmptype = fw.config.get_icmptype(a.icmptype)
settings = FirewallClientIcmpTypeSettings(
list(fw.config.get_icmptype_config(icmptype)))
if a.add_destination:
cmd.add_sequence(a.add_destination, settings.addDestination,
settings.queryDestination,
cmd.check_destination_ipv, "'%s'")
fw.config.set_icmptype_config(icmptype, settings.settings)
elif a.remove_destination:
cmd.remove_sequence(a.remove_destination,
settings.removeDestination,
settings.queryDestination,
cmd.check_destination_ipv, "'%s'")
fw.config.set_icmptype_config(icmptype, settings.settings)
elif a.query_destination:
cmd.query_sequence(a.query_destination, settings.queryDestination,
cmd.check_destination_ipv , "'%s'")
elif a.get_destinations:
l = settings.getDestinations()
if len(l) == 0:
l = [ "ipv4", "ipv6" ]
cmd.print_and_exit("\n".join(l))
elif a.set_description:
settings.setDescription(a.set_description)
fw.config.set_icmptype_config(icmptype, settings.settings)
elif a.get_description:
cmd.print_and_exit(settings.getDescription())
elif a.set_short:
settings.setShort(a.set_short)
fw.config.set_icmptype_config(icmptype, settings.settings)
elif a.get_short:
cmd.print_and_exit(settings.getShort())
else:
cmd.fail(parser.format_usage() + "Unknown option")
cmd.print_and_exit("success")
elif a.service and options_service:
service = fw.config.get_service(a.service)
settings = FirewallClientServiceSettings(
list(fw.config.get_service_config(service)))
if a.add_port:
cmd.add_sequence(a.add_port, settings.addPort,
settings.queryPort, cmd.parse_port, "%s/%s")
fw.config.set_service_config(service, settings.settings)
elif a.remove_port:
cmd.remove_sequence(a.remove_port, settings.removePort,
settings.queryPort, cmd.parse_port, "%s/%s")
fw.config.set_service_config(service, settings.settings)
elif a.query_port:
cmd.query_sequence(a.query_port, settings.queryPort,
cmd.parse_port, "%s/%s")
elif a.get_ports:
l = settings.getPorts()
cmd.print_and_exit(" ".join(["%s/%s" % (port[0], port[1]) for port in l]))
elif a.add_protocol:
cmd.add_sequence(a.add_protocol, settings.addProtocol,
settings.queryProtocol, None, "'%s'")
fw.config.set_service_config(service, settings.settings)
elif a.remove_protocol:
cmd.remove_sequence(a.remove_protocol, settings.removeProtocol,
settings.queryProtocol, None, "'%s'")
fw.config.set_service_config(service, settings.settings)
elif a.query_protocol:
cmd.query_sequence(a.query_protocol, settings.queryProtocol,
None, "'%s'")
elif a.get_protocols:
l = settings.getProtocols()
cmd.print_and_exit(" ".join(["%s" % protocol for protocol in l]))
elif a.add_source_port:
cmd.add_sequence(a.add_source_port, settings.addSourcePort,
settings.querySourcePort, cmd.parse_port, "%s/%s")
fw.config.set_service_config(service, settings.settings)
elif a.remove_source_port:
cmd.remove_sequence(a.remove_source_port, settings.removeSourcePort,
settings.querySourcePort, cmd.parse_port,
"%s/%s")
fw.config.set_service_config(service, settings.settings)
elif a.query_source_port:
cmd.query_sequence(a.query_source_port, settings.querySourcePort,
cmd.parse_port, "%s/%s")
elif a.get_source_ports:
l = settings.getSourcePorts()
cmd.print_and_exit(" ".join(["%s/%s" % (port[0], port[1]) for port in l]))
elif a.add_module:
cmd.add_sequence(a.add_module, settings.addModule,
settings.queryModule, None, "'%s'")
fw.config.set_service_config(service, settings.settings)
elif a.remove_module:
cmd.remove_sequence(a.remove_module, settings.removeModule,
settings.queryModule, None, "'%s'")
fw.config.set_service_config(service, settings.settings)
elif a.query_module:
cmd.query_sequence(a.query_module, settings.queryModule,
None, "'%s'")
elif a.get_modules:
l = settings.getModules()
cmd.print_and_exit(" ".join(["%s" % module for module in l]))
elif a.set_destination:
cmd.add_sequence(a.set_destination, settings.setDestination,
settings.queryDestination,
cmd.parse_service_destination, "%s:%s")
fw.config.set_service_config(service, settings.settings)
elif a.remove_destination:
# special case for removeDestination: Only ipv, no address
for ipv in a.remove_destination:
cmd.check_destination_ipv(ipv)
if ipv not in settings.getDestinations():
if len(a.remove_destination) > 1:
cmd.print_warning("Warning: NOT_ENABLED: '%s'" % ipv)
else:
code = FirewallError.get_code("NOT_ENABLED")
cmd.print_and_exit("Error: NOT_ENABLED: '%s'" % ipv,
code)
else:
settings.removeDestination(ipv)
fw.config.set_service_config(service, settings.settings)
elif a.query_destination:
cmd.query_sequence(a.query_destination, settings.queryDestination,
cmd.parse_service_destination, "'%s'")
elif a.get_destinations:
l = settings.getDestinations()
cmd.print_and_exit(" ".join(["%s:%s" % (dest[0], dest[1]) for dest in l.items()]))
elif a.set_description:
settings.setDescription(a.set_description)
fw.config.set_service_config(service, settings.settings)
elif a.get_description:
cmd.print_and_exit(settings.getDescription())
elif a.set_short:
settings.setShort(a.set_short)
fw.config.set_service_config(service, settings.settings)
elif a.get_short:
cmd.print_and_exit(settings.getShort())
else:
cmd.fail(parser.format_usage() + "Unknown option")
cmd.print_and_exit("success")
# ipsets
if a.get_ipsets:
ipsets = fw.config.get_ipsets()
cmd.print_and_exit(" ".join(sorted(ipsets)))
elif a.new_ipset:
if not a.type:
cmd.fail(parser.format_usage() + "No type specified.")
settings = FirewallClientIPSetSettings()
settings.setType(a.type)
if a.option:
for opt in a.option:
settings.addOption(*cmd.parse_ipset_option(opt))
fw.config.new_ipset(a.new_ipset, settings.settings)
elif a.new_ipset_from_file:
filename = os.path.basename(a.new_ipset_from_file)
dirname = os.path.dirname(a.new_ipset_from_file)
if dirname == "":
dirname = "./"
try:
obj = ipset_reader(filename, dirname)
except FirewallError as msg:
cmd.print_and_exit("Failed to load ipset file '%s': %s" % \
(a.new_ipset_from_file, msg), msg.code)
except IOError as msg:
cmd.fail("Failed to load ipset file: %s" % msg)
if a.name:
obj.name = a.name
fw.config.new_ipset(obj.name, obj.export_config())
elif a.delete_ipset:
ipset = fw.config.get_ipset(a.delete_ipset)
fw.config.remove_ipset(ipset)
elif a.load_ipset_defaults:
obj = fw.config.get_ipset(a.load_ipset_defaults)
fw.config.load_ipset_defaults(obj)
elif a.info_ipset:
ipset = fw.config.get_ipset(a.info_ipset)
settings = FirewallClientIPSetSettings(
list(fw.config.get_ipset_config(ipset)))
cmd.print_ipset_info(a.info_ipset, settings)
sys.exit(0)
elif a.path_ipset:
obj = fw.config.get_ipset(a.path_ipset)
cmd.print_and_exit("%s/%s" % (obj.path, obj.filename))
elif a.ipset:
if a.add_entry:
ipset = fw.config.get_ipset(a.ipset)
settings = FirewallClientIPSetSettings(
list(fw.config.get_ipset_config(ipset)))
cmd.add_sequence(a.add_entry, settings.addEntry,
settings.queryEntry, None, "'%s'")
fw.config.set_ipset_config(ipset, settings.settings)
elif a.remove_entry:
ipset = fw.config.get_ipset(a.ipset)
settings = FirewallClientIPSetSettings(
list(fw.config.get_ipset_config(ipset)))
cmd.remove_sequence(a.remove_entry, settings.removeEntry,
settings.queryEntry, None, "'%s'")
fw.config.set_ipset_config(ipset, settings.settings)
elif a.query_entry:
ipset = fw.config.get_ipset(a.ipset)
settings = FirewallClientIPSetSettings(
list(fw.config.get_ipset_config(ipset)))
cmd.query_sequence(a.query_entry, settings.queryEntry, None, "'%s'")
elif a.get_entries:
ipset = fw.config.get_ipset(a.ipset)
settings = FirewallClientIPSetSettings(
list(fw.config.get_ipset_config(ipset)))
l = settings.getEntries()
cmd.print_and_exit("\n".join(l))
elif a.add_entries_from_file:
ipset = fw.config.get_ipset(a.ipset)
settings = FirewallClientIPSetSettings(
list(fw.config.get_ipset_config(ipset)))
changed = False
for filename in a.add_entries_from_file:
try:
entries = cmd.get_ipset_entries_from_file(filename)
except IOError as msg:
message = "Failed to read file '%s': %s" % (filename,
msg)
if len(a.add_entries_from_file) > 1:
cmd.print_warning(message)
else:
cmd.print_and_exit(message)
else:
old_entries = settings.getEntries()
entries_set = set()
for entry in old_entries:
entries_set.add(entry)
for entry in entries:
if entry not in entries_set:
old_entries.append(entry)
entries_set.add(entry)
changed = True
else:
cmd.print_if_verbose(
"Warning: ALREADY_ENABLED: %s" % entry)
if changed:
settings.setEntries(old_entries)
if changed:
fw.config.set_ipset_config(ipset, settings.settings)
elif a.remove_entries_from_file:
ipset = fw.config.get_ipset(a.ipset)
settings = FirewallClientIPSetSettings(
list(fw.config.get_ipset_config(ipset)))
changed = False
for filename in a.remove_entries_from_file:
try:
entries = cmd.get_ipset_entries_from_file(filename)
except IOError as msg:
message = "Failed to read file '%s': %s" % (filename, msg)
if len(a.remove_entries_from_file) > 1:
cmd.print_warning(message)
else:
cmd.print_and_exit(message)
else:
old_entries = settings.getEntries()
entries_set = set()
for entry in old_entries:
entries_set.add(entry)
for entry in entries:
if entry in entries_set:
old_entries.remove(entry)
entries_set.discard(entry)
changed = True
else:
cmd.print_if_verbose("Warning: NOT_ENABLED: %s" % \
entry)
if changed:
settings.setEntries(old_entries)
if changed:
fw.config.set_ipset_config(ipset, settings.settings)
elif a.set_description:
ipset = fw.config.get_ipset(a.ipset)
settings = FirewallClientIPSetSettings(
list(fw.config.get_ipset_config(ipset)))
settings.setDescription(a.set_description)
fw.config.set_ipset_config(ipset, settings.settings)
elif a.get_description:
ipset = fw.config.get_ipset(a.ipset)
settings = FirewallClientIPSetSettings(
list(fw.config.get_ipset_config(ipset)))
cmd.print_and_exit(settings.getDescription())
elif a.set_short:
ipset = fw.config.get_ipset(a.ipset)
settings = FirewallClientIPSetSettings(
list(fw.config.get_ipset_config(ipset)))
settings.setShort(a.set_short)
fw.config.set_ipset_config(ipset, settings.settings)
elif a.get_short:
ipset = fw.config.get_ipset(a.ipset)
settings = FirewallClientIPSetSettings(
list(fw.config.get_ipset_config(ipset)))
cmd.print_and_exit(settings.getShort())
else:
cmd.fail(parser.format_usage() + "Unknown option")
cmd.print_and_exit("success")
# helper
elif a.get_helpers:
cmd.print_and_exit(" ".join(sorted(fw.config.get_helpers())))
elif a.new_helper:
if not a.module:
cmd.fail(parser.format_usage() + "No module specified.")
settings = FirewallClientHelperSettings()
settings.setModule(a.module)
if a.family:
settings.setFamily(a.family)
fw.config.new_helper(a.new_helper, settings.settings)
elif a.new_helper_from_file:
filename = os.path.basename(a.new_helper_from_file)
dirname = os.path.dirname(a.new_helper_from_file)
if dirname == "":
dirname = "./"
try:
obj = helper_reader(filename, dirname)
except FirewallError as msg:
cmd.print_and_exit("Failed to load helper file '%s': %s" % \
(a.new_helper_from_file, msg), msg.code)
except IOError as msg:
cmd.fail("Failed to load helper file: %s" % msg)
if a.name:
obj.name = a.name
fw.config.new_helper(obj.name, obj.export_config())
elif a.delete_helper:
obj = fw.config.get_helper(a.delete_helper)
fw.config.remove_helper(obj)
elif a.load_helper_defaults:
obj = fw.config.get_helper(a.load_helper_defaults)
fw.config.load_helper_defaults(obj)
elif a.info_helper:
obj = fw.config.get_helper(a.info_helper)
settings = FirewallClientHelperSettings(
list(fw.config.get_helper_config(obj)))
cmd.print_helper_info(a.info_helper, settings)
sys.exit(0)
elif a.path_helper:
obj = fw.config.get_helper(a.path_helper)
cmd.print_and_exit("%s/%s" % (obj.path, obj.filename))
elif a.helper:
obj = fw.config.get_helper(a.helper)
settings = FirewallClientHelperSettings(
list(fw.config.get_helper_config(obj)))
if a.add_port:
cmd.add_sequence(a.add_port, settings.addPort,
settings.queryPort, cmd.parse_port, "%s/%s")
fw.config.set_helper_config(obj, settings.settings)
elif a.remove_port:
cmd.remove_sequence(a.remove_port, settings.removePort,
settings.queryPort, cmd.parse_port, "%s/%s")
fw.config.set_helper_config(obj, settings.settings)
elif a.query_port:
cmd.query_sequence(a.query_port, settings.queryPort,
cmd.parse_port, "%s/%s")
elif a.get_ports:
l = settings.getPorts()
cmd.print_and_exit(" ".join(["%s/%s" % (port[0], port[1]) for port in l]))
elif a.get_module:
cmd.print_and_exit(settings.getModule())
elif a.set_module:
settings.setModule(cmd.check_module(a.set_module))
fw.config.set_helper_config(obj, settings.settings)
elif a.get_family:
cmd.print_and_exit(settings.getFamily())
elif a.set_family:
settings.setFamily(cmd.check_helper_family(a.set_family[0]))
fw.config.set_helper_config(obj, settings.settings)
elif a.set_description:
settings.setDescription(a.set_description)
fw.config.set_helper_config(obj, settings.settings)
elif a.get_description:
cmd.print_and_exit(settings.getDescription())
elif a.set_short:
settings.setShort(a.set_short)
fw.config.set_helper_config(obj, settings.settings)
elif a.get_short:
cmd.print_and_exit(settings.getShort())
else:
cmd.fail(parser.format_usage() + "Unknown option")
# lockdown whitelist
elif options_lockdown_whitelist:
whitelist = fw.config.get_policies().lockdown_whitelist
# commands
if a.list_lockdown_whitelist_commands:
l = whitelist.get_commands()
cmd.print_and_exit("\n".join(l))
elif a.add_lockdown_whitelist_command:
cmd.add_sequence(a.add_lockdown_whitelist_command,
whitelist.add_command,
whitelist.has_command, None, "'%s'")
elif a.remove_lockdown_whitelist_command:
cmd.remove_sequence(a.remove_lockdown_whitelist_command,
whitelist.remove_command,
whitelist.has_command, None, "'%s'")
elif a.query_lockdown_whitelist_command:
cmd.query_sequence(a.query_lockdown_whitelist_command,
whitelist.has_command, None, "'%s'")
# contexts
elif a.list_lockdown_whitelist_contexts:
l = whitelist.get_contexts()
cmd.print_and_exit("\n".join(l))
elif a.add_lockdown_whitelist_context:
cmd.add_sequence(a.add_lockdown_whitelist_context,
whitelist.add_context,
whitelist.has_context, None, "'%s'")
elif a.remove_lockdown_whitelist_context:
cmd.remove_sequence(a.remove_lockdown_whitelist_context,
whitelist.remove_context,
whitelist.has_context, None, "'%s'")
elif a.query_lockdown_whitelist_context:
cmd.query_sequence(a.query_lockdown_whitelist_context,
whitelist.has_context, None, "'%s'")
# uids
elif a.list_lockdown_whitelist_uids:
l = whitelist.get_uids()
cmd.print_and_exit(" ".join(map(str, l)))
elif a.add_lockdown_whitelist_uid:
cmd.add_sequence(a.add_lockdown_whitelist_uid,
whitelist.add_uid,
whitelist.has_uid, None, "'%s'")
elif a.remove_lockdown_whitelist_uid:
cmd.remove_sequence(a.remove_lockdown_whitelist_uid,
whitelist.remove_uid,
whitelist.has_uid, None, "'%s'")
elif a.query_lockdown_whitelist_uid:
cmd.query_sequence(a.query_lockdown_whitelist_uid,
whitelist.has_uid, None, "'%s'")
# users
elif a.list_lockdown_whitelist_users:
l = whitelist.get_users()
cmd.print_and_exit("\n".join(l))
elif a.add_lockdown_whitelist_user:
cmd.add_sequence(a.add_lockdown_whitelist_user,
whitelist.add_user,
whitelist.has_user, None, "'%s'")
elif a.remove_lockdown_whitelist_user:
cmd.remove_sequence(a.remove_lockdown_whitelist_user,
whitelist.remove_user,
whitelist.has_user, None, "'%s'")
elif a.query_lockdown_whitelist_user:
cmd.query_sequence(a.query_lockdown_whitelist_user,
whitelist.has_user, None, "'%s'")
# apply whitelist changes
whitelist.write()
elif options_direct:
obj = fw.config.get_direct()
if a.add_passthrough:
if len(a.add_passthrough) < 2:
cmd.fail("usage: --direct --add-passthrough { ipv4 | ipv6 | eb } <args>")
cmd.print_msg(
obj.add_passthrough(cmd.check_ipv(a.add_passthrough[0]),
splitArgs(a.add_passthrough[1])))
elif a.remove_passthrough:
if len(a.remove_passthrough) < 2:
cmd.fail("usage: --direct --remove-passthrough { ipv4 | ipv6 | eb } <args>")
obj.remove_passthrough(cmd.check_ipv(a.remove_passthrough[0]),
splitArgs(a.remove_passthrough[1]))
elif a.query_passthrough:
if len(a.query_passthrough) < 2:
cmd.fail("usage: --direct --query-passthrough { ipv4 | ipv6 | eb } <args>")
cmd.print_query_result(
obj.query_passthrough(cmd.check_ipv(a.query_passthrough[0]),
splitArgs(a.query_passthrough[1])))
sys.exit(0)
elif a.get_passthroughs:
rules = obj.get_passthroughs(cmd.check_ipv(a.get_passthroughs[0]))
for rule in rules:
cmd.print_msg(joinArgs(rule))
sys.exit(0)
elif a.get_all_passthroughs:
rules = obj.get_all_passthroughs()
for ipv in rules:
for rule in rules[ipv]:
cmd.print_msg("%s %s" % (ipv, joinArgs(rule)))
sys.exit(0)
elif a.add_chain:
obj.add_chain(cmd.check_ipv(a.add_chain[0]),
a.add_chain[1], a.add_chain[2])
elif a.remove_chain:
obj.remove_chain(cmd.check_ipv(a.remove_chain[0]),
a.remove_chain[1], a.remove_chain[2])
elif a.query_chain:
cmd.print_query_result(
obj.query_chain(cmd.check_ipv(a.query_chain[0]),
a.query_chain[1], a.query_chain[2]))
sys.exit(0)
elif a.get_chains:
cmd.print_and_exit(
" ".join(obj.get_chains(cmd.check_ipv(a.get_chains[0]),
a.get_chains[1])))
sys.exit(0)
elif a.get_all_chains:
chains = obj.get_all_chains()
for (ipv, table) in chains:
for chain in chains[(ipv, table)]:
cmd.print_msg("%s %s %s" % (ipv, table, chain))
sys.exit(0)
elif a.add_rule:
if len(a.add_rule) < 5:
cmd.fail("usage: --direct --add-rule { ipv4 | ipv6 | eb } <table> <chain> <priority> <args>")
try:
priority = int(a.add_rule[3])
except ValueError:
cmd.fail("wrong priority\nusage: --direct --add-rule { ipv4 | ipv6 | eb } <table> <chain> <priority> <args>")
obj.add_rule(cmd.check_ipv(a.add_rule[0]), a.add_rule[1],
a.add_rule[2], priority, splitArgs(a.add_rule[4]))
elif a.remove_rule:
if len(a.remove_rule) < 5:
cmd.fail("usage: --direct --remove-rule { ipv4 | ipv6 | eb } <table> <chain> <priority> <args>")
try:
priority = int(a.remove_rule[3])
except ValueError:
cmd.fail("usage: --direct --remove-rule { ipv4 | ipv6 | eb } <table> <chain> <priority> <args>")
obj.remove_rule(cmd.check_ipv(a.remove_rule[0]), a.remove_rule[1],
a.remove_rule[2], priority, splitArgs(a.remove_rule[4]))
elif a.remove_rules:
if len(a.remove_rules) < 3:
cmd.fail("usage: --direct --remove-rules { ipv4 | ipv6 | eb } <table> <chain>")
obj.remove_rules(cmd.check_ipv(a.remove_rules[0]),
a.remove_rules[1], a.remove_rules[2])
elif a.query_rule:
if len(a.query_rule) < 5:
cmd.fail("usage: --direct --query-rule { ipv4 | ipv6 | eb } <table> <chain> <priority> <args>")
try:
priority = int(a.query_rule[3])
except ValueError:
cmd.fail("usage: --direct --query-rule { ipv4 | ipv6 | eb } <table> <chain> <priority> <args>")
cmd.print_query_result(
obj.query_rule(cmd.check_ipv(a.query_rule[0]),
a.query_rule[1], a.query_rule[2],
priority, splitArgs(a.query_rule[4])))
sys.exit(0)
elif a.get_rules:
rules = obj.get_rules(cmd.check_ipv(a.get_rules[0]),
a.get_rules[1], a.get_rules[2])
for (priority, rule) in rules:
cmd.print_msg("%d %s" % (priority, joinArgs(rule)))
sys.exit(0)
elif a.get_all_rules:
rules = obj.get_all_rules()
for (ipv, table, chain) in rules:
for (priority, rule) in rules[(ipv, table, chain)]:
cmd.print_msg("%s %s %s %d %s" % \
(ipv, table, chain, priority,
joinArgs(rule)))
sys.exit(0)
obj.write()
else:
if zone == "":
zone = fw.get_default_zone()
fw_zone = fw.config.get_zone(zone)
fw_settings = FirewallClientZoneSettings(
list(fw.config.get_zone_config(fw_zone))) # convert to list, for setMasquerade
# interface
if a.list_interfaces:
l = fw_settings.getInterfaces()
cmd.print_and_exit(" ".join(l))
elif a.get_zone_of_interface:
for interface in a.get_zone_of_interface:
ret = [ ]
for zone in fw.config.get_zones():
obj = fw.config.get_zone(zone)
if interface in obj.interfaces:
ret.append(obj.name)
if len(ret) > 1:
# Even it shouldn't happen, it's actually possible that
# the same interface is in several zone XML files
cmd.print_warning(" ".join(ret) + " (ERROR: interface '%s' is in %s zone XML files, can be only in one)" % (interface, len(ret)))
if len(ret) == 1:
if len(a.get_zone_of_interface) > 1:
cmd.print_warning("%s: %s" % (interface, ret[0]))
else:
cmd.print_and_exit(ret[0])
else:
if len(a.get_zone_of_interface) > 1:
cmd.print_warning("%s: no zone" % interface)
else:
cmd.print_and_exit("no zone", 2)
elif a.change_interface:
for interface in a.change_interface:
for old_zone in fw.config.get_zones():
old_zone_obj = fw.config.get_zone(old_zone)
if interface in old_zone_obj.interfaces:
if old_zone_obj.name != zone:
old_zone_settings = FirewallClientZoneSettings(
fw.config.get_zone_config(old_zone_obj))
old_zone_settings.removeInterface(interface) # remove from old
fw.config.set_zone_config(old_zone_obj, old_zone_settings.settings)
fw_settings.addInterface(interface) # add to new
elif a.add_interface:
cmd.add_sequence(a.add_interface, fw_settings.addInterface,
fw_settings.queryInterface, None, "'%s'")
elif a.remove_interface:
cmd.remove_sequence(a.remove_interface, fw_settings.removeInterface,
fw_settings.queryInterface, None, "'%s'")
elif a.query_interface:
cmd.query_sequence(a.query_interface, fw_settings.queryInterface,
None, "'%s'")
# source
if a.list_sources:
sources = fw_settings.getSources()
cmd.print_and_exit(" ".join(sources))
elif a.get_zone_of_source:
for source in a.get_zone_of_source:
ret = [ ]
for zone in fw.config.get_zones():
obj = fw.config.get_zone(zone)
if source in obj.sources:
ret.append(obj.name)
if len(ret) > 1:
# Even it shouldn't happen, it's actually possible that
# the same source is in several zone XML files
cmd.print_warning(" ".join(ret) + " (ERROR: source '%s' is in %s zone XML files, can be only in one)" % (source, len(ret)))
if len(ret) == 1:
if len(a.get_zone_of_source) > 1:
cmd.print_warning("%s: %s" % (source, ret[0]))
else:
cmd.print_and_exit(ret[0])
else:
if len(a.get_zone_of_source) > 1:
cmd.print_warning("%s: no zone" % source)
else:
cmd.print_and_exit("no zone", 2)
elif a.change_source:
for source in a.change_source:
for old_zone in fw.config.get_zones():
old_zone_obj = fw.config.get_zone(old_zone)
if source in old_zone_obj.sources:
if old_zone_obj.name != zone:
old_zone_settings = FirewallClientZoneSettings(
fw.config.get_zone_config(old_zone_obj))
old_zone_settings.removeSource(source) # remove from old
fw.config.set_zone_config(old_zone_obj, old_zone_settings.settings)
fw_settings.addSource(source) # add to new
elif a.add_source:
cmd.add_sequence(a.add_source, fw_settings.addSource,
fw_settings.querySource, None, "'%s'")
elif a.remove_source:
cmd.remove_sequence(a.remove_source, fw_settings.removeSource,
fw_settings.querySource, None, "'%s'")
elif a.query_source:
cmd.query_sequence(a.query_source, fw_settings.querySource,
None, "'%s'")
# rich rules
if a.list_rich_rules:
l = fw_settings.getRichRules()
cmd.print_and_exit("\n".join(l))
elif a.add_rich_rule:
cmd.add_sequence(a.add_rich_rule, fw_settings.addRichRule,
fw_settings.queryRichRule, None, "'%s'")
elif a.remove_rich_rule:
cmd.remove_sequence(a.remove_rich_rule, fw_settings.removeRichRule,
fw_settings.queryRichRule, None, "'%s'")
elif a.query_rich_rule:
cmd.query_sequence(a.query_rich_rule, fw_settings.queryRichRule,
None, "'%s'")
# service
if a.list_services:
l = fw_settings.getServices()
cmd.print_and_exit(" ".join(sorted(l)))
elif a.add_service:
cmd.add_sequence(a.add_service, fw_settings.addService,
fw_settings.queryService, None, "'%s'")
elif a.remove_service_from_zone:
cmd.remove_sequence(a.remove_service_from_zone,
fw_settings.removeService,
fw_settings.queryService, None, "'%s'")
elif a.query_service:
cmd.query_sequence(a.query_service, fw_settings.queryService,
None, "'%s'")
# port
elif a.list_ports:
l = fw_settings.getPorts()
cmd.print_and_exit(" ".join(["%s/%s" % (port[0], port[1]) for port in l]))
elif a.add_port:
cmd.add_sequence(a.add_port, fw_settings.addPort,
fw_settings.queryPort, cmd.parse_port, "%s/%s")
elif a.remove_port:
cmd.remove_sequence(a.remove_port, fw_settings.removePort,
fw_settings.queryPort, cmd.parse_port, "%s/%s")
elif a.query_port:
cmd.query_sequence(a.query_port, fw_settings.queryPort,
cmd.parse_port, "%s/%s")
# protocol
elif a.list_protocols:
l = fw_settings.getProtocols()
cmd.print_and_exit(" ".join(sorted(l)))
elif a.add_protocol:
cmd.add_sequence(a.add_protocol, fw_settings.addProtocol,
fw_settings.queryProtocol, None, "'%s'")
elif a.remove_protocol:
cmd.remove_sequence(a.remove_protocol, fw_settings.removeProtocol,
fw_settings.queryProtocol, None, "'%s'")
elif a.query_protocol:
cmd.query_sequence(a.query_protocol, fw_settings.queryProtocol,
None, "'%s'")
# source port
elif a.list_source_ports:
l = fw_settings.getSourcePorts()
cmd.print_and_exit(" ".join(["%s/%s" % (port[0], port[1]) for port in l]))
elif a.add_source_port:
cmd.add_sequence(a.add_source_port, fw_settings.addSourcePort,
fw_settings.querySourcePort, cmd.parse_port,
"%s/%s")
elif a.remove_source_port:
cmd.remove_sequence(a.remove_source_port,
fw_settings.removeSourcePort,
fw_settings.querySourcePort, cmd.parse_port,
"%s/%s")
elif a.query_source_port:
cmd.query_sequence(a.query_source_port, fw_settings.querySourcePort,
cmd.parse_port, "%s/%s")
# masquerade
elif a.add_masquerade:
fw_settings.setMasquerade(True)
elif a.remove_masquerade:
fw_settings.setMasquerade(False)
elif a.query_masquerade:
cmd.print_query_result(fw_settings.getMasquerade())
# forward port
elif a.list_forward_ports:
l = fw_settings.getForwardPorts()
cmd.print_and_exit("\n".join(["port=%s:proto=%s:toport=%s:toaddr=%s" % (_port, _protocol, _toport, _toaddr) for (_port, _protocol, _toport, _toaddr) in l]))
elif a.add_forward_port:
cmd.add_sequence(a.add_forward_port, fw_settings.addForwardPort,
fw_settings.queryForwardPort,
cmd.parse_forward_port,
"port=%s:proto=%s:toport=%s:toaddr=%s")
elif a.remove_forward_port:
cmd.remove_sequence(a.remove_forward_port,
fw_settings.removeForwardPort,
fw_settings.queryForwardPort,
cmd.parse_forward_port,
"port=%s:proto=%s:toport=%s:toaddr=%s")
elif a.query_forward_port:
cmd.query_sequence(a.query_forward_port,
fw_settings.queryForwardPort,
cmd.parse_forward_port,
"port=%s:proto=%s:toport=%s:toaddr=%s")
# block icmp
elif a.list_icmp_blocks:
l = fw_settings.getIcmpBlocks()
cmd.print_and_exit(" ".join(l))
elif a.add_icmp_block:
cmd.add_sequence(a.add_icmp_block, fw_settings.addIcmpBlock,
fw_settings.queryIcmpBlock, None, "'%s'")
elif a.remove_icmp_block:
cmd.remove_sequence(a.remove_icmp_block,
fw_settings.removeIcmpBlock,
fw_settings.queryIcmpBlock, None, "'%s'")
elif a.query_icmp_block:
cmd.query_sequence(a.query_icmp_block, fw_settings.queryIcmpBlock,
None, "'%s'")
# icmp block inversion
elif a.add_icmp_block_inversion:
fw_settings.addIcmpBlockInversion()
elif a.remove_icmp_block_inversion:
fw_settings.removeIcmpBlockInversion()
elif a.query_icmp_block_inversion:
cmd.print_query_result(fw_settings.queryIcmpBlockInversion())
# zone target
elif a.get_target:
cmd.print_and_exit(fw_settings.getTarget())
elif a.set_target:
fw_settings.setTarget(a.set_target)
# list all zone settings
elif a.list_all:
cmd.print_zone_info(zone if zone else fw.get_default_zone(),
fw_settings)
sys.exit(0)
# list everything
elif a.list_all_zones:
zones = fw.config.get_zones()
for zone in zones:
fw_zone = fw.config.get_zone(zone)
fw_settings = FirewallClientZoneSettings(list(fw.config.get_zone_config(fw_zone)))
cmd.print_zone_info(zone, fw_settings)
cmd.print_msg("")
sys.exit(0)
elif a.set_description:
fw_settings.setDescription(a.set_description)
elif a.get_description:
cmd.print_and_exit(fw_settings.getDescription())
elif a.set_short:
fw_settings.setShort(a.set_short)
elif a.get_short:
cmd.print_and_exit(fw_settings.getShort())
fw.config.set_zone_config(fw_zone, fw_settings.settings)
cmd.print_and_exit("success")
except FirewallError as msg:
cmd.print_and_exit("%s" % msg, msg.code)
except Exception as msg:
cmd.fail("%s" % msg)
else:
cmd.print_and_exit("success")
| N4m3 |
5!z3 |
L45t M0d!f!3d |
0wn3r / Gr0up |
P3Rm!55!0n5 |
0pt!0n5 |
| .. |
-- |
December 21 2023 09:06:33 |
0 / 0 |
0555 |
|
| | | | | |
| [ |
40.516 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| a2p |
105.32 KB |
February 02 2021 16:33:17 |
0 / 0 |
0755 |
|
| ab |
51.406 KB |
May 30 2023 14:01:58 |
0 / 0 |
0755 |
|
| addr2line |
28.422 KB |
November 01 2021 15:39:15 |
0 / 0 |
0755 |
|
| alias |
0.028 KB |
November 24 2021 16:33:26 |
0 / 0 |
0755 |
|
| apropos |
45.492 KB |
October 30 2018 20:26:36 |
0 / 0 |
0755 |
|
| ar |
61.219 KB |
November 01 2021 15:39:15 |
0 / 0 |
0755 |
|
| arch |
32.305 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| as |
377.359 KB |
November 01 2021 15:39:15 |
0 / 0 |
0755 |
|
| aserver |
28.211 KB |
August 08 2019 12:00:59 |
0 / 0 |
0755 |
|
| aulast |
15.484 KB |
August 08 2019 12:06:06 |
0 / 0 |
0755 |
|
| aulastlog |
11.352 KB |
August 08 2019 12:06:06 |
0 / 0 |
0755 |
|
| ausyscall |
11.18 KB |
August 08 2019 12:06:06 |
0 / 0 |
0755 |
|
| auvirt |
31.93 KB |
August 08 2019 12:06:06 |
0 / 0 |
0755 |
|
| awk |
418.539 KB |
June 28 2017 21:52:48 |
0 / 0 |
0755 |
|
| base64 |
36.484 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| basename |
28.352 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| bash |
941.93 KB |
November 24 2021 16:33:27 |
0 / 0 |
0755 |
|
| bashbug |
6.801 KB |
November 24 2021 16:33:21 |
0 / 0 |
0755 |
|
| bashbug-64 |
6.801 KB |
November 24 2021 16:33:21 |
0 / 0 |
0755 |
|
| bc |
81.469 KB |
June 09 2014 19:51:54 |
0 / 0 |
0755 |
|
| bg |
0.025 KB |
November 24 2021 16:33:26 |
0 / 0 |
0755 |
|
| bond2team |
22.739 KB |
December 09 2018 08:57:18 |
0 / 0 |
0755 |
|
| bootctl |
68.992 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| busctl |
403.203 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| c++filt |
27.922 KB |
November 01 2021 15:39:15 |
0 / 0 |
0755 |
|
| c2ph |
35.749 KB |
February 02 2021 16:32:27 |
0 / 0 |
0755 |
|
| c89 |
0.219 KB |
September 30 2020 02:17:38 |
0 / 0 |
0755 |
|
| c99 |
0.21 KB |
September 30 2020 02:17:38 |
0 / 0 |
0755 |
|
| ca-legacy |
1.6 KB |
January 13 2022 17:12:22 |
0 / 0 |
0755 |
|
| cal |
36.805 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| captoinfo |
64.258 KB |
September 06 2017 22:08:20 |
0 / 0 |
0755 |
|
| cat |
52.813 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| catchsegv |
3.258 KB |
June 04 2024 14:43:46 |
0 / 0 |
0755 |
|
| catman |
36.75 KB |
October 30 2018 20:26:36 |
0 / 0 |
0755 |
|
| cc |
750.594 KB |
September 30 2020 02:18:23 |
0 / 0 |
0755 |
|
| cd |
0.025 KB |
November 24 2021 16:33:26 |
0 / 0 |
0755 |
|
| centrino-decode |
6.133 KB |
June 04 2024 14:55:42 |
0 / 0 |
0755 |
|
| certutil |
179.75 KB |
October 19 2023 13:17:47 |
0 / 0 |
0755 |
|
| chacl |
15.266 KB |
April 01 2020 02:16:13 |
0 / 0 |
0755 |
|
| chage |
72.156 KB |
August 09 2019 02:51:01 |
0 / 0 |
4755 |
|
| chardetect |
0.3 KB |
August 09 2019 02:04:55 |
0 / 0 |
0755 |
|
| chattr |
11.266 KB |
September 30 2020 15:58:29 |
0 / 0 |
0755 |
|
| chcon |
61.461 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| chfn |
23.406 KB |
February 02 2021 16:31:53 |
0 / 0 |
4711 |
|
| chgrp |
61.32 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| chmem |
40.43 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| chmod |
57.211 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| chown |
61.359 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| chrt |
32.172 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| chsh |
23.32 KB |
February 02 2021 16:31:53 |
0 / 0 |
4711 |
|
| chvt |
11.141 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| cksum |
32.375 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| clear |
7.023 KB |
September 06 2017 22:08:20 |
0 / 0 |
0755 |
|
| cmp |
44.141 KB |
March 07 2023 14:48:24 |
0 / 0 |
0755 |
|
| cmsutil |
110.594 KB |
October 19 2023 13:17:47 |
0 / 0 |
0755 |
|
| col |
23.883 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| colcrt |
11.289 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| colrm |
23.773 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| column |
27.992 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| comm |
36.547 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| command |
0.03 KB |
November 24 2021 16:33:26 |
0 / 0 |
0755 |
|
| coredumpctl |
154.516 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| cp |
151.547 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| cpio |
142.547 KB |
October 13 2020 15:47:58 |
0 / 0 |
0755 |
|
| cpp |
754.578 KB |
September 30 2020 02:18:22 |
0 / 0 |
0755 |
|
| cpupower |
66.336 KB |
June 04 2024 14:55:43 |
0 / 0 |
0755 |
|
| crlutil |
127 KB |
October 19 2023 13:17:47 |
0 / 0 |
0755 |
|
| crontab |
56.227 KB |
May 16 2023 14:28:22 |
0 / 0 |
4755 |
|
| csplit |
48.82 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| csslint-0.6 |
19.555 KB |
September 30 2020 16:45:45 |
0 / 0 |
0755 |
|
| curl |
152.992 KB |
December 13 2023 16:08:32 |
0 / 0 |
0755 |
|
| cut |
40.609 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| cvtsudoers |
241.703 KB |
January 25 2023 16:36:33 |
0 / 0 |
0755 |
|
| date |
60.742 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| db_archive |
11.227 KB |
August 09 2019 00:18:22 |
0 / 0 |
0755 |
|
| db_checkpoint |
11.305 KB |
August 09 2019 00:18:22 |
0 / 0 |
0755 |
|
| db_deadlock |
11.313 KB |
August 09 2019 00:18:22 |
0 / 0 |
0755 |
|
| db_dump |
15.328 KB |
August 09 2019 00:18:22 |
0 / 0 |
0755 |
|
| db_dump185 |
64.445 KB |
August 09 2019 00:18:22 |
0 / 0 |
0755 |
|
| db_hotbackup |
15.344 KB |
August 09 2019 00:18:22 |
0 / 0 |
0755 |
|
| db_load |
27.508 KB |
August 09 2019 00:18:22 |
0 / 0 |
0755 |
|
| db_log_verify |
15.336 KB |
August 09 2019 00:18:22 |
0 / 0 |
0755 |
|
| db_printlog |
32.258 KB |
August 09 2019 00:18:22 |
0 / 0 |
0755 |
|
| db_recover |
11.328 KB |
August 09 2019 00:18:22 |
0 / 0 |
0755 |
|
| db_replicate |
15.344 KB |
August 09 2019 00:18:22 |
0 / 0 |
0755 |
|
| db_stat |
15.258 KB |
August 09 2019 00:18:22 |
0 / 0 |
0755 |
|
| db_tuner |
19.328 KB |
August 09 2019 00:18:22 |
0 / 0 |
0755 |
|
| db_upgrade |
11.234 KB |
August 09 2019 00:18:22 |
0 / 0 |
0755 |
|
| db_verify |
11.25 KB |
August 09 2019 00:18:22 |
0 / 0 |
0755 |
|
| dbus-binding-tool |
94.492 KB |
June 10 2014 04:06:04 |
0 / 0 |
0755 |
|
| dbus-cleanup-sockets |
11 KB |
September 30 2020 15:54:54 |
0 / 0 |
0755 |
|
| dbus-daemon |
218 KB |
September 30 2020 15:54:54 |
0 / 0 |
0755 |
|
| dbus-monitor |
23.125 KB |
September 30 2020 15:54:54 |
0 / 0 |
0755 |
|
| dbus-run-session |
14.969 KB |
September 30 2020 15:54:54 |
0 / 0 |
0755 |
|
| dbus-send |
27.07 KB |
September 30 2020 15:54:54 |
0 / 0 |
0755 |
|
| dbus-test-tool |
23.133 KB |
September 30 2020 15:54:54 |
0 / 0 |
0755 |
|
| dbus-update-activation-environment |
15.023 KB |
September 30 2020 15:54:54 |
0 / 0 |
0755 |
|
| dbus-uuidgen |
10.984 KB |
September 30 2020 15:54:54 |
0 / 0 |
0755 |
|
| dc |
44.328 KB |
June 09 2014 19:51:54 |
0 / 0 |
0755 |
|
| dd |
73.141 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| deallocvt |
11.156 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| debuginfo-install |
7.882 KB |
May 12 2020 16:27:40 |
0 / 0 |
0755 |
|
| df |
102.555 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| dgawk |
502.117 KB |
June 28 2017 21:52:48 |
0 / 0 |
0755 |
|
| diff |
195.461 KB |
March 07 2023 14:48:24 |
0 / 0 |
0755 |
|
| diff3 |
60.648 KB |
March 07 2023 14:48:24 |
0 / 0 |
0755 |
|
| dir |
114.852 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| dircolors |
40.438 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| dirname |
28.313 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| dmesg |
48.516 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| dnsdomainname |
15.414 KB |
October 18 2019 16:02:04 |
0 / 0 |
0755 |
|
| domainname |
15.414 KB |
October 18 2019 16:02:04 |
0 / 0 |
0755 |
|
| dracut |
55.827 KB |
September 30 2020 15:57:57 |
0 / 0 |
0755 |
|
| du |
110.336 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| dumpkeys |
77.508 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| dwp |
3.03 MB |
November 01 2021 15:39:15 |
0 / 0 |
0755 |
|
| echo |
32.313 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| egrep |
0.283 KB |
August 03 2017 06:58:17 |
0 / 0 |
0755 |
|
| eject |
48.813 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| elfedit |
32.18 KB |
November 01 2021 15:39:15 |
0 / 0 |
0755 |
|
| env |
28.328 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| envsubst |
36.008 KB |
April 01 2020 02:43:18 |
0 / 0 |
0755 |
|
| eqn |
144.414 KB |
June 09 2014 20:17:22 |
0 / 0 |
0755 |
|
| ex |
906.445 KB |
December 15 2020 16:44:13 |
0 / 0 |
0755 |
|
| expand |
32.477 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| expr |
36.531 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| factor |
93.289 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| fallocate |
27.844 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| false |
28.25 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| fc |
0.025 KB |
November 24 2021 16:33:26 |
0 / 0 |
0755 |
|
| fc-cache |
0.129 KB |
October 30 2018 15:13:26 |
0 / 0 |
0755 |
|
| fc-cache-64 |
15.453 KB |
October 30 2018 18:34:13 |
0 / 0 |
0755 |
|
| fc-cat |
15.398 KB |
October 30 2018 18:34:13 |
0 / 0 |
0755 |
|
| fc-conflist |
11.195 KB |
October 30 2018 18:34:13 |
0 / 0 |
0755 |
|
| fc-list |
11.258 KB |
October 30 2018 18:34:13 |
0 / 0 |
0755 |
|
| fc-match |
11.32 KB |
October 30 2018 18:34:13 |
0 / 0 |
0755 |
|
| fc-pattern |
11.258 KB |
October 30 2018 18:34:13 |
0 / 0 |
0755 |
|
| fc-query |
11.227 KB |
October 30 2018 18:34:13 |
0 / 0 |
0755 |
|
| fc-scan |
11.266 KB |
October 30 2018 18:34:13 |
0 / 0 |
0755 |
|
| fc-validate |
11.266 KB |
October 30 2018 18:34:13 |
0 / 0 |
0755 |
|
| fg |
0.025 KB |
November 24 2021 16:33:26 |
0 / 0 |
0755 |
|
| fgconsole |
11.164 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| fgrep |
0.283 KB |
August 03 2017 06:58:17 |
0 / 0 |
0755 |
|
| file |
19.305 KB |
September 30 2020 16:08:22 |
0 / 0 |
0755 |
|
| find |
194.633 KB |
October 30 2018 16:42:55 |
0 / 0 |
0755 |
|
| find-repos-of-install |
4.269 KB |
May 12 2020 16:27:40 |
0 / 0 |
0755 |
|
| find2perl |
23.061 KB |
February 02 2021 16:32:27 |
0 / 0 |
0755 |
|
| findmnt |
58.375 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| fipscheck |
15.367 KB |
August 02 2017 12:47:49 |
0 / 0 |
0755 |
|
| fipshmac |
11.305 KB |
August 02 2017 12:47:49 |
0 / 0 |
0755 |
|
| firewall-cmd |
113.477 KB |
April 28 2021 13:31:12 |
0 / 0 |
0755 |
|
| firewall-offline-cmd |
101.179 KB |
April 28 2021 13:31:12 |
0 / 0 |
0755 |
|
| flock |
23.875 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| fmt |
36.477 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| fold |
36.461 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| free |
19.328 KB |
September 30 2020 17:21:37 |
0 / 0 |
0755 |
|
| fribidi |
16.094 KB |
December 23 2019 15:39:41 |
0 / 0 |
0755 |
|
| gapplication |
19.477 KB |
June 09 2021 16:12:02 |
0 / 0 |
0755 |
|
| gawk |
418.539 KB |
June 28 2017 21:52:48 |
0 / 0 |
0755 |
|
| gcc |
750.594 KB |
September 30 2020 02:18:23 |
0 / 0 |
0755 |
|
| gcc-ar |
26.453 KB |
September 30 2020 02:18:23 |
0 / 0 |
0755 |
|
| gcc-nm |
26.453 KB |
September 30 2020 02:18:24 |
0 / 0 |
0755 |
|
| gcc-ranlib |
26.453 KB |
September 30 2020 02:18:22 |
0 / 0 |
0755 |
|
| gcov |
307.453 KB |
September 30 2020 02:18:21 |
0 / 0 |
0755 |
|
| gdbus |
40.172 KB |
June 09 2021 16:12:02 |
0 / 0 |
0755 |
|
| gencat |
22.109 KB |
June 04 2024 15:05:31 |
0 / 0 |
0755 |
|
| genl-ctrl-list |
11.273 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| geqn |
144.414 KB |
June 09 2014 20:17:22 |
0 / 0 |
0755 |
|
| getconf |
22.016 KB |
June 04 2024 15:05:30 |
0 / 0 |
0755 |
|
| getent |
26.391 KB |
June 04 2024 15:05:30 |
0 / 0 |
0755 |
|
| getfacl |
24.289 KB |
April 01 2020 02:16:13 |
0 / 0 |
0755 |
|
| getkeycodes |
11.156 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| getopt |
15.383 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| getopts |
0.03 KB |
November 24 2021 16:33:26 |
0 / 0 |
0755 |
|
| gettext |
35.938 KB |
April 01 2020 02:43:18 |
0 / 0 |
0755 |
|
| gettext.sh |
4.521 KB |
April 01 2020 02:41:05 |
0 / 0 |
0755 |
|
| gio |
73.414 KB |
June 09 2021 16:12:02 |
0 / 0 |
0755 |
|
| gio-querymodules-64 |
11.313 KB |
June 09 2021 16:12:02 |
0 / 0 |
0755 |
|
| glib-compile-schemas |
44.375 KB |
June 09 2021 16:12:02 |
0 / 0 |
0755 |
|
| gmake |
178.469 KB |
August 09 2019 00:46:49 |
0 / 0 |
0755 |
|
| gneqn |
0.265 KB |
June 09 2014 20:17:13 |
0 / 0 |
0755 |
|
| gnroff |
3.313 KB |
June 09 2014 20:17:15 |
0 / 0 |
0755 |
|
| gpasswd |
76.57 KB |
August 09 2019 02:51:01 |
0 / 0 |
4755 |
|
| gpg |
732.398 KB |
July 13 2018 13:05:25 |
0 / 0 |
0755 |
|
| gpg-agent |
289.742 KB |
July 13 2018 13:05:25 |
0 / 0 |
0755 |
|
| gpg-connect-agent |
152.688 KB |
July 13 2018 13:05:25 |
0 / 0 |
0755 |
|
| gpg-error |
23.18 KB |
June 10 2014 08:46:48 |
0 / 0 |
0755 |
|
| gpg-zip |
3.229 KB |
July 13 2018 13:05:12 |
0 / 0 |
0755 |
|
| gpg2 |
732.398 KB |
July 13 2018 13:05:25 |
0 / 0 |
0755 |
|
| gpgconf |
140.313 KB |
July 13 2018 13:05:25 |
0 / 0 |
0755 |
|
| gpgparsemail |
23.703 KB |
July 13 2018 13:05:25 |
0 / 0 |
0755 |
|
| gpgsplit |
48.883 KB |
July 13 2018 13:05:25 |
0 / 0 |
0755 |
|
| gpgv |
345.383 KB |
July 13 2018 13:05:25 |
0 / 0 |
0755 |
|
| gpgv2 |
345.383 KB |
July 13 2018 13:05:25 |
0 / 0 |
0755 |
|
| gpic |
180.406 KB |
June 09 2014 20:17:22 |
0 / 0 |
0755 |
|
| gprof |
98.414 KB |
November 01 2021 15:39:15 |
0 / 0 |
0755 |
|
| gr2fonttest |
23.656 KB |
July 21 2017 10:40:25 |
0 / 0 |
0755 |
|
| grep |
155.297 KB |
August 03 2017 06:58:18 |
0 / 0 |
0755 |
|
| groff |
81.625 KB |
June 09 2014 20:17:22 |
0 / 0 |
0755 |
|
| grops |
140.852 KB |
June 09 2014 20:17:22 |
0 / 0 |
0755 |
|
| grotty |
98.586 KB |
June 09 2014 20:17:22 |
0 / 0 |
0755 |
|
| groups |
32.414 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| grub2-editenv |
396.07 KB |
April 30 2024 19:38:58 |
0 / 0 |
0755 |
|
| grub2-file |
834.336 KB |
April 30 2024 19:38:58 |
0 / 0 |
0755 |
|
| grub2-fstest |
1.03 MB |
April 30 2024 19:38:58 |
0 / 0 |
0755 |
|
| grub2-glue-efi |
258.836 KB |
April 30 2024 19:38:58 |
0 / 0 |
0755 |
|
| grub2-kbdcomp |
1.629 KB |
April 30 2024 19:38:51 |
0 / 0 |
0755 |
|
| grub2-menulst2cfg |
241.852 KB |
April 30 2024 19:38:58 |
0 / 0 |
0755 |
|
| grub2-mkfont |
287.578 KB |
April 30 2024 19:38:58 |
0 / 0 |
0755 |
|
| grub2-mkimage |
379.211 KB |
April 30 2024 19:38:58 |
0 / 0 |
0755 |
|
| grub2-mklayout |
264.898 KB |
April 30 2024 19:38:58 |
0 / 0 |
0755 |
|
| grub2-mknetdir |
429.797 KB |
April 30 2024 19:38:58 |
0 / 0 |
0755 |
|
| grub2-mkpasswd-pbkdf2 |
271.289 KB |
April 30 2024 19:38:58 |
0 / 0 |
0755 |
|
| grub2-mkrelpath |
258.477 KB |
April 30 2024 19:38:58 |
0 / 0 |
0755 |
|
| grub2-mkrescue |
1017.852 KB |
April 30 2024 19:38:58 |
0 / 0 |
0755 |
|
| grub2-mkstandalone |
534.328 KB |
April 30 2024 19:38:58 |
0 / 0 |
0755 |
|
| grub2-render-label |
839.117 KB |
April 30 2024 19:38:58 |
0 / 0 |
0755 |
|
| grub2-script-check |
295.414 KB |
April 30 2024 19:38:58 |
0 / 0 |
0755 |
|
| grub2-syslinux2cfg |
763.703 KB |
April 30 2024 19:38:58 |
0 / 0 |
0755 |
|
| gsettings |
23.805 KB |
June 09 2021 16:12:02 |
0 / 0 |
0755 |
|
| gsoelim |
32.586 KB |
June 09 2014 20:17:22 |
0 / 0 |
0755 |
|
| gtar |
338.023 KB |
October 30 2018 20:24:30 |
0 / 0 |
0755 |
|
| gtbl |
115.961 KB |
June 09 2014 20:17:22 |
0 / 0 |
0755 |
|
| gtroff |
512.961 KB |
June 09 2014 20:17:22 |
0 / 0 |
0755 |
|
| gunzip |
2.2 KB |
May 12 2022 14:58:32 |
0 / 0 |
0755 |
|
| gzexe |
5.792 KB |
May 12 2022 14:58:32 |
0 / 0 |
0755 |
|
| gzip |
98.43 KB |
May 12 2022 14:58:32 |
0 / 0 |
0755 |
|
| h2ph |
27.646 KB |
February 02 2021 16:32:27 |
0 / 0 |
0755 |
|
| hdsploader |
11.18 KB |
November 05 2016 18:34:04 |
0 / 0 |
0755 |
|
| head |
40.508 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| hexdump |
32.016 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| hostid |
28.32 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| hostname |
15.414 KB |
October 18 2019 16:02:04 |
0 / 0 |
0755 |
|
| hostnamectl |
318.07 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| htdbm |
23.102 KB |
May 30 2023 14:01:58 |
0 / 0 |
0755 |
|
| htdigest |
15.078 KB |
May 30 2023 14:01:58 |
0 / 0 |
0755 |
|
| htpasswd |
19.094 KB |
May 30 2023 14:01:58 |
0 / 0 |
0755 |
|
| httxt2dbm |
10.992 KB |
May 30 2023 14:01:58 |
0 / 0 |
0755 |
|
| i386 |
15.273 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| iconv |
58.141 KB |
June 04 2024 15:05:31 |
0 / 0 |
0755 |
|
| id |
36.523 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| idiag-socket-details |
11.336 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| idn |
32.453 KB |
November 21 2015 17:00:47 |
0 / 0 |
0755 |
|
| igawk |
3.113 KB |
June 28 2017 21:52:45 |
0 / 0 |
0755 |
|
| info |
265.188 KB |
April 11 2018 01:03:35 |
0 / 0 |
0755 |
|
| infocmp |
56.07 KB |
September 06 2017 22:08:20 |
0 / 0 |
0755 |
|
| infokey |
21.469 KB |
April 11 2018 01:03:35 |
0 / 0 |
0755 |
|
| infotocap |
64.258 KB |
September 06 2017 22:08:20 |
0 / 0 |
0755 |
|
| install |
139.594 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| ionice |
23.859 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| ipcalc |
15.055 KB |
November 16 2020 16:20:20 |
0 / 0 |
0755 |
|
| ipcmk |
24 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| ipcrm |
27.852 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| ipcs |
48.367 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| iptables-xml |
91.516 KB |
October 01 2020 16:52:53 |
0 / 0 |
0755 |
|
| isosize |
23.828 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| jobs |
0.027 KB |
November 24 2021 16:33:26 |
0 / 0 |
0755 |
|
| join |
48.75 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| journalctl |
537.883 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| kbd_mode |
11.156 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| kbdinfo |
11.188 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| kbdrate |
11.219 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| kdumpctl |
33.178 KB |
June 09 2021 16:09:58 |
0 / 0 |
0755 |
|
| kernel-install |
4.698 KB |
December 07 2023 14:51:17 |
0 / 0 |
0755 |
|
| kill |
32.82 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| kmod |
143.242 KB |
April 01 2020 02:58:15 |
0 / 0 |
0755 |
|
| last |
19.109 KB |
June 09 2014 23:16:44 |
0 / 0 |
0755 |
|
| lastb |
19.109 KB |
June 09 2014 23:16:44 |
0 / 0 |
0755 |
|
| lastlog |
19.148 KB |
August 09 2019 02:51:01 |
0 / 0 |
0755 |
|
| lchfn |
15.523 KB |
April 12 2018 18:44:23 |
0 / 0 |
0755 |
|
| lchsh |
15.492 KB |
April 12 2018 18:44:23 |
0 / 0 |
0755 |
|
| ld |
982.609 KB |
November 01 2021 15:39:15 |
0 / 0 |
0755 |
|
| ld.bfd |
982.609 KB |
November 01 2021 15:39:15 |
0 / 0 |
0755 |
|
| ld.gold |
5.11 MB |
November 01 2021 15:39:15 |
0 / 0 |
0755 |
|
| ldd |
5.178 KB |
June 04 2024 14:43:52 |
0 / 0 |
0755 |
|
| less |
154.57 KB |
June 11 2024 14:35:22 |
0 / 0 |
0755 |
|
| lessecho |
11.133 KB |
June 11 2024 14:35:22 |
0 / 0 |
0755 |
|
| lesskey |
16.672 KB |
June 11 2024 14:35:22 |
0 / 0 |
0755 |
|
| lesspipe.sh |
2.237 KB |
January 13 2022 18:00:05 |
0 / 0 |
0755 |
|
| lexgrog |
85.086 KB |
October 30 2018 20:26:36 |
0 / 0 |
0755 |
|
| link |
28.305 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| linux-boot-prober |
5.854 KB |
November 06 2016 03:30:02 |
0 / 0 |
0755 |
|
| linux32 |
15.273 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| linux64 |
15.273 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| ln |
57.219 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| loadkeys |
110.484 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| loadunimap |
23.883 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| locale |
37.109 KB |
June 04 2024 15:05:31 |
0 / 0 |
0755 |
|
| localectl |
326.164 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| localedef |
318.313 KB |
June 04 2024 15:05:31 |
0 / 0 |
0755 |
|
| logger |
28.617 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| login |
36.375 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| loginctl |
489.617 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| logname |
28.313 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| logresolve |
11 KB |
May 30 2023 14:01:58 |
0 / 0 |
0755 |
|
| look |
11.273 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| ls |
114.852 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| lsattr |
11.25 KB |
September 30 2020 15:58:29 |
0 / 0 |
0755 |
|
| lsblk |
79.172 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| lscpu |
60.75 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| lsinitrd |
6.26 KB |
September 30 2020 15:57:57 |
0 / 0 |
0755 |
|
| lsipc |
60.945 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| lslocks |
41.008 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| lslogins |
52.883 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| lsmem |
40.781 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| lsns |
36.43 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| lsscsi |
56.477 KB |
August 03 2017 02:11:06 |
0 / 0 |
0755 |
|
| lua |
15.469 KB |
November 06 2016 02:47:35 |
0 / 0 |
0755 |
|
| luac |
119.031 KB |
November 06 2016 02:47:35 |
0 / 0 |
0755 |
|
| lz4 |
105.844 KB |
September 30 2020 16:55:11 |
0 / 0 |
0755 |
|
| lz4c |
105.844 KB |
September 30 2020 16:55:11 |
0 / 0 |
0755 |
|
| lz4cat |
105.844 KB |
September 30 2020 16:55:11 |
0 / 0 |
0755 |
|
| machinectl |
533.953 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| mailq |
242.109 KB |
April 01 2020 04:09:09 |
0 / 0 |
0755 |
|
| mailq.postfix |
242.109 KB |
April 01 2020 04:09:09 |
0 / 0 |
0755 |
|
| make |
178.469 KB |
August 09 2019 00:46:49 |
0 / 0 |
0755 |
|
| makedb |
18.109 KB |
June 04 2024 15:05:31 |
0 / 0 |
0755 |
|
| man |
100.438 KB |
October 30 2018 20:26:36 |
0 / 0 |
0755 |
|
| mandb |
122.25 KB |
October 30 2018 20:26:36 |
0 / 0 |
0755 |
|
| manpath |
32.555 KB |
October 30 2018 20:26:36 |
0 / 0 |
0755 |
|
| mapscrn |
19.781 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| mcookie |
15.438 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| md5sum |
40.531 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| mesg |
10.977 KB |
June 09 2014 23:16:44 |
0 / 0 |
0755 |
|
| mixartloader |
15.375 KB |
November 05 2016 18:34:04 |
0 / 0 |
0755 |
|
| mkdir |
77.898 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| mkfifo |
61.586 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| mkinitrd |
2.942 KB |
September 30 2020 15:57:57 |
0 / 0 |
0755 |
|
| mknod |
65.609 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| mktemp |
40.656 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| modutil |
165.781 KB |
October 19 2023 13:17:47 |
0 / 0 |
0755 |
|
| more |
40.148 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| mount |
43.227 KB |
February 02 2021 16:31:53 |
0 / 0 |
4755 |
|
| mountpoint |
15.32 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| msgattrib |
23.359 KB |
April 01 2020 02:43:18 |
0 / 0 |
0755 |
|
| msgcat |
23.336 KB |
April 01 2020 02:43:18 |
0 / 0 |
0755 |
|
| msgcmp |
23.586 KB |
April 01 2020 02:43:18 |
0 / 0 |
0755 |
|
| msgcomm |
19.313 KB |
April 01 2020 02:43:18 |
0 / 0 |
0755 |
|
| msgconv |
19.305 KB |
April 01 2020 02:43:18 |
0 / 0 |
0755 |
|
| msgen |
19.305 KB |
April 01 2020 02:43:18 |
0 / 0 |
0755 |
|
| msgexec |
15.328 KB |
April 01 2020 02:43:18 |
0 / 0 |
0755 |
|
| msgfilter |
27.563 KB |
April 01 2020 02:43:18 |
0 / 0 |
0755 |
|
| msgfmt |
77.055 KB |
April 01 2020 02:43:18 |
0 / 0 |
0755 |
|
| msggrep |
35.969 KB |
April 01 2020 02:43:18 |
0 / 0 |
0755 |
|
| msghack |
12.452 KB |
November 27 2019 15:49:53 |
0 / 0 |
0755 |
|
| msginit |
44.383 KB |
April 01 2020 02:43:18 |
0 / 0 |
0755 |
|
| msgmerge |
52.602 KB |
April 01 2020 02:43:18 |
0 / 0 |
0755 |
|
| msgunfmt |
31.703 KB |
April 01 2020 02:43:18 |
0 / 0 |
0755 |
|
| msguniq |
19.313 KB |
April 01 2020 02:43:18 |
0 / 0 |
0755 |
|
| mv |
127.305 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| namei |
27.945 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| ndptool |
23.625 KB |
August 09 2019 00:25:58 |
0 / 0 |
0755 |
|
| needs-restarting |
8.168 KB |
May 12 2020 16:27:40 |
0 / 0 |
0755 |
|
| neqn |
0.265 KB |
June 09 2014 20:17:13 |
0 / 0 |
0755 |
|
| newaliases |
242.109 KB |
April 01 2020 04:09:09 |
0 / 0 |
0755 |
|
| newaliases.postfix |
242.109 KB |
April 01 2020 04:09:09 |
0 / 0 |
0755 |
|
| newgidmap |
38.086 KB |
August 09 2019 02:51:01 |
0 / 0 |
0755 |
|
| newgrp |
40.953 KB |
August 09 2019 02:51:01 |
0 / 0 |
4755 |
|
| newuidmap |
38.063 KB |
August 09 2019 02:51:01 |
0 / 0 |
0755 |
|
| nf-ct-add |
11.805 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nf-ct-list |
15.836 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nf-exp-add |
16.211 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nf-exp-delete |
15.992 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nf-exp-list |
11.805 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nf-log |
11.234 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nf-monitor |
11.18 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nf-queue |
11.273 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| ngettext |
35.953 KB |
April 01 2020 02:43:18 |
0 / 0 |
0755 |
|
| nice |
32.32 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| nisdomainname |
15.414 KB |
October 18 2019 16:02:04 |
0 / 0 |
0755 |
|
| nl |
40.602 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| nl-addr-add |
11.648 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-addr-delete |
11.734 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-addr-list |
15.875 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-class-add |
11.695 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-class-delete |
11.547 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-class-list |
11.477 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-classid-lookup |
11.289 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-cls-add |
11.758 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-cls-delete |
11.68 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-cls-list |
11.578 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-fib-lookup |
11.414 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-link-enslave |
7.047 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-link-ifindex2name |
7.063 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-link-list |
11.523 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-link-name2ifindex |
7.047 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-link-release |
7.047 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-link-set |
11.641 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-link-stats |
11.391 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-list-caches |
11.078 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-list-sockets |
7.063 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-monitor |
11.195 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-neigh-add |
11.508 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-neigh-delete |
11.57 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-neigh-list |
11.461 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-neightbl-list |
11.266 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-pktloc-lookup |
11.359 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-qdisc-add |
11.602 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-qdisc-delete |
11.539 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-qdisc-list |
11.625 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-route-add |
11.734 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-route-delete |
15.859 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-route-get |
11.18 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-route-list |
11.773 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-rule-list |
11.297 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-tctree-list |
11.531 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nl-util-addr |
7.031 KB |
August 03 2017 19:48:51 |
0 / 0 |
0755 |
|
| nm |
45.43 KB |
November 01 2021 15:39:15 |
0 / 0 |
0755 |
|
| nm-online |
15.164 KB |
November 16 2020 16:15:18 |
0 / 0 |
0755 |
|
| nmcli |
809.164 KB |
November 16 2020 16:15:18 |
0 / 0 |
0755 |
|
| nmtui |
646.766 KB |
November 16 2020 16:15:18 |
0 / 0 |
0755 |
|
| nmtui-connect |
646.766 KB |
November 16 2020 16:15:18 |
0 / 0 |
0755 |
|
| nmtui-edit |
646.766 KB |
November 16 2020 16:15:18 |
0 / 0 |
0755 |
|
| nmtui-hostname |
646.766 KB |
November 16 2020 16:15:18 |
0 / 0 |
0755 |
|
| nohup |
32.422 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| nproc |
32.367 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| nroff |
3.313 KB |
June 09 2014 20:17:15 |
0 / 0 |
0755 |
|
| nsenter |
28.219 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| nss-policy-check |
15.258 KB |
October 19 2023 13:17:47 |
0 / 0 |
0755 |
|
| numfmt |
64.711 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| objcopy |
227.336 KB |
November 01 2021 15:39:15 |
0 / 0 |
0755 |
|
| objdump |
357.742 KB |
November 01 2021 15:39:15 |
0 / 0 |
0755 |
|
| od |
64.813 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| oldfind |
186.406 KB |
October 30 2018 16:42:55 |
0 / 0 |
0755 |
|
| open |
19.477 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| openssl |
542.266 KB |
March 20 2023 16:13:47 |
0 / 0 |
0755 |
|
| openvt |
19.477 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| os-prober |
5.511 KB |
November 06 2016 03:30:02 |
0 / 0 |
0755 |
|
| p11-kit |
32.18 KB |
August 04 2017 23:36:46 |
0 / 0 |
0755 |
|
| package-cleanup |
17.386 KB |
May 12 2020 16:27:40 |
0 / 0 |
0755 |
|
| page_owner_sort |
10.195 KB |
June 04 2024 14:55:42 |
0 / 0 |
0755 |
|
| passwd |
27.203 KB |
April 01 2020 03:57:19 |
0 / 0 |
4755 |
|
| paste |
32.344 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| pathchk |
32.313 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| pchrt |
3.93 KB |
November 05 2016 21:51:47 |
0 / 0 |
0755 |
|
| perl |
11.141 KB |
February 02 2021 16:33:17 |
0 / 0 |
0755 |
|
| perl5.16.3 |
11.141 KB |
February 02 2021 16:33:17 |
0 / 0 |
0755 |
|
| perlbug |
43.605 KB |
February 02 2021 16:32:27 |
0 / 0 |
0755 |
|
| perldoc |
0.198 KB |
June 10 2014 08:17:48 |
0 / 0 |
0755 |
|
| perlthanks |
43.605 KB |
February 02 2021 16:32:27 |
0 / 0 |
0755 |
|
| pflags |
2.062 KB |
August 09 2019 02:08:24 |
0 / 0 |
0755 |
|
| pgawk |
418.625 KB |
June 28 2017 21:52:48 |
0 / 0 |
0755 |
|
| pgrep |
27.672 KB |
September 30 2020 17:21:37 |
0 / 0 |
0755 |
|
| phar |
14.476 KB |
August 02 2023 09:52:03 |
0 / 0 |
0755 |
|
| phar.phar |
14.476 KB |
August 02 2023 09:52:03 |
0 / 0 |
0755 |
|
| php |
4.21 MB |
August 02 2023 09:52:19 |
0 / 0 |
0755 |
|
| php-cgi |
4.18 MB |
August 02 2023 09:52:19 |
0 / 0 |
0755 |
|
| phpize |
4.64 KB |
August 02 2023 09:52:03 |
0 / 0 |
0755 |
|
| pic |
180.406 KB |
June 09 2014 20:17:22 |
0 / 0 |
0755 |
|
| piconv |
7.985 KB |
June 10 2014 02:49:27 |
0 / 0 |
0755 |
|
| pinentry |
2.541 KB |
November 04 2016 18:02:54 |
0 / 0 |
0755 |
|
| pinentry-curses |
49.188 KB |
November 05 2016 15:49:27 |
0 / 0 |
0755 |
|
| ping |
64.625 KB |
August 04 2017 08:01:04 |
0 / 0 |
0755 |
|
| ping6 |
64.625 KB |
August 04 2017 08:01:04 |
0 / 0 |
0755 |
|
| pinky |
36.57 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| pk12util |
103.219 KB |
October 19 2023 13:17:47 |
0 / 0 |
0755 |
|
| pkaction |
15 KB |
January 25 2022 19:42:49 |
0 / 0 |
0755 |
|
| pkcheck |
23.031 KB |
January 25 2022 19:42:49 |
0 / 0 |
0755 |
|
| pkexec |
27.023 KB |
January 25 2022 19:42:49 |
0 / 0 |
4755 |
|
| pkg-config |
44.383 KB |
June 09 2014 22:05:48 |
0 / 0 |
0755 |
|
| pkill |
27.672 KB |
September 30 2020 17:21:37 |
0 / 0 |
0755 |
|
| pkla-admin-identities |
19.227 KB |
June 09 2014 22:08:33 |
0 / 0 |
0755 |
|
| pkla-check-authorization |
27.305 KB |
June 09 2014 22:08:33 |
0 / 0 |
0755 |
|
| pkttyagent |
18.984 KB |
January 25 2022 19:42:49 |
0 / 0 |
0755 |
|
| pl2pm |
4.425 KB |
February 02 2021 16:32:02 |
0 / 0 |
0755 |
|
| pldd |
14.109 KB |
June 04 2024 15:05:31 |
0 / 0 |
0755 |
|
| plymouth |
39.766 KB |
October 01 2020 16:53:21 |
0 / 0 |
0755 |
|
| pmap |
27.609 KB |
September 30 2020 17:21:37 |
0 / 0 |
0755 |
|
| pod2html |
4 KB |
February 02 2021 16:32:27 |
0 / 0 |
0755 |
|
| pod2man |
13.263 KB |
June 09 2014 19:56:13 |
0 / 0 |
0755 |
|
| pod2text |
10.746 KB |
June 09 2014 19:56:13 |
0 / 0 |
0755 |
|
| pod2usage |
3.667 KB |
June 10 2014 08:56:18 |
0 / 0 |
0755 |
|
| post-grohtml |
187.547 KB |
June 09 2014 20:17:22 |
0 / 0 |
0755 |
|
| powernow-k8-decode |
6.148 KB |
June 04 2024 14:55:42 |
0 / 0 |
0755 |
|
| pr |
65.109 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| pre-grohtml |
86.242 KB |
June 09 2014 20:17:22 |
0 / 0 |
0755 |
|
| preconv |
40.883 KB |
June 09 2014 20:17:22 |
0 / 0 |
0755 |
|
| printenv |
28.281 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| printf |
48.609 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| prlimit |
41.195 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| ps |
97.766 KB |
September 30 2020 17:21:37 |
0 / 0 |
0755 |
|
| psed |
52.079 KB |
February 02 2021 16:32:27 |
0 / 0 |
0755 |
|
| psfaddtable |
19.484 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| psfgettable |
19.484 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| psfstriptable |
19.484 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| psfxtable |
19.484 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| pstruct |
35.749 KB |
February 02 2021 16:32:27 |
0 / 0 |
0755 |
|
| ptaskset |
3.8 KB |
November 05 2016 21:51:47 |
0 / 0 |
0755 |
|
| ptx |
65.078 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| pwd |
32.453 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| pwdx |
11.266 KB |
September 30 2020 17:21:37 |
0 / 0 |
0755 |
|
| pwmake |
11.125 KB |
April 11 2018 03:58:18 |
0 / 0 |
0755 |
|
| pwscore |
11.125 KB |
April 11 2018 03:58:18 |
0 / 0 |
0755 |
|
| pydoc |
0.076 KB |
November 14 2023 16:14:24 |
0 / 0 |
0755 |
|
| python |
6.977 KB |
November 14 2023 16:14:39 |
0 / 0 |
0755 |
|
| python2 |
6.977 KB |
November 14 2023 16:14:39 |
0 / 0 |
0755 |
|
| python2.7 |
6.977 KB |
November 14 2023 16:14:39 |
0 / 0 |
0755 |
|
| ranlib |
61.219 KB |
November 01 2021 15:39:15 |
0 / 0 |
0755 |
|
| raw |
15.273 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| read |
0.027 KB |
November 24 2021 16:33:26 |
0 / 0 |
0755 |
|
| readelf |
509.828 KB |
November 01 2021 15:39:15 |
0 / 0 |
0755 |
|
| readlink |
40.82 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| realpath |
61.234 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| recode-sr-latin |
15.289 KB |
April 01 2020 02:43:18 |
0 / 0 |
0755 |
|
| rename |
11.258 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| renice |
11.211 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| repo-graph |
4.093 KB |
May 12 2020 16:27:40 |
0 / 0 |
0755 |
|
| repo-rss |
10.073 KB |
May 12 2020 16:27:40 |
0 / 0 |
0755 |
|
| repoclosure |
11.425 KB |
May 12 2020 16:27:40 |
0 / 0 |
0755 |
|
| repodiff |
13.966 KB |
May 12 2020 16:27:40 |
0 / 0 |
0755 |
|
| repomanage |
6.878 KB |
May 12 2020 16:27:40 |
0 / 0 |
0755 |
|
| repoquery |
55.677 KB |
May 12 2020 16:27:40 |
0 / 0 |
0755 |
|
| reposync |
14.14 KB |
May 12 2020 16:27:40 |
0 / 0 |
0755 |
|
| repotrack |
9.864 KB |
May 12 2020 16:27:40 |
0 / 0 |
0755 |
|
| reset |
19.602 KB |
September 06 2017 22:08:20 |
0 / 0 |
0755 |
|
| resizecons |
19.625 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| rev |
11.258 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| rm |
61.398 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| rmail |
0.256 KB |
April 01 2020 04:08:17 |
0 / 0 |
0755 |
|
| rmail.postfix |
0.256 KB |
April 01 2020 04:08:17 |
0 / 0 |
0755 |
|
| rmdir |
44.461 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| rpcgen |
90.453 KB |
June 04 2024 15:05:31 |
0 / 0 |
0755 |
|
| rpm |
15.75 KB |
November 24 2021 16:33:34 |
0 / 0 |
0755 |
|
| rpm2cpio |
11.156 KB |
November 24 2021 16:33:34 |
0 / 0 |
0755 |
|
| rpmdb |
11.734 KB |
November 24 2021 16:33:34 |
0 / 0 |
0755 |
|
| rpmkeys |
11.734 KB |
November 24 2021 16:33:34 |
0 / 0 |
0755 |
|
| rpmquery |
15.75 KB |
November 24 2021 16:33:34 |
0 / 0 |
0755 |
|
| rpmverify |
15.75 KB |
November 24 2021 16:33:34 |
0 / 0 |
0755 |
|
| rsync |
488.375 KB |
December 15 2022 16:21:04 |
0 / 0 |
0755 |
|
| rsyslog-recover-qi.pl |
5.955 KB |
May 31 2022 15:22:17 |
0 / 0 |
0755 |
|
| run-parts |
2.037 KB |
June 09 2014 22:14:31 |
0 / 0 |
0755 |
|
| runcon |
32.469 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| rvi |
906.445 KB |
December 15 2020 16:44:13 |
0 / 0 |
0755 |
|
| rview |
906.445 KB |
December 15 2020 16:44:13 |
0 / 0 |
0755 |
|
| s2p |
52.079 KB |
February 02 2021 16:32:27 |
0 / 0 |
0755 |
|
| scp |
89.234 KB |
August 04 2023 16:00:52 |
0 / 0 |
0755 |
|
| script |
19.609 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| scriptreplay |
15.289 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| sdiff |
48.406 KB |
March 07 2023 14:48:24 |
0 / 0 |
0755 |
|
| secon |
24.063 KB |
April 01 2020 04:04:55 |
0 / 0 |
0755 |
|
| sed |
74.289 KB |
September 30 2020 17:35:52 |
0 / 0 |
0755 |
|
| seq |
48.477 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| setarch |
15.273 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| setfacl |
36.727 KB |
April 01 2020 02:16:13 |
0 / 0 |
0755 |
|
| setfont |
40.383 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| setkeycodes |
11.164 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| setleds |
11.164 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| setmetamode |
11.211 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| setpriv |
36.063 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| setsid |
11.227 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| setterm |
27.484 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| setup-nsssysinit |
1.503 KB |
October 19 2023 13:17:40 |
0 / 0 |
0755 |
|
| setup-nsssysinit.sh |
1.503 KB |
October 19 2023 13:17:40 |
0 / 0 |
0755 |
|
| setvtrgb |
11.336 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| sftp |
142.008 KB |
August 04 2023 16:00:52 |
0 / 0 |
0755 |
|
| sg |
40.953 KB |
August 09 2019 02:51:01 |
0 / 0 |
4755 |
|
| sh |
941.93 KB |
November 24 2021 16:33:27 |
0 / 0 |
0755 |
|
| sha1sum |
36.57 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| sha224sum |
40.633 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| sha256sum |
40.633 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| sha384sum |
40.648 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| sha512sum |
40.648 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| show-changed-rco |
10.128 KB |
May 12 2020 16:27:40 |
0 / 0 |
0755 |
|
| show-installed |
16.184 KB |
May 12 2020 16:27:40 |
0 / 0 |
0755 |
|
| showconsolefont |
15.469 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| showkey |
15.234 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| shred |
52.938 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| shuf |
49.133 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| signver |
102.602 KB |
October 19 2023 13:17:47 |
0 / 0 |
0755 |
|
| size |
32.352 KB |
November 01 2021 15:39:15 |
0 / 0 |
0755 |
|
| skill |
23.617 KB |
September 30 2020 17:21:37 |
0 / 0 |
0755 |
|
| slabinfo |
34.961 KB |
June 04 2024 14:55:42 |
0 / 0 |
0755 |
|
| slabtop |
19.516 KB |
September 30 2020 17:21:37 |
0 / 0 |
0755 |
|
| sleep |
32.352 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| slogin |
756.398 KB |
August 04 2023 16:00:52 |
0 / 0 |
0755 |
|
| snice |
23.617 KB |
September 30 2020 17:21:37 |
0 / 0 |
0755 |
|
| soelim |
32.586 KB |
June 09 2014 20:17:22 |
0 / 0 |
0755 |
|
| sort |
114.938 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| sotruss |
4.239 KB |
June 04 2024 14:43:52 |
0 / 0 |
0755 |
|
| splain |
18.026 KB |
February 02 2021 16:32:27 |
0 / 0 |
0755 |
|
| split |
69.469 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| sprof |
22.102 KB |
June 04 2024 15:05:31 |
0 / 0 |
0755 |
|
| sqlite3 |
54.945 KB |
January 28 2020 14:24:52 |
0 / 0 |
0755 |
|
| ssh |
756.398 KB |
August 04 2023 16:00:52 |
0 / 0 |
0755 |
|
| ssh-add |
352.461 KB |
August 04 2023 16:00:52 |
0 / 0 |
0755 |
|
| ssh-agent |
373.25 KB |
August 04 2023 16:00:52 |
0 / 99 |
2111 |
|
| ssh-copy-id |
10.224 KB |
August 04 2023 16:00:49 |
0 / 0 |
0755 |
|
| ssh-keygen |
409.383 KB |
August 04 2023 16:00:52 |
0 / 0 |
0755 |
|
| ssh-keyscan |
430.695 KB |
August 04 2023 16:00:52 |
0 / 0 |
0755 |
|
| ssltap |
118.414 KB |
October 19 2023 13:17:47 |
0 / 0 |
0755 |
|
| stat |
77.188 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| stdbuf |
64.883 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| strings |
32.547 KB |
November 01 2021 15:39:15 |
0 / 0 |
0755 |
|
| strip |
227.344 KB |
November 01 2021 15:39:15 |
0 / 0 |
0755 |
|
| stty |
68.609 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| su |
31.375 KB |
February 02 2021 16:31:53 |
0 / 0 |
4755 |
|
| sudo |
147.875 KB |
January 25 2023 16:36:33 |
0 / 0 |
4111 |
|
| sudoedit |
147.875 KB |
January 25 2023 16:36:33 |
0 / 0 |
4111 |
|
| sudoreplay |
56.109 KB |
January 25 2023 16:36:33 |
0 / 0 |
0111 |
|
| sum |
36.555 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| sync |
28.328 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| systemctl |
704.797 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| systemd-analyze |
1.49 MB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| systemd-ask-password |
60.375 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| systemd-cat |
39.984 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| systemd-cgls |
326.289 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| systemd-cgtop |
85.086 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| systemd-coredumpctl |
154.516 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| systemd-delta |
76.836 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| systemd-detect-virt |
39.969 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| systemd-escape |
48.195 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| systemd-firstboot |
101.516 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| systemd-hwdb |
85.313 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| systemd-inhibit |
309.828 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| systemd-loginctl |
489.617 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| systemd-machine-id-setup |
52.234 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| systemd-notify |
48.133 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| systemd-nspawn |
545.875 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| systemd-path |
52.156 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| systemd-run |
387.055 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| systemd-stdio-bridge |
305.773 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| systemd-sysv-convert |
3.886 KB |
December 07 2023 14:51:20 |
0 / 0 |
0755 |
|
| systemd-tmpfiles |
146.133 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| systemd-tty-ask-password-agent |
84.75 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| tabs |
15.313 KB |
September 06 2017 22:08:20 |
0 / 0 |
0755 |
|
| tac |
32.484 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| tail |
65.25 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| tailf |
23.883 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| tar |
338.023 KB |
October 30 2018 20:24:30 |
0 / 0 |
0755 |
|
| taskset |
32.219 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| tbl |
115.961 KB |
June 09 2014 20:17:22 |
0 / 0 |
0755 |
|
| teamd |
155.086 KB |
September 30 2020 16:51:47 |
0 / 0 |
0755 |
|
| teamdctl |
28.977 KB |
September 30 2020 16:51:47 |
0 / 0 |
0755 |
|
| teamnl |
19.094 KB |
September 30 2020 16:51:47 |
0 / 0 |
0755 |
|
| tee |
32.383 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| test |
36.461 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| testgdbm |
29.773 KB |
June 09 2014 21:39:03 |
0 / 0 |
0755 |
|
| tic |
64.258 KB |
September 06 2017 22:08:20 |
0 / 0 |
0755 |
|
| timedatectl |
330.219 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| timeout |
53.313 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| tload |
15.375 KB |
September 30 2020 17:21:37 |
0 / 0 |
0755 |
|
| tmon |
31.109 KB |
June 04 2024 14:55:43 |
0 / 0 |
0755 |
|
| toe |
15.43 KB |
September 06 2017 22:08:20 |
0 / 0 |
0755 |
|
| top |
104.375 KB |
September 30 2020 17:21:37 |
0 / 0 |
0755 |
|
| touch |
61.023 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| tput |
15.414 KB |
September 06 2017 22:08:20 |
0 / 0 |
0755 |
|
| tr |
44.609 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| tracepath |
15.047 KB |
August 04 2017 08:01:04 |
0 / 0 |
0755 |
|
| tracepath6 |
15.047 KB |
August 04 2017 08:01:04 |
0 / 0 |
0755 |
|
| troff |
512.961 KB |
June 09 2014 20:17:22 |
0 / 0 |
0755 |
|
| true |
28.258 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| truncate |
52.68 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| trust |
179.078 KB |
August 04 2017 23:36:46 |
0 / 0 |
0755 |
|
| tset |
19.602 KB |
September 06 2017 22:08:20 |
0 / 0 |
0755 |
|
| tsort |
36.469 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| tty |
28.289 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| turbostat |
113.148 KB |
June 04 2024 14:55:42 |
0 / 0 |
0755 |
|
| tzselect |
7.167 KB |
June 04 2024 14:43:10 |
0 / 0 |
0755 |
|
| udevadm |
414.273 KB |
December 07 2023 14:51:48 |
0 / 0 |
0755 |
|
| ul |
19.469 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| umask |
0.028 KB |
November 24 2021 16:33:26 |
0 / 0 |
0755 |
|
| umount |
31.234 KB |
February 02 2021 16:31:53 |
0 / 0 |
4755 |
|
| unalias |
0.03 KB |
November 24 2021 16:33:26 |
0 / 0 |
0755 |
|
| uname |
32.297 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| unexpand |
32.453 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| unicode_start |
2.495 KB |
November 24 2021 16:32:38 |
0 / 0 |
0755 |
|
| unicode_stop |
0.354 KB |
November 24 2021 16:32:37 |
0 / 0 |
0755 |
|
| uniq |
44.711 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| unlink |
28.305 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| unlz4 |
105.844 KB |
September 30 2020 16:55:11 |
0 / 0 |
0755 |
|
| unshare |
15.453 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| unxz |
73.523 KB |
June 15 2022 14:40:44 |
0 / 0 |
0755 |
|
| update-ca-trust |
1.029 KB |
January 13 2022 17:12:22 |
0 / 0 |
0755 |
|
| update-mime-database |
52.82 KB |
April 01 2020 04:30:55 |
0 / 0 |
0755 |
|
| uptime |
11.219 KB |
September 30 2020 17:21:37 |
0 / 0 |
0755 |
|
| urlgrabber |
12.173 KB |
April 01 2020 04:14:03 |
0 / 0 |
0755 |
|
| users |
32.422 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| usleep |
10.945 KB |
November 16 2020 16:20:20 |
0 / 0 |
0755 |
|
| usx2yloader |
15.406 KB |
November 05 2016 18:34:04 |
0 / 0 |
0755 |
|
| utmpdump |
15.445 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| uuidgen |
11.211 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| vdir |
114.852 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| verifytree |
10.787 KB |
May 12 2020 16:27:40 |
0 / 0 |
0755 |
|
| vi |
906.445 KB |
December 15 2020 16:44:13 |
0 / 0 |
0755 |
|
| view |
906.445 KB |
December 15 2020 16:44:13 |
0 / 0 |
0755 |
|
| vlock |
15.727 KB |
November 24 2021 16:34:03 |
0 / 0 |
0755 |
|
| vmstat |
31.477 KB |
September 30 2020 17:21:37 |
0 / 0 |
0755 |
|
| vxloader |
15.375 KB |
November 05 2016 18:34:04 |
0 / 0 |
0755 |
|
| w |
19.445 KB |
September 30 2020 17:21:37 |
0 / 0 |
0755 |
|
| wait |
0.027 KB |
November 24 2021 16:33:26 |
0 / 0 |
0755 |
|
| wall |
14.984 KB |
June 09 2014 23:16:44 |
0 / 5 |
2555 |
|
| watch |
24.141 KB |
September 30 2020 17:21:37 |
0 / 0 |
0755 |
|
| watchgnupg |
15.352 KB |
July 13 2018 13:05:25 |
0 / 0 |
0755 |
|
| wc |
40.672 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| wdctl |
40.695 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| wget |
408.961 KB |
May 15 2019 21:01:44 |
0 / 0 |
0755 |
|
| whatis |
45.492 KB |
October 30 2018 20:26:36 |
0 / 0 |
0755 |
|
| whereis |
20.195 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| which |
23.766 KB |
June 10 2014 02:25:22 |
0 / 0 |
0755 |
|
| whiptail |
27.836 KB |
June 10 2014 07:48:12 |
0 / 0 |
0755 |
|
| who |
48.703 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| whoami |
28.305 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| write |
19.086 KB |
February 02 2021 16:31:53 |
0 / 5 |
2755 |
|
| x86_64 |
15.273 KB |
February 02 2021 16:31:53 |
0 / 0 |
0755 |
|
| x86_64-redhat-linux-gcc |
750.594 KB |
September 30 2020 02:18:23 |
0 / 0 |
0755 |
|
| x86_energy_perf_policy |
10.234 KB |
June 04 2024 14:55:42 |
0 / 0 |
0755 |
|
| xargs |
60.906 KB |
October 30 2018 16:42:55 |
0 / 0 |
0755 |
|
| xgettext |
265.352 KB |
April 01 2020 02:43:18 |
0 / 0 |
0755 |
|
| xmlcatalog |
15.305 KB |
October 21 2021 16:15:18 |
0 / 0 |
0755 |
|
| xmllint |
61.938 KB |
October 21 2021 16:15:18 |
0 / 0 |
0755 |
|
| xmlwf |
24 KB |
October 06 2022 12:52:33 |
0 / 0 |
0755 |
|
| xsltproc |
23.508 KB |
September 30 2020 16:56:56 |
0 / 0 |
0755 |
|
| xz |
73.523 KB |
June 15 2022 14:40:44 |
0 / 0 |
0755 |
|
| xzcat |
73.523 KB |
June 15 2022 14:40:44 |
0 / 0 |
0755 |
|
| xzcmp |
6.477 KB |
June 15 2022 14:40:32 |
0 / 0 |
0755 |
|
| xzdec |
11.211 KB |
June 15 2022 14:40:44 |
0 / 0 |
0755 |
|
| xzdiff |
6.477 KB |
June 15 2022 14:40:32 |
0 / 0 |
0755 |
|
| xzegrep |
5.764 KB |
June 15 2022 14:40:32 |
0 / 0 |
0755 |
|
| xzfgrep |
5.764 KB |
June 15 2022 14:40:32 |
0 / 0 |
0755 |
|
| xzgrep |
5.764 KB |
June 15 2022 14:40:32 |
0 / 0 |
0755 |
|
| xzless |
1.76 KB |
June 15 2022 14:40:32 |
0 / 0 |
0755 |
|
| xzmore |
2.11 KB |
June 15 2022 14:40:32 |
0 / 0 |
0755 |
|
| yes |
28.305 KB |
November 16 2020 22:24:58 |
0 / 0 |
0755 |
|
| ypdomainname |
15.414 KB |
October 18 2019 16:02:04 |
0 / 0 |
0755 |
|
| yum |
0.782 KB |
October 01 2020 17:03:44 |
0 / 0 |
0755 |
|
| yum-builddep |
9.95 KB |
May 12 2020 16:27:40 |
0 / 0 |
0755 |
|
| yum-config-manager |
9.354 KB |
May 12 2020 16:27:40 |
0 / 0 |
0755 |
|
| yum-debug-dump |
8.338 KB |
May 12 2020 16:27:40 |
0 / 0 |
0755 |
|
| yum-debug-restore |
7.718 KB |
May 12 2020 16:27:40 |
0 / 0 |
0755 |
|
| yum-groups-manager |
10.772 KB |
May 12 2020 16:27:40 |
0 / 0 |
0755 |
|
| yumdownloader |
10.854 KB |
May 12 2020 16:27:40 |
0 / 0 |
0755 |
|
| zcat |
1.896 KB |
May 12 2022 14:58:32 |
0 / 0 |
0755 |
|
| zcmp |
1.719 KB |
May 12 2022 14:58:32 |
0 / 0 |
0755 |
|
| zdiff |
5.633 KB |
May 12 2022 14:58:32 |
0 / 0 |
0755 |
|
| zegrep |
0.12 KB |
May 12 2022 14:58:32 |
0 / 0 |
0755 |
|
| zfgrep |
0.12 KB |
May 12 2022 14:58:32 |
0 / 0 |
0755 |
|
| zforce |
2.094 KB |
May 12 2022 14:58:32 |
0 / 0 |
0755 |
|
| zgrep |
5.979 KB |
May 12 2022 14:58:32 |
0 / 0 |
0755 |
|
| zless |
1.993 KB |
May 12 2022 14:58:32 |
0 / 0 |
0755 |
|
| zmore |
2.792 KB |
May 12 2022 14:58:32 |
0 / 0 |
0755 |
|
| znew |
5.218 KB |
May 12 2022 14:58:32 |
0 / 0 |
0755 |
|
| zsoelim |
32.586 KB |
June 09 2014 20:17:22 |
0 / 0 |
0755 |
|
| zts-php |
4.41 MB |
August 02 2023 09:52:19 |
0 / 0 |
0755 |
|