SUSE Linux Enterpriseの特殊機能

CUPSの多くの機能は、SUSE Linux Enterpriseで使用できるように調整されています。ここでは、最も重要な変更点について説明します。

CUPSとファイアウォール

デフォルトのSUSE Linux Enterpriseインストールを実行した後、SuSEfirewall2はアクティブになり、外部ネットワークデバイスは着信トラフィックをブロックする外部ゾーンに設定されます。これらのデフォルト設定は、CUPSを使用するときに調整します。SUSEfirewall2設定の詳細については、43.4項 「SuSEfirewall2」を参照してください。

CUPSクライアント

通常、CUPSクライアントはファイアウォール内部のネットワーク上の通常のワークステージョンで実行されます。この場合、外部ネットワークデバイスを内部ゾーンに設定し、ワークステーションにネットワーク内部から到達できるようにすることを推奨します。

CUPSサーバ

CUPSサーバがファイアウォールで保護されたネットワークの一部の場合、外部ねとワークデバイスはファイアウォールの内部ゾーンに設定します。外部ゾーンの一部になると、TCPおよびUDPポート631を開いて、CUPSサーバをネットワークで使用できるようにする必要があります。

CUPS印刷サービスの変更点

BrowseAllowBrowseDenyの一般化された機能

BrowseAllowBrowseDenyに対して設定されたアクセスパーミッションは、cupsdに対して送信されたすべてのタイプのパッケージに適用されます。/etc/cups/cupsd.conf内にあるデフォルトの設定値は、次のとおりです。

BrowseAllow @LOCAL
BrowseDeny All

および

<Location />
  Order Deny,Allow
  Deny From All
  Allow From 127.0.0.1
  Allow From 127.0.0.2
  Allow From @LOCAL
</Location>

この方法では、LOCALホストだけが、CUPSサーバ上のcupsdにアクセスできます。LOCALホストとは、PPPインタフェース以外(より正確に表現すると、IFF_POINTOPOINTフラグがセットされていないインタフェース)に所属するIPアドレスを使用し、そのIPアドレスがCUPSサーバと同じネットワークに所属しているホストのことです。他のすべてのホストから着信したパケットは、即座に拒否されます。

cupsdがデフォルトで有効化

標準的なインストールでは、cupsdは自動的に有効になり、追加で手動の操作を行うことなく、CUPSネットワークサーバのキューに対して適切にアクセスすることができます。この機能を使用するには、23.8.2.1項 「BrowseAllowBrowseDenyの一般化された機能」内の項目が必須の前提条件になります。それらが満たされていない場合、cupsdを自動的に有効にする状況で、セキュリティが不十分になります。

各種パッケージ内のPPDファイル

YaSTのプリンタ設定機能は、/usr/share/cups/model/内に記述されたPPDファイルのみを使用して、CUPS用のキューをセットアップします。プリンタモデルに適したPPDファイルを決定するために、YaSTはハードウェア検出の際に判断されたベンダおよびモデルを、システムの/usr/share/cups/model/内で使用可能なすべてのPPDファイル内にあるベンダおよびモデルと比較します。この目的で、YaSTのプリンタ設定機能は、PPDファイルから抽出したベンダおよびモデルの情報に基づいて、データベースを生成します。ベンダおよびモデルのリストから特定のプリンタを選択した場合、そのベンダおよびモデルに対応するPPDファイルを受け取ることになります。

PPDファイルのみを使用し、他の情報ソースを使用しない設定には、/usr/share/cups/model/内のPPDファイルを自由に変更できるという利点があります。YaSTのプリンタ設定機能は、変更結果を認識し、ベンダおよびモデルからなるデータベースを再生成します。たとえば、PostScriptプリンタのみを使用している場合、通常はcups-driversパッケージ内にあるFoomatic PPDファイルや、cups-drivers-stpパッケージ内にあるGimp-Print PPDファイルを必要としません。代わりに、使用中のPostScriptプリンタ用のPPDファイルを/usr/share/cups/model/へ直接コピーし(それらがまだmanufacturer-PPDsパッケージ内に存在していない場合)、使用中のプリンタに合わせて最適な設定を行うこともできます。

