urukctl(8)
π urukctl β the uruk control script π
okay bestie, this is urukctl(8), straight out of the SYSTEM ADMINISTRATION chapter of the manual. she's the lil control script that runs the whole uruk situation. let's get into it β¨
β¨ NAME β¨
urukctl β uruk control script π
πΈ SYNOPSIS πΈ
urukctl command [argument]
π¦ DESCRIPTION π¦
okay so. urukctl is the user interface for the uruk system. she's your girl for:
- creating or changing saved iptables rulesets
- changing the current loaded rulesets
- reporting on uruk's status
if you're just getting started with the Uruk system and you want the full tutorial energy, go read uruk(8) first β that's where the getting-started stuff lives. this manpage is just the details on urukctl itself. iykyk π
the urukctl script calls uruk to process /etc/uruk/rc. (and plot twist: the uruk init script calls urukctl. it's giving chain reaction π)
here's the thing β there are 4 ruleset pairs chillin' in a system that uses uruk, for both IPv4 and IPv6:
- the ruleset as expressed in the uruk configuration
/etc/uruk/rc - the 2 saved rulesets in
/var/lib/{iptables,ip6tables}/{active,inactive} - the ruleset as currently loaded in the running kernel
- optional: more rulesets saved in
/var/lib/{iptables,ip6tables}
four whole pairs. main character lineup fr π«Ά
π«§ arguments π«§
urukctl should be called as either urukctl argument or urukctl argument option. possible values are:
startβ if it's not done yet, save the current iptables status in the"inactive"ruleset. then (re)build and load the"active"ruleset. no cap, this is the classic.saveruleset β save the current iptables status in the given ruleset. πΎcreate<active|inactive> β create an"active"or"inactive"ruleset with sane defaults:"active"gets based on the uruk rc file, and"inactive"just allows all traffic. she's permissive like that πΈloadruleset β load a saved ruleset π₯reloadβ (re)build and load the"active"ruleset, but without temporarily clearing the current iptables status. gentle queen behavior β¨force-reloadβ (re)build and load the"active"ruleset, in case uruk is running. for the girlies who need it to Just Happen π₯stopβ load the"inactive"ruleset.restartβ perform stop-actions followed by start-actions. the full character arc π«statusβ print the current status of the service: show which ruleset is loaded, and wether uruk is"running". yes bestie, gaze upon her π§clearβ remove all rules and user-defined chains, set default policy toACCEPT. πhaltβ remove all rules and user-defined chains, set default policy toDROP. okay this one is not playing around πflushβ flush all rules from the current iptables status.
π§Ύ configuration π§Ύ
urukctl uses /etc/default/uruk (on Debian, Ubuntu and related systems) or /etc/sysconfig/uruk (on Red Hat, Fedora and related systems) for configuration. the variables used in this file are:
enable_uruk_checkβ wether to check for existence and sanity of the uruk rc file; set tofalseif you don't like this, e.g. when using the uruk initscript for managing saved rulesets only (i.e. not for calling uruk or uruk-save).enable_ipv6β set tofalseto disable IPv6 support. set to$(enable-ipv6)to dynamically decide wether to filter IPv6 traffic. πenable_uruk_saveβ enable calling the unstableuruk-savescript. heads up bestie, she said unstable πenable_autosaveβ set to"false"to disable autosaving the active ruleset when going from start to stop.enable_save_countersβ set to"false"to disable saving table counters with rulesets.
π SEE ALSO π
uruk(8), uruk-rc(5), uruk-save(8). the Uruk homepage is at http://mdcc.cx/uruk/ .
iptables(8), iptables-save(8), iptables-restore(8), ip6tables(8), ip6tables-save(8), ip6tables-restore(8), http://www.netfilter.org/
interfaces(5), http://packages.debian.org/ifupdown.
π COPYRIGHT π
Copyright (C) 2013 Joost van Baal-IliΔ <joostvb-uruk@mdcc.cx>
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 3 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/.
β AUTHOR β
Joost van Baal-IliΔ <joostvb-uruk@mdcc.cx>
okay that's the whole page, you ate that π
this was urukctl 20190121 from 21 ΡΠ°Π½ 2019, and that's the vibe check, periodt πβ¨π¦
π¦ where this page comes from
- debian bookworm: uruk 20190121-2.1 Β· GPL-3.0-or-later
- debian trixie: uruk 20240930-1 Β· GPL-3.0-or-later
- ubuntu jammy: uruk 20190121-2 Β· GPL-3.0-or-later
- ubuntu questing: uruk 20240930-1
- ubuntu resolute: uruk 20240930-1build1 Β· GPL-3.0-or-later
- Copyright (c) 2019 Joost van Baal-IliΔ <joostvb-uruk@mdcc\&.cx>
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms