目次
iptable-persistentにて接続先の制御が行えることを検証したため、以下にやり方を残しておく。
1.手順
1-1. 仮想マシンを起動する。
1-2. root権限でログインを行う。
本記事ではroot権限で操作を行っているため、sudoは省略している。
1-3. 以下のコマンドで「お天気Webサービス」からデータを取得できるかを確認する。
1-4. 次にiptablesの設定をしていく、下記のディレクトリに移動する。
cd /etc/iptables
1-5. 下記のファイルを開く。
vi rule.v4
1-6. ファイルの内容を下記のように編集する。
[ 編集前 ]
*filter
:INPUT ACCEPT [491:67367]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [481:69267]
COMMIT
1-7. 下記のコマンドで修正したファイルを再度読み込ませる。
/etc/init.d/iptables-persistent reload
1-8. 再度、下記のコマンドでアクセスを行う。
接続が拒否されたため、特定ホストへの内部から外部への接続を拒否できた。
2.iptablesのログを出力できるようにする
2-1.log出力ルールの追加
rule.v4のrejectの前に下記の1行を追加する。
2-2.log出力ディレクトリを作成
下記のコマンドを実行してlogディレクトリを作成する。
$ mkdir -p /var/log/iptables
2-3.rsyslog の設定ファイル作成
/etc/rsyslog.d/にiptables.conf(ファイル名は任意でよい)というファイルを作成します。
※作成しないと、/var/log/message にiptablesのログが出力されます。
※iptalbes_reject_log はrule.v4で、log-prefixに設定した値です。
※二行目の「~」は以降の処理を行わないで、messageのほうに出力されないようにするという意味です。
2-4.rsyslogの設定変更を反映
下記のコマンドでサービス再起動します。
$ service rsyslog restart
2-5.iptablesのルール変更を反映
下記のコマンドでサービス再起動します。
$ service iptables-persistent reload
3.logのローテーション設定の共有
3-1.設定ファイルの作成
/etc/logrotate.d/ にiptablesという名前の設定ファイルを以下の内容で作成
※ファイル名は任意でよい
3-2.rsyslogの再起動
下記のコマンドでrsyslogを再起動する。
$ service rsyslog restart
3-3.設定の確認
下記のコマンドを実行する
$ logrotate -dv /etc/logrotate.d/iptables
3-4.参考サイト
ローテーション処理の内容は以下を参考に
以上