cupsパッケージ内のCUPS PPDファイル

cupsパッケージ内にある基本PPDファイルは、PostScript Level 1およびLevel 2プリンタに適応したFoomatic PPDファイルによって補足されます。

  • /usr/share/cups/model/Postscript-level1.ppd.gz

  • /usr/share/cups/model/Postscript-level2.ppd.gz

cups-driversパッケージ内のPPDファイル

通常、Foomaticプリンタフィルタのfoomatic-ripは、PostScript非対応プリンタ用のGhostscriptと組み合わせて使用されます。適切なFoomatic PPDファイルには、*NickName: ... Foomatic/Ghostscript driverおよび*cupsFilter: ... foomatic-ripのエントリがあります。これらのPPDファイルは、cups-driversパッケージ内にあります。

*NickName: ... Foomatic ... (recommended)」のエントリがあるFoomatic PPDファイルがプリンタモデルに一致していて、manufacturer-PPDsパッケージに、より適したPPDファイルが含まれていない場合は、Foomatic PPDファイルをYaSTに使用することをお勧めします。

cups-drivers-stpパッケージ内のGimp-Print PPDファイル

多くのPostScript非対応プリンタでは、foomatic-ripの代わりに、Gimp-Printから取得したCUPSフィルタrastertoprinterを使用できます。このフィルタと、適切なGimp-Print PPDファイルは、cups-drivers-stpパッケージ内に用意されています。Gimp-Print PPD ファイルは /usr/share/cups/model/stp/ 内に配置されていて、そのファイル内にエントリ*NickName: ... CUPS+Gimp-Printおよび*cupsFilter: ... rastertoprinterがあります。

manufacturer-PPDsパッケージ内にあるプリンタメーカからのPPDファイル

manufacturer-PPDsパッケージには、十分自由なライセンスに基づいてプリンタメーカから提供されたPPDファイルが含まれています。PostScriptプリンタは、プリンタメーカの適切なPPDファイルを使用して設定するのが妥当です。 このファイルを使用すると、そのPostScriptプリンタの機能すべてを活用できるためからです。YaSTは、次の各条件が満たされている場合、manufacturer-PPDsパッケージから得られたPPDファイルを優先します。

  • ハードウェア検出の際に決定されたベンダおよびモデルが、manufacturer-PPDsパッケージから得られたPPDファイル内にあるベンダおよびモデルと一致しています。

  • manufacturer-PPDsパッケージからのPPDファイルは、このプリンタモデルに対して、またはプリンタモデルに一致する*NickName: ... Foomatic/Postscript (recommended)エントリがあるFoomatic PPDファイルがある場合に適している唯一のPPDファイルになります。

したがって、YaSTは次のような状況では、manufacturer-PPDsパッケージから得られたどのPPDファイルも使用しません。

  • manufacturer-PPDsパッケージから得られたPPDファイルが、プリンタのベンダおよびモデルに一致していません。これは、 manufacturer-PPDsパッケージに同様のモデル用にPPDファイルが1つしかない場合、たとえば、一連のモデルの個々のモデルに別々のPPDファイルがないが、PPDファイル内にFunprinter 1000 seriesのような形式でモデル名が指定されている場合に発生します。

  • Foomatic PostScript PPDファイルは、推奨されていません。プリンタモデルは、PostScriptモードでは十分効率よく動作しないことがあるからです(たとえば、メモリが少なすぎるためにこのモードではプリンタの信頼性が低い、またはプリンタ内蔵プロセッサの能力が低いために動作が遅すぎる、などです)。デフォルトでは、プリンタがPostScriptをサポートしていないこともあります。たとえば、PostScriptサポートがオプションのモジュールという形でしか使用できない場合などです。

manufacturer-PPDsパッケージから得られたPPDファイルが特定のPostScriptプリンタに適しているが、上記で説明された理由によってYaSTがそのファイルを設定できない場合、YaST内で該当のプリンタモデルを手動で選択してください。