iptables-nftとは?初心者が知っておくべき基礎と使い方ガイド共起語・同意語・対義語も併せて解説!

  • このエントリーをはてなブックマークに追加
iptables-nftとは?初心者が知っておくべき基礎と使い方ガイド共起語・同意語・対義語も併せて解説!
この記事を書いた人

高岡智則

年齢:33歳 性別:男性 職業:Webディレクター(兼ライティング・SNS運用担当) 居住地:東京都杉並区・永福町の1LDKマンション 出身地:神奈川県川崎市 身長:176cm 体系:細身〜普通(最近ちょっとお腹が気になる) 血液型:A型 誕生日:1992年11月20日 最終学歴:明治大学・情報コミュニケーション学部卒 通勤:京王井の頭線で渋谷まで(通勤20分) 家族構成:一人暮らし、実家には両親と2歳下の妹 恋愛事情:独身。彼女は2年いない(本人は「忙しいだけ」と言い張る)


iptables-nftとは?

iptables-nftは、Linuxのファイアウォール設定を行う道具のひとつです。名前にある iptables-nft は、実際には nftables という新しい仕組みをバックエンドに使い、従来の iptables のコマンド感覚でルールを作れるようにする「互換性のあるツール」です。

2020年ごろから多くの Linux ディストリビューションで nftables が推奨されるようになりましたが、古いスクリプトや習慣には iptables の書き方を使い続けたい人もいます。そこで iptables-nft が登場しました。これを使えば、これまでの iptables のコマンドを nftables ベースのバックエンドで実行し、同じ感覚でファイアウォールを構築できます。

iptables-nftと nftables の関係

nftables は、iptables の後継として作られた新しいファイアウォールフレームワークです。ルールの書き方が少し変わることもある一方で、iptables-nft は「iptables の書き方をそのまま使えるようにする橋渡し」です。つまり、従来の iptables のコマンドを使いながら、実際には nftables の仕組みが動いています。

基本的な使い方の考え方

使い方のポイントは、ルールの「チェーン」と「テーブル」という箱の概念を理解することです。テーブルはルールの集合を入れる箱、チェーンはパケットの流れを処理する道順です。INPUT・OUTPUT・FORWARD などのチェーンが代表的です。iptables-nft ではこの考え方を、そのままコマンドにも反映させています。

代表的なコマンドと例

コマンド・用途
iptables-nft -L現在のルールを一覧表示します。
iptables-nft -A INPUT -p tcp --dport 22 -j ACCEPTSSH 通信を許可する例です。新しい接続を許可します。
iptables-nft -P INPUT DROPINPUT チェーンのデフォルト動作を拒否にします。新しいパケットはすべて落とされます。

インストールと基本設定の一例

多くの Linux ディストリビューションでは、次のようにして iptables-nft を導入します。sudo apt-get update の後に sudo apt-get install iptables-nft を実行するのが一般的です。Red Hat 系なら sudo dnf install iptables-nft となることがあります。インストール後は再起動や再ログインが必要になる場合があります。

インストールができたら、まずは小さなルールから始めましょう。例えば、リモートからの SSH のセッションを安全な状態で許可し、他は拒否するような基本形を作ると良いです。

実践演習の例

自分の家のサーバーを想定して、ウェブを公開する場合の最小限のルール例を紹介します。以下のルールは「初期設定で安全性を確保しつつ、必要な通信だけを許可する」イメージです。

ルール意味
iptables-nft -A INPUT -i lo -j ACCEPTループバックインターフェースからの通信を許可
iptables-nft -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT既に確立した接続のパケットを許可
iptables-nft -A INPUT -p tcp --dport 80 -j ACCEPTWebの標準ポートを許可
iptables-nft -A INPUT -p tcp --dport 443 -j ACCEPTHTTPSを許可
iptables-nft -P INPUT DROPその他は全て拒否

実務での注意点

ファイアウォールの設定を変えると、サーバーに自分でアクセスできなくなるリスクがあります。作業するときは、必ず別の接続経路(コンソールなど)を用意しておくと安心です。設定をすぐに反映させたい場合には、ルールを一つずつ追加し、動作を確認しながら進めてください。テスト用の環境で先に試すのもおすすめの方法です。

