NAME
WebService::OPNsense::Firewall::Alias - Firewall alias controller
VERSION
version 0.003
SYNOPSIS
use WebService::OPNsense::Constants qw( $ALIAS_HOST $OPN_ENABLED );
my $alias = $opn->firewall_alias;
# Search aliases
my $results = $alias->search_item;
# Create an alias
$alias->add_item({
alias => {
name => 'web-servers',
type => $ALIAS_HOST,
content => "192.0.2.10\n192.0.2.11",
description => 'My web servers',
},
});
# Toggle an alias
$alias->toggle_item($uuid, $OPN_ENABLED);
DESCRIPTION
Manages firewall aliases.
METHODS
toggle_item
my $result = $alias->toggle_item($uuid, $enabled);
reconfigure
my $result = $alias->reconfigure;
Reconfigures aliases after changes.
get_alias_uuid
my $uuid = $alias->get_alias_uuid($name);
Returns the UUID for an alias by name.
export
my $data = $alias->export($uuid);
Exports an alias by UUID.
import_alias
my $result = $alias->import_alias($import_data);
Imports an alias from data.
get_table_size
my $size = $alias->get_table_size;
Returns alias table size.
list_categories
my $categories = $alias->list_categories;
Returns a list of available alias categories.
list_countries
my $countries = $alias->list_countries;
Returns a list of country codes for geo-based aliases.
list_network_aliases
my $aliases = $alias->list_network_aliases;
Returns a list of network aliases available for nesting.
list_user_groups
my $groups = $alias->list_user_groups;
Returns a list of user groups.
update
my $result = $alias->update($action);
Updates aliases. Optionally specify an action (e.g. 'flush').
set_alias
my $result = $alias->set_alias($alias_data);
Sets alias configuration (bulk operation).
get
my $aliases = $alias->get;
Returns all alias configuration.
CONSTANTS
Alias type constants are available from WebService::OPNsense::Constants:
$ALIAS_HOST$ALIAS_NETWORK$ALIAS_PORT$ALIAS_URL$ALIAS_URL_TABLE$ALIAS_ASN$ALIAS_GEOIP$ALIAS_MAC$ALIAS_INTERNAL$ALIAS_EXTERNAL$ALIAS_DYNIPV6HOST$ALIAS_AUTHGROUP$ALIAS_NETWORK_GROUP$ALIAS_URL_JSON
Use them when setting the type field in an alias.
SEE ALSO
WebService::OPNsense::Role::ItemCrud
PROVIDED METHODS
The following methods are inherited from consumed roles.
search_item
my $results = $ctrl->search_item( %params );
Searches for aliases.
get_item
my $alias = $ctrl->get_item( $uuid );
Returns a single alias by UUID. Throws if $uuid is not a valid UUID.
add_item
my $result = $ctrl->add_item( $alias_data );
Creates alias.
set_item
my $result = $ctrl->set_item( $uuid, $alias_data );
Updates alias. Throws if $uuid is not a valid UUID.
del_item
my $result = $ctrl->del_item( $uuid );
Deletes an alias by UUID. Throws if $uuid is not a valid UUID.
client
my $http_client = $ctrl->client;
Returns the underlying HTTP client object used for API requests.
AUTHOR
Dean Hamstead <dean@fragfest.com.au>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2026 by Dean Hamstead.
This is free software, licensed under:
The MIT (X11) License