diff options
author | Alyssa Ross <hi@alyssa.is> | 2023-11-16 12:53:32 +0100 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2023-11-16 12:53:32 +0100 |
commit | 67419f0e56f99b0ebbe14574d3492110ac84c8d6 (patch) | |
tree | 3abc8e1606a2c80b6f5d14fef175e50800202163 /nixpkgs/pkgs/by-name/ni/nixos-firewall-tool/nixos-firewall-tool.sh | |
parent | a2c1eff83c3118a9aee8076c7f84f58137416b6e (diff) | |
parent | 9008bc4eb62c878d0812105ea1b34255d651df88 (diff) | |
download | nixlib-67419f0e56f99b0ebbe14574d3492110ac84c8d6.tar nixlib-67419f0e56f99b0ebbe14574d3492110ac84c8d6.tar.gz nixlib-67419f0e56f99b0ebbe14574d3492110ac84c8d6.tar.bz2 nixlib-67419f0e56f99b0ebbe14574d3492110ac84c8d6.tar.lz nixlib-67419f0e56f99b0ebbe14574d3492110ac84c8d6.tar.xz nixlib-67419f0e56f99b0ebbe14574d3492110ac84c8d6.tar.zst nixlib-67419f0e56f99b0ebbe14574d3492110ac84c8d6.zip |
Merge branch 'nixos-unstable-small' of https://github.com/NixOS/nixpkgs into HEAD
Diffstat (limited to 'nixpkgs/pkgs/by-name/ni/nixos-firewall-tool/nixos-firewall-tool.sh')
-rwxr-xr-x | nixpkgs/pkgs/by-name/ni/nixos-firewall-tool/nixos-firewall-tool.sh | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/by-name/ni/nixos-firewall-tool/nixos-firewall-tool.sh b/nixpkgs/pkgs/by-name/ni/nixos-firewall-tool/nixos-firewall-tool.sh new file mode 100755 index 000000000000..17e7ce8a724c --- /dev/null +++ b/nixpkgs/pkgs/by-name/ni/nixos-firewall-tool/nixos-firewall-tool.sh @@ -0,0 +1,55 @@ +#!/usr/bin/env bash + +set -euo pipefail + +ip46tables() { + iptables -w "$@" + ip6tables -w "$@" + +} + +show_help() { + echo "nixos-firewall-tool" + echo "" + echo "Can temporarily manipulate the NixOS firewall" + echo "" + echo "Open TCP port:" + echo " nixos-firewall-tool open tcp 8888" + echo "" + echo "Show all firewall rules:" + echo " nixos-firewall-tool show" + echo "" + echo "Open UDP port:" + echo " nixos-firewall-tool open udp 51820" + echo "" + echo "Reset firewall configuration to system settings:" + echo " nixos-firewall-tool reset" +} + +if [[ -z ${1+x} ]]; then + show_help + exit 1 +fi + +case $1 in + "open") + protocol="$2" + port="$3" + + ip46tables -I nixos-fw -p "$protocol" --dport "$port" -j nixos-fw-accept + ;; + "show") + ip46tables --numeric --list nixos-fw + ;; + "reset") + systemctl restart firewall.service + ;; + -h|--help|help) + show_help + exit 0 + ;; + *) + show_help + exit 1 + ;; +esac |