用語の定義

テーブル:ルールを格納する「箱」のこと。複数のチェーンを含みます。
チェーンパケットを処理する順序の集合。INPUT・OUTPUT などがあります。
バックエンド:実際の処理を担う部分のこと。iptables-nft は nftables をバックエンドに用います。

まとめ

iptables-nft は、従来の iptables の感覚を保ちつつ、現代の nftables を使って firewall を管理する便利なツールです。初心者でも基本を押さえれば、ルールの追加や変更を安全に行うことが可能です。最初は簡単なルールから始めて、慣れてきたら複雑な条件やログの取り方にも挑戦してみましょう。


iptables-nftの同意語

iptables-nft
nftables ベースのバックエンドを使って、iptables コマンドを nftables 上で実行可能にする互換実装。
nftables ベースの iptables 互換バックエンド
nftables をバックエンドとして採用する、iptables の互換機能。
iptables の NFT 互換モード
iptables コマンドを nftables 互換の挙動で動作させるモード。
NFT バックエンドを使う iptables
iptables が NFT バックエンドを利用して動作する構成。
iptables-nft 互換バックエンド
iptables-nft が提供する nftables 互換バックエンド。
iptables-nft のバックエンド機能
iptables-nft が提供する nftables バックエンド機能の総称。
nftables へのiptables の橋渡し
iptables のルールを nftables へ適用・橋渡しする仕組み
iptables-nft 実装
nftables 互換を実現する iptables-nft の実装側の意味合い。
iptables-nft (NFTバックエンド)
iptables の NFT バックエンドとしての iptables-nft の表現。

iptables-nftの対義語・反対語

nftables直接運用
iptables-nftはiptablesの互換層として、nftablesをバックエンドに使います。対義語として、nftablesを直接使用する運用を指します。具体的にはnftコマンドでテーブル・チェーンを管理する形です。
iptables-legacy
旧来の、ネイティブのiptablesバックエンドを使う運用。iptables-nftがnftablesバックエンドを使うのに対して、従来型のバックエンドを選ぶケースを指します。
firewalld
daemon型のファイアウォール管理ツール。iptables-nftのような直接的なルール編集ではなく、ゾーンやサービスベースで動的に管理します。
ufw
簡易なインターフェースでファイアウォールを設定するツール。初心者向けの手軽さを重視する対義的な運用です。
nftコマンド
nftコマンドは nftables の公式CLI。iptables-nftの対義語として、直接nftablesを操作する場合に使います。
ファイアウォール無し
ファイアウォールを使わない設定。セキュリティ防御を欠く対概念として挙げられます。

iptables-nftの共起語

