CentOSを実行するランプスタックを備えた開発サーバーがあります。
[Prompt]# cat /etc/redhat-release
CentOS release 5.8 (Final)
[Prompt]# cat /proc/version
Linux version 2.6.18-308.16.1.el5xen ([email protected]) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-52)) #1 SMP Tue Oct 2 22:50:05 EDT 2012
[Prompt]# yum info iptables
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror.anl.gov
* extras: centos.mirrors.tds.net
* rpmfusion-free-updates: mirror.us.leaseweb.net
* rpmfusion-nonfree-updates: mirror.us.leaseweb.net
* updates: mirror.steadfast.net
Installed Packages
Name : iptables
Arch : x86_64
Version : 1.3.5
Release : 9.1.el5
Size : 661 k
Repo : installed
.... Snip....
私が走ると:
service --status-all
出力の一部は次のようになります。
.... Snip....
httpd (pid xxxxx) is running...
Firewall is stopped.
Table: filter
Chain INPUT (policy DROP)
num target prot opt source destination
1 RH-Firewall-1-INPUT all -- 0.0.0.0/0 0.0.0.0/0
Chain FORWARD (policy DROP)
num target prot opt source destination
1 RH-Firewall-1-INPUT all -- 0.0.0.0/0 0.0.0.0/0
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
Chain RH-Firewall-1-INPUT (2 references)
....Snip....
iptablesはカーネルにロードされており、表示されているルールによって表されるようにアクティブです。
Iptablesだけをチェックすると、status allと同じようにルールが返されます。
[Prompt]# service iptables status
Table: filter
Chain INPUT (policy DROP)
num target prot opt source destination
1 RH-Firewall-1-INPUT all -- 0.0.0.0/0 0.0.0.0/0
Chain FORWARD (policy DROP)
num target prot opt source destination
1 RH-Firewall-1-INPUT all -- 0.0.0.0/0 0.0.0.0/0
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
Chain RH-Firewall-1-INPUT (2 references)
.... Snip....
Iptablesを起動または再起動すると、iptablesがカーネルに正常にロードされたことを示します。
[Prompt]# service iptables restart
Flushing firewall rules: [ OK ]
Setting chains to policy ACCEPT: filter [ OK ]
Unloading iptables modules: [ OK ]
Applying iptables firewall rules: [ OK ]
Loading additional iptables modules: ip_conntrack_netbios_n[ OK ]
[Prompt]# service iptables start
Flushing firewall rules: [ OK ]
Setting chains to policy ACCEPT: filter [ OK ]
Unloading iptables modules: [ OK ]
Applying iptables firewall rules: [ OK ]
Loading additional iptables modules: ip_conntrack_netbios_n[ OK ]
「ファイアウォールが停止しました」とググった。そして、いくつかのiptablesガイドとRHELのドキュメントを読んでください。
私の知る限り、「ファイアウォール」サービスはないので、"Firewall is stopped."
という行は何を指しているのですか?
[〜#〜] edit [〜#〜]-ここにいくつかの追加情報があります。
「ファイアウォールが停止しています」にもかかわらず、iptablesが機能しているサービスステータスからの出力。
Sshアクセスを1つのIPアドレスのみ(IPアドレスではない)に制限するルールをiptablesに追加しましたが、iptablesを再起動した後、ログインできませんでした。
2つの項目がservice --status-all
で次々に出力されるのは、サービスがアルファベット順に出力されるためです(単なる推測)。
それで、なぜ「ファイアウォールが停止している」と私が見たのか、誰かが説明できますか。 iptablesルールが有効で正しく機能しているにもかかわらず、サービスステータスは出力されますか?
ソリューション
「ファイアウォールは停止しています。」 iptablesまたはip6tablesのいずれかがオフになっている場合、メッセージが表示されます。
両方ともオフの場合、(まったく同じ)メッセージが2回表示されます(ip6のメッセージがip6を参照していることを示していたら、それはいいことではないでしょうか)。
サービスがオンの場合にもエラーメッセージが表示されますが、ルールテーブルが空です(私の場合ip6の場合)。
@Alexander Janssenが提供する情報。 CentOS 5.8のデフォルトのip6ルールセットへのリンクについては、回答を参照してください。
編集:OPとチャットした後、次の事実を述べることができます。
サービスiptables
およびip6tables
を指します。
エラーメッセージは、サービスip6tables
が(chkconfig
によって)オンのときに表示されますが、ルールはありません。
標準のCentOS 5.8インストールで指定されているデフォルトのIPv6ルールを設定することをお勧めします。 これは参照として を取ることができます。これは、標準の5.8インストールから取得されました。
すべてが今整理されていることを願っています:)