web-dev-qa-db-ja.com

systemdでiptablesログを表示するには

Debian Jessieを使用したシステムがあります。 systemdが付属しています。 iptablesのカーネルログを見たい。

Iptablesがたくさんあり、最後に許可されないものをログに記録したいと思います。私はそれをこのようにします:

iptables -A INPUT -j LOG

Syslogを使用すると、iptablesのログで次のように表示されます。tail -f /var/log/syslog | grep kernel systemdでは、何が失敗しているかを確認する方法が見つかりません。私はjournalctljournalctl -fを試しています。 journalctlだけでたくさんのことがわかりますが、興味のないもののgrep -vを実行しても、iptablesについては何も表示されません。

また、カーネルメッセージを表示するはずのものを試しましたが、ロギングが開始されたときに何も表示されません。

journalctl -k

Iptablesがサービスかどうかを確認しようとしていますが、次のように表示できません。

systemctl --full list-units --type=service

Systemdとログ全般についてこの投稿を試してみましたが、iptablesのログをどのように表示できるかについてはまだわかりません: https://www.digitalocean.com/community/tutorials/how-to-use- journalctl-to-view-and-manipulate-systemd-logs

ヒントはありますか?どうもありがとうございました。

5
Francesc Guasch

Debian Jessieは、デフォルトではsyslogサポートを削除しません。以前の方法(ログの確認)は引き続き機能します。

自分でsyslogを誤って削除してしまった場合は、再インストールします。

apt install rsyslog
1
Wouter Verhelst

iptables -j LOGはカーネルに記録されます。探すIN=およびOUT=のいずれかkernel.log(systemdログがドライブにある場合)またはjournalctl -k、おそらくdmesgもそれらをリストします。例:

journalctl -k | grep "IN=.*OUT=.*" | less
1
DjangoAsyl

ログレベルで遊んでみてください:journalctl -k --priority=[0-7]または追加--log-level=[0-7]の後に-j LOG to iptables、またはその両方を使用すると、これらのログを検索するレベルを明確に知ることができます。

0
Alexander