nftables
Linuxの新世代のパケットフィルタ機能で、iptables-nftはこのバックエンドを利用して動作します。従来のiptablesと互換性を保ちながら、より柔軟で高速なルール管理を提供します。
netfilter
カーネル内のパケット処理フレームワーク。iptables-nftはnetfilterのAPIを介してルールを適用します。
iptables-nft
iptablesコマンド互換のCLIで、バックエンドにnftablesを使用する形態。従来のiptablesの感覚で使えつつ、現代的な機能を活用できます。
iptables-legacy
従来のiptablesバックエンド。iptables-nftへの移行対象として比較されることがあります。
nft
nftablesのコマンドラインツール。iptables-nftは内部でこのバックエンドを活用します。
kernel
Linuxカーネル。netfilterやiptables-nftはカーネル機能に依存します。
Linux
Linuxオペレーティングシステム。サーバーやデスクトップでファイアウォール設定に使われます。
firewall
不正な通信を遮断する防御機構。iptables-nftはその実装の一つです。
rule
1つの適用規則。条件とアクションを組み合わせてパケットを処理します。
rules
複数のルールを集めた集合。テーブルとチェーンごとに管理します。
table
ルールを分類する枠組み。代表的なものに filter、nat、mangle、raw などがあります。
filter
デフォルトのパケット通過を決定するテーブル。主に許可/拒否の基本ルールを扱います。
nat
Network Address Translationを扱うテーブル。アドレス変換(DNAT/SNAT、MASQUERADEなど)を定義します。
mangle
パケットの変更やマーク付けなど、詳細な操作を行うテーブル。
raw
特殊な前処理を記述するテーブル。特定の条件で素早く処理したい場合に使われます。
security
セキュリティ関連の拡張領域や概念。必要に応じて利用します。
INPUT
受信パケットに適用されるチェーン。
OUTPUT
送信パケットに適用されるチェーン。
FORWARD
ルータ機能を持つ場合の転送パケットに適用されるチェーン。
PREROUTING
ルーティング決定前に適用されるチェーン。
POSTROUTING
ルーティング決定後に適用されるチェーン。
ACCEPT
パケットを通過させるアクション。
DROP
パケットを破棄するアクション。
REJECT
拒否応答を返してパケットを破棄するアクション。
LOG
パケット情報をログに記録するアクション。
MASQUERADE
動的なNATで送信元アドレスを偽装する操作。主にLAN→インターネットの出力で使用。
DNAT
宛先アドレスを書き換えるNATの操作。
SNAT
送信元アドレスを書き換えるNATの操作。
conntrack
コネクション追跡機能。状態を管理してRELATED/ESTABLISHEDなどを扱います。
ESTABLISHED
すでに確立済みの接続を意味します。
RELATED
関連する新規接続を含めた状態を扱います。
NEW
新しい接続の試みを指します。
state
状態マッチャー(state/conntrack)。
tcp
TCPプロトコルを対象としたマッチ条件。
udp
UDPプロトコルを対象としたマッチ条件。
icmp
ICMPプロトコルを対象としたマッチ条件。
dport
宛先ポートを指定するマッチ条件。
sport
送信元ポートを指定するマッチ条件。
src
送信元アドレスの指定。
dst
宛先アドレスの指定。
IPv4
IPv4アドレス・ルールの適用対象。
IPv6
IPv6アドレス・ルールの適用対象。
iptables-save
現在のルールをファイルに保存するコマンド。
iptables-restore
保存したルールをファイルから復元するコマンド。
migration
iptables-legacyからiptables-nftまたはnftablesへの移行作業。
compatibility
互換性を保つための設計思想。旧規格との共存を支援します。
conversion
既存のiptablesルールをnftables/iptables-nftで動作させるための変換作業。
nft-backend
nftablesバックエンドを指す表現。iptables-nftはこれを利用します。
syntax
iptablesとnftablesの記法・構文の違いを理解するポイント
iptables
従来のiptablesコマンド。iptables-nftはこのコマンドの互換実装です。
ip6tables
IPv6用のiptables互換コマンド。IPv6のルール管理に使います。
interface
ネットワークインターフェース名(例: eth0、enp3s0)。
logging
パケットの動作をログに残す設定や機能。

iptables-nftの関連用語

