urukctl(8)

πŸ“¦
this version Β· 3 versions
, in debian bookworm, debian trixie, ubuntu jammy, ubuntu questing, ubuntu resolute

πŸ’– 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.
  • save ruleset β€” 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 🌸
  • load ruleset β€” 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 to ACCEPT. πŸ’€
  • halt β€” remove all rules and user-defined chains, set default policy to DROP. 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 to false if 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 to false to disable IPv6 support. set to $(enable-ipv6) to dynamically decide wether to filter IPv6 traffic. 🌐
  • enable_uruk_save β€” enable calling the unstable uruk-save script. 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 (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