22 lines
747 B
Bash
22 lines
747 B
Bash
#!/usr/bin/bash
|
|
|
|
# exit if not running as root. Because other user don't have privileges to start/stop firewalld.
|
|
[[ "${UID}" -eq "0" ]] || exit 0
|
|
|
|
if [[ "${PAM_USER}" =~ -exam$ ]]; then
|
|
systemctl start firewalld.service
|
|
if [[ -f /usr/local/sbin/no-way-out-nftable ]]; then
|
|
/usr/local/sbin/no-way-out-nftable || true
|
|
fi
|
|
if systemctl is-enabled --quiet libvirtd.service; then
|
|
systemctl restart libvirtd.service
|
|
fi
|
|
elif ! (users | grep -q -- "-exam"); then
|
|
if /usr/sbin/nft list tables | /usr/bin/grep -q filtermacvtap; then
|
|
/usr/sbin/nft delete table netdev filtermacvtap || true
|
|
fi
|
|
systemctl stop firewalld.service
|
|
if systemctl is-enabled --quiet libvirtd.service; then
|
|
systemctl restart libvirtd.service
|
|
fi
|
|
fi
|