Browse Source

Add FirewallD plugin (#5386)

Marc Cornellà 8 years ago
parent
commit
c3a87e7df8
2 changed files with 39 additions and 0 deletions
  1. 17 0
      plugins/firewalld/firewalld.plugin.zsh
  2. 22 0
      plugins/firewalld/readme.md

+ 17 - 0
plugins/firewalld/firewalld.plugin.zsh

@@ -0,0 +1,17 @@
+alias fw="sudo firewall-cmd"
+alias fwp="sudo firewall-cmd --permanent"
+alias fwr="sudo firewall-cmd --reload"
+alias fwrp="sudo firewall-cmd --runtime-to-permanent"
+
+function fwl () {
+  # converts output to zsh array ()
+  # @f flag split on new line
+  zones=("${(@f)$(sudo firewall-cmd --get-active-zones | grep -v interfaces)}")
+
+  for i in $zones; do
+    sudo firewall-cmd --zone $i --list-all
+  done
+
+  echo 'Direct Rules:'
+  sudo firewall-cmd --direct --get-all-rules
+}

+ 22 - 0
plugins/firewalld/readme.md

@@ -0,0 +1,22 @@
+# FirewallD Plugin
+
+This plugin adds some aliases and functions for FirewallD using the `firewalld-cmd` command. To use it, add firewalld to your plugins array.
+
+```zsh
+plugins=(... firewalld)
+```
+
+## Aliases
+
+| Alias | Command                                    | Description                  |
+| :---- | :----------------------------------------- | :--------------------------- |
+| fw    | `sudo firewall-cmd`                        | Shorthand                    |
+| fwr   | `sudo firewall-cmd --reload`               | Reload current configuration |
+| fwp   | `sudo firewall-cmd --permanent`            | Create permanent rule        |
+| fwrp  | `sudo firewall-cmd --runtime-to-permanent` | Save current configuration   |
+
+## Functions
+
+| Function | Description                                                |
+| :------- | :--------------------------------------------------------- |
+| fwl      | Lists configuration from all active zones and direct rules |