iptables-nft
iptablesコマンドの機能をnftablesバックエンドで実現する互換レイヤー。従来のiptablesルールをそのまま利用できるよう、iptables風の操作感を提供します。
nftables
Netfilterの新世代バックエンド・フレームワーク。テーブル・チェーン・ルール・セット・マップ・表現式を組み合わせてルールを作成する、柔軟で拡張性の高い設計です。
nft
nftablesを操作するためのコマンドラインツール。ルールの追加・編集・表示などを行います。
iptables-legacy
従来のiptablesバックエンドを指す名称。古いNetfilter実装で動作するiptables系の実装です。
netfilter
カーネル内部のパケット処理・ファイアウォール・NATなどを司る基盤となるフレームワーク。
nf_tables
nf_tablesはNetfilterの新しいバックエンドを指す名称。nftablesやiptables-nftがこのバックエンドを利用します。
conntrack
接続追跡機構。状態(NEW/ESTABLISHED/RELATED/INVALID)を把握し、状態に応じたルール適用を可能にします。
NAT
Network Address Translationの略。内部と外部のIPアドレスを変換して、複数端末でのインターネット接続を可能にします。
SNAT
Source NAT。送信元アドレスを別のアドレスに書き換えるNATの一種です。
DNAT
Destination NAT。宛先アドレスを別の内部アドレスへ書き換えるNATの一種です。
MASQUERADE
動的なSNATの一種。外部インターフェースのIPを動的に使用してNATを行います。
NAT table
NAT関連のルールを格納するテーブル(チェーンやルールを含む)。
inet
IPv4とIPv6のデュアルスタックを扱えるファミリー。table inet で使用します。
ip
IPv4専用のファミリー。table ip で使用します。
ip6
IPv6専用のファミリー。table ip6 または table inet で使用します。
chains
ルールの集合をグループ化する枠組み。パケットがどのチェーンを経由するかを決定します。
rules
パケットに対して適用する条件と動作を定義する最小単位。マッチ条件とアクションを組み合わせます。
sets
ルール内で再利用できる、IPアドレス列やポート番号などの集合データ構造。
maps
キーと値の対応関係を表すデータ構造。ルール内で動的参照に使用します。
expressions
ルールを構成する基本的要素。比較・計算・ペイロード参照などを組み合わせて判定を作ります。
verdicts
ルール適用後の結末。一般にACCEPT、DROP、REJECT、CONTINUE等を指します。
accept
パケットを許可して処理を継続/通過させる verdict。
drop
パケットを破棄して処理を終了させる verdict。
reject
パケットを拒否し、拒否通知を返す verdict。
log
マッチしたパケット情報をログに記録します。デバッグや監視に活用。
counter
ルールがマッチした回数をカウントする機能。統計取得に便利。
iifname
入力インターフェース名でマッチさせる条件。
oifname
出力インターフェース名でマッチさせる条件。
ct state
conntrackの状態でマッチさせる条件。
NEW
新規の接続として扱われる状態。
ESTABLISHED
既に確立している接続の状態。
RELATED
新しい関連接続を代表する状態。

インターネット・コンピュータの人気記事

awstatsとは?初心者でもわかる使い方と基本解説共起語・同意語・対義語も併せて解説!
14593viws
bing・とは?初心者のための基本ガイド:検索エンジンの仕組みと使い方共起語・同意語・対義語も併せて解説!
2434viws
着信転送とは?初心者向けガイドで分かる使い方と設定のコツ共起語・同意語・対義語も併せて解説!
1083viws
差し込み印刷・とは?初心者でもすぐわかる使い方と仕組みガイド共起語・同意語・対義語も併せて解説!
1064viws
com端子・とは?初心者にも分かる基礎ガイド|シリアルポートの使い方と歴史を解説共起語・同意語・対義語も併せて解説!
950viws
充電アダプターとは何かを徹底解説|初心者でも分かる基本と選び方のコツ共起語・同意語・対義語も併せて解説!
916viws
7zファイル・とは?初心者でもわかる使い方と特徴を解説共起語・同意語・対義語も併せて解説!
865viws
全角文字とは?初心者向け解説|全角と半角の違いをやさしく学ぶ共起語・同意語・対義語も併せて解説!
858viws
pinロックとは?初心者が知っておくべき基本と使い方ガイド共起語・同意語・対義語も併せて解説!
806viws
リマインドメールとは?初心者にもわかる基本ガイドと使い方のコツ共起語・同意語・対義語も併せて解説!
801viws
none とは?初心者にもやさしく解説する意味と使い方ガイド共起語・同意語・対義語も併せて解説!
733viws
16進数カラーコード・とは?初心者でもつまずかない基礎と使い方ガイド共起語・同意語・対義語も併せて解説!
717viws
xlsmとは?初心者でも分かるExcelのマクロ付きファイルの基本共起語・同意語・対義語も併せて解説!
613viws
asp・とは?初心者向けに徹底解説する基本と使い方ガイド共起語・同意語・対義語も併せて解説!
607viws
ローカルポート・とは?初心者にも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
596viws
countifとは?初心者でもすぐ使える基本と応用ガイド共起語・同意語・対義語も併せて解説!
556viws
ワンタイムコード・とは?初心者でも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
536viws
csvダウンロードとは?初心者が今すぐ使える基本ガイド共起語・同意語・対義語も併せて解説!
515viws
sha256とは?初心者が知るべき暗号ハッシュの基礎と使い道共起語・同意語・対義語も併せて解説!
495viws
googleドキュメントとは?初心者が今日から使いこなす基本ガイド共起語・同意語・対義語も併せて解説!
483viws

新着記事

インターネット・コンピュータの関連記事