Linux

CentOS7でiptablesコマンドを使えるようにする

更新日:

CentOS7ではパケットフィルタリング(ファイアウォール)がiptablesからfierwalldに変わりました。そのためCentOS7ではデフォルトでiptablesコマンドが使えません。fierwalldはまだ勉強する気になれませんので使い慣れたiptablesコマンド使えるようにします。

fierwalldサービスの停止

iptablesとfierwalldは併用できないのでfierwalldを停止します。次のコマンドで起動しているかの確認、停止、停止しているか確認を実行します。

# systemctl status firewalld.service
# systemctl stop firewalld.service
# systemctl status firewalld.service

fierwalldサービスの自動起動設定の無効化

fierwalldの自動起動設定を無効化します。無効化しておかないとOS起動時にfierwalldが起動してしまいますからね。

まずは自動起動設定の確認から。CentOS7のデフォルトではfirewalldの自動起動設定は有効化(enabled)されているはずです。

# systemctl list-unit-files firewalld.service
UNIT FILE         STATE
firewalld.service enabled

1 unit files listed.

firewalldサービスの自動起動設定を無効化します。

# systemctl disable firewalld
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service.

無効化されているか確認します。

# systemctl list-unit-files firewalld.service
UNIT FILE         STATE
firewalld.service disabled

1 unit files listed.

iptablesのインストール

次にiptablesをインストールします。iptablesのパッケージ名はiptables-servicesです。

# yum install iptables-services

iptablesコマンドが実行できるか確認します。

# iptables -L

iptablesサービスの起動

iptablesの起動状態を確認して、起動を実施します。

# systemctl status iptables.service
# systemctl start iptables.service
# systemctl status iptables.service

iptablesサービスの自動起動設定の有効化

最後にOSを再起動してもiptablesサービスが使えるように、iptablesサービスの自動起動設定を有効化します。

有効化する前にまずはiptablesサービスの自動起動設定の現状を確認します。

# systemctl list-unit-files iptables.service
UNIT FILE        STATE
iptables.service disabled

1 unit files listed.

無効化されていますね。それでは有効化します。

# systemctl enable iptables.service
Created symlink from /etc/systemd/system/basic.target.wants/iptables.service to /usr/lib/systemd/system/iptables.service.

次のようにenabledと表示されれば有効化は完了です。

# systemctl list-unit-files iptables.service
UNIT FILE        STATE
iptables.service enabled

1 unit files listed.

これで一通り設定は完了です。

-Linux

Copyright© アナグマのモノローグ , 2021 All Rights Reserved Powered by STINGER.