直接选项可以更直接地访问防火墙。这些选项要求用户知道基本的iptables概念,即table(filter / mangle / nat / ...),chain(INPUT / OUTPUT / FORWARD / ...),命令(-A / -D / -I / .. 。),参数(-p / -s / -d / -j / ...)和目标(ACCEPT / DROP / REJECT / ...)。直接选项应该仅作为最后的手段,当它不可能使用时诸如--add-service=‘service’或--add-rich-rule='rule'的命令时。每个选项的第一个参数必须是ipv4或ipv6或eb。使用ipv4,它将用于IPv4(iptables(8)),ipv6用于IPv6(ip6tables(8))和eb用于以太网桥(ethernet bridges)(ebtables(8))。
firewall-cmd --direct --passthrough {ipv4 | ipv6 | eb} <args>
firewall-cmd [--permanent] --direct --add-chain { ipv4 | ipv6 | eb } <table> <chain>
firewall-cmd [--permanent] --direct --remove-chain { ipv4 | ipv6 | eb } <table> <chain>
firewall-cmd [--permanent] --direct --query-chain {ipv4 | ipv6 | eb} <table> <chain>
firewall-cmd [--permanent] --direct --get-chains { ipv4 | ipv6 | eb } <table>
firewall-cmd [--permanent] --direct --add-rule { ipv4 | ipv6 | eb } <table> <chain> <priority> <args>
firewall-cmd [--permanent] --direct --remove-rule { ipv4 | ipv6 | eb } <table> <chain> <args>
firewall-cmd [--permanent] --direct --query-rule { ipv4 | ipv6 | eb } <table> <chain> <args>
firewall-cmd [--permanent] --direct --get-rules { ipv4 | ipv6 | eb } <table> <chain>