| XTABLES-NFT(8) | iptables 1.8.11 | XTABLES-NFT(8) |
نام (NAME)
xtables-nft - ابزارهای مبتنی بر چارچوب nftables در iptables
توضیحات (DESCRIPTION)
ابزارهای xtables-nft نسخههایی از iptables هستند که از API مربوط به nftables استفاده میکنند. این مجموعه ابزارها برای کمک به مدیر سیستم جهت مهاجرت مجموعه قوانین از iptables(8)، ip6tables(8)، arptables(8) و ebtables(8) به nftables(8) طراحی شده است.
مجموعه xtables-nft از چند دستور تشکیل شده است:
- •
- iptables-nft
- •
- iptables-nft-save
- •
- iptables-nft-restore
- •
- ip6tables-nft
- •
- ip6tables-nft-save
- •
- ip6tables-nft-restore
- •
- arptables-nft
- •
- ebtables-nft
این ابزارها از افزونههای چارچوب libxtables استفاده کرده و با بهرهگیری از ماژول nft_compat به زیرسیستم هسته nf_tables متصل میشوند.
کاربرد (USAGE)
ابزارهای xtables-nft به شما امکان میدهند تا با استفاده از نحو بومی و اصلی iptables(8)، ip6tables(8)، arptables(8) و ebtables(8)، بکاند nf_tables را مدیریت کنید.
شما باید از ابزارهای xtables-nft دقیقاً به همان شکلی استفاده کنید که از ابزارهای متناظر و اصلی آنها استفاده میکردید.
افزودن یک قاعده منجر به افزوده شدن آن قاعده به زیرسیستم هسته nf_tables میشود. فهرست کردن مجموعه قوانین نیز به همین ترتیب از بکاند nf_tables استفاده خواهد کرد.
هنگام طراحی این ابزارها، ایده اصلی این بود که هر فایل اجرایی سنتی (legacy) با یک پیوند نمادین (symlink) به برنامه xtables-nft جایگزین شود؛ برای نمونه:
/sbin/iptables -> /usr/sbin/iptables-nft-multi /sbin/ip6tables -> /usr/sbin/ip6tables-nft-multi /sbin/arptables -> /usr/sbin/arptables-nft-multi /sbin/ebtables -> /usr/sbin/ebtables-nft-multi
رشته نسخه iptables نشان میدهد که آیا API سنتی (get/setsockopt) استفاده شده است یا API جدید nf_tables:
iptables -V iptables v1.7 (nf_tables)
تفاوتها با نسخه سنتی (DIFFERENCES WITH LEGACY UTILITIES)
به دلیل اینکه ابزارهای xtables-nft از API هسته nf_tables استفاده میکنند، عملیات افزودن و حذف قوانین همواره اتمیک (یکپارچه و تجزیهناپذیر) است. برخلاف iptables-legacy، در iptables-nft -A .. نیازی به دریافت مجموعه قوانین فعلی از هسته، تغییر آن، و بارگذاری مجدد مجموعه قوانین تغییریافته نخواهد بود. در عوض، iptables-nft به هسته اعلام میکند تا یک قاعده را اضافه کند. به همین دلیل، گزینه --wait مربوط به iptables-legacy در iptables-nft هیچ اثری ندارد (no-op است).
استفاده از ابزارهای xtables-nft امکان نظارت بر تغییرات مجموعه قوانین را با استفاده از دستور xtables-monitor(8) فراهم میسازد.
هنگام استفاده از -j TRACE برای اشکالزدایی پیمایش بسته در مجموعه قوانین، توجه داشته باشید که برای به دست آوردن رویدادهای ردیابی نظارتی، باید از xtables-monitor(8) در حالت --trace استفاده کنید.
مثالها (EXAMPLES)
یک مثال پایه، ایجاد ساختار اولیه مجموعه قوانین در nf_tables از طریق ابزارهای xtables-nft بر روی یک سیستم تازه است:
root@machine:~# iptables-nft -L
[...]
root@machine:~# ip6tables-nft -L
[...]
root@machine:~# arptables-nft -L
[...]
root@machine:~# ebtables-nft -L
[...]
root@machine:~# nft list ruleset
table ip filter {
chain INPUT {
type filter hook input priority 0; policy accept;
}
chain FORWARD {
type filter hook forward priority 0; policy accept;
}
chain OUTPUT {
type filter hook output priority 0; policy accept;
}
}
table ip6 filter {
chain INPUT {
type filter hook input priority 0; policy accept;
}
chain FORWARD {
type filter hook forward priority 0; policy accept;
}
chain OUTPUT {
type filter hook output priority 0; policy accept;
}
}
table bridge filter {
chain INPUT {
type filter hook input priority -200; policy accept;
}
chain FORWARD {
type filter hook forward priority -200; policy accept;
}
chain OUTPUT {
type filter hook output priority -200; policy accept;
}
}
table arp filter {
chain INPUT {
type filter hook input priority 0; policy accept;
}
chain FORWARD {
type filter hook forward priority 0; policy accept;
}
chain OUTPUT {
type filter hook output priority 0; policy accept;
}
}
(لطفاً توجه داشته باشید که در سیستمهای تازه، فهرست کردن مجموعه قوانین برای نخستین بار باعث ایجاد تمام جدولها و زنجیرهها میشود).
برای مهاجرت کامل مجموعه قوانین filter، در مورد iptables(8)، میتوانید از دستورات زیر استفاده کنید:
root@machine:~# iptables-legacy-save > myruleset # reads from x_tables root@machine:~# iptables-nft-restore myruleset # writes to nf_tablesیا
root@machine:~# iptables-legacy-save | iptables-translate-restore | less
تا ببینید قوانین در نحو nft(8) چگونه خواهند بود.
محدودیتها (LIMITATIONS)
شما باید از Linux kernel >= 4.17 استفاده کنید.
هدف CLUSTERIP پشتیبانی نمیشود.
برای
دریافت
اطلاعات
بهروز در
این رابطه،
لطفاً به
نشانی زیر
مراجعه
کنید:
https://wiki.nftables.org
همچنین ببینید (SEE ALSO)
نویسندگان (AUTHORS)
چارچوب nftables توسط پروژه Netfilter (https://www.netfilter.org) نوشته شده است.
این صفحه راهنما توسط Arturo Borrero Gonzalez <arturo@debian.org> برای پروژه دبیان نوشته شده است، اما میتواند توسط دیگران نیز استفاده شود.
این مستندات تحت شرایط مجوز GPLv2+ آزاد/رایگان است.
| iptables 1.8.11 |