私はSolaris 11.1でIPフィルタを動作させようとしています。
私は公式に従うSolaris 11.1 ガイド。
ipf.conf
ホストの起動時に予想される情報を受信できません。内容は次のとおりです svccfg -s ipfilter:default listprop
。
config application
config/ipf6_config_file astring /etc/ipf/ipf6.conf
config/ipnat_config_file astring /etc/ipf/ipnat.conf
config/ippool_config_file astring /etc/ipf/ippool.conf
firewall_config_default com.sun,fw_configuration
firewall_config_default/apply_to astring
firewall_config_default/exceptions astring
firewall_config_default/open_ports astring
firewall_config_default/value_authorization astring solaris.smf.value.firewall.config
firewall_config_default/version count 1
firewall_config_default/policy astring custom
firewall_config_default/custom_policy_file astring /etc/ipf/ipf.conf
firewall_config_override com.sun,fw_configuration
firewall_config_override/apply_to astring
firewall_config_override/policy astring none
firewall_config_override/value_authorization astring solaris.smf.value.firewall.config
general framework
general/complete astring
general/enabled boolean true
restarter framework NONPERSISTENT
restarter/logfile astring /var/svc/log/network-ipfilter:default.log
restarter/contract count 7951
restarter/start_pid count 4031
restarter/start_method_timestamp time 1354809979.642008000
restarter/start_method_waitstatus integer 0
restarter/auxiliary_state astring dependencies_satisfied
restarter/next_state astring none
restarter/state astring online
restarter/state_timestamp time 1354809979.645753000
上記では、それを受け入れて/etc/ipf/ipf.conf
使用すると予想しました。しかし実際にはそうではありません!代わりに空のルールセットを使用します。
始めた後、私は以下を持っています:
$ svcs network/ipfilter
STATE STIME FMRI
online 17:06:19 svc:/network/ipfilter:default
$ ipfstat -io
empty list for ipfilter(out)
empty list for ipfilter(in)
プロファイルを手動で有効にするとipf -Fa -f /etc/ipf/ipf.conf
正常に機能するため、SMF が期待どおりに機能しないことになります。
私はSMFがIPFilterに対して実行するスクリプトを読んで見ようとしました。しかし、詰まっています。私が理解できるよりも複雑です。
おそらく、これがSolarisの自動ネットワーク構成機能に関連しているのでしょうか。
かなり複雑なSMFスクリプトが、選択した内容のいくつかの出力をコンソール(およびSMFログファイル)に出力できると便利です。残念ながら、これは本当ではありません。
私のホストは排他的なIPスタックを持つ非大域ゾーンです。
私は何を見落としましたか?
ベストアンサー1
私は成功した!
Solaris 11.1の公式Solarisドキュメントにバグがあることがわかりました。
何をすべきか教えてください:
$ svccfg -s ipfilter:default setpropfirewall_config_default/policy = astring:"custom" $ svccfg -s ipfilter:デフォルトの setpropfirewall_config_default/custom_policy_file = astring:"/etc/ipf/myorg.ipf.conf"
しかし、詳しく見ると、その文に間違いがあることがわかります。 「atring:」と実際の値の間にスペースはありません!
svccfg
これについて文句を言わないでしょう。注意深い!
簡単に言えば、私が最初にしたことは次のとおりです(私の設定ファイルは/etc/ipf/ipf.conf
私にとって最も自然に見えました)。
$ svccfg -s ipfilter:default setpropfirewall_config_default/policy = astring:"custom" $ svccfg -s ipfilter:デフォルトの setpropfirewall_config_default/custom_policy_file = astring:"/etc/ipf/ipf.conf"
それから、空きスペースがあることに気づき、こうしました。
$ svccfg -s ipfilter:デフォルトの setpropfirewall_config_default/policy = "カスタム" $ svccfg -s ipfilter:デフォルトの setpropfirewall_config_default/custom_policy_file = "/etc/ipf/ipf.conf"
それから質問を投稿しました。ご覧のとおり、出力svccfg -s ipfilter:default listprop
はその時点でも正しく表示されます。しかし、それはうまくいきませんでした。理由を説明できません。
私はついにやりました:
$ svccfg -s ipfilter:default setpropfirewall_config_default/policy = astring: "カスタム" $ svccfg -s ipfilter:default setpropfirewall_config_default/custom_policy_file = astring: "/etc/ipf/ipf.conf"
…それがすべてを変えるようだった。