dbedit

説明

Security Management ServerまたはDomain Management Server上の管理データベース($FWDIR/conf/objects_5_0.Cファイル)を編集します。skI3301を参照してください。

重要- Check Pointのサポートまたは研究開発部門から明示的な指示がない限り、このコマンドを実行しないでください。管理データベースの設定が壊れる可能性があります。

構文

dbedit -help

dbedit [-globallock] [{-local | -s <Management_Server>}] [{-u <Username> | -c <Certificate>}] [-p <Password>] [-f <File_Name> [ignore_script_failure] [-continue_updating]] [-r "<Open_Reason_Text>"] [-d <Database_Name>] [-listen] [-readonly] [-session]

注:

マルチドメインサーバでは、該当するドメイン管理サーバのコンテキストでこのコマンドを実行する必要があります。

mdsenv <IP Address or Name of Domain Management Server>

パラメータ

パラメータ

説明

-help

一般的なヘルプを表示します。

-globallock

dbeditユーティリティで作業すると、管理データベースが一部ロックされます。ユーザがSmartConsoleで同時にオブジェクトを設定すると、管理データベースで問題が発生します。

このオプションは、SmartConsole、またはdbeditユーザが管理データベースで変更できないようにします。

このオプションを指定すると、dbeditコマンドが管理データベースのコピー上で実行されます。dbeditコマンドで変更を加え、savedbコマンドを実行すると、dbeditユーティリティが実際の管理データベースに変更を保存し、コミットします。

-local

ユーザ名/パスワードを使用せずに、localhost(127.0.0.1)に接続します。

このパラメータを指定しない場合、dbeditユーティリティで接続方法を確認します。

-s <Management_Server>

Security Management Server を指定します。IPアドレスまたはHostNameで指定します。

このパラメータを指定しない場合、dbeditユーティリティで接続方法を確認します。

-u <Username>

dbeditユーティリティがSecurity Management Serverに接続するためのユーザ名を指定します。

-s <Management_Server>"パラメータを指定した場合、必須のパラメータです。

-c <Certificate>

dbeditユーティリティがSecurity Management Serverに接続するための、ユーザ証明書ファイルを指定します。

-s <Management_Server>"パラメータを指定した場合、必須のパラメータです。

-p <Password>

dbeditユーティリティがSecurity Management Serverに接続するためのユーザのパスワードを指定します。

"-s <Management_Server>"、"-u <Username>"パラメータを指定する場合は必須パラメータです。

-f <File_Name>

該当するdbedit内部コマンドを含むファイルを指定します(下記の「dbedit内部コマンド」セクションを参照してください):

  • create <object_type> <object_name>

  • modify <table_name> <object_name> <field_name> <value>

  • update <table_name> <object_name>

  • delete <table_name> <object_name>

  • print <table_name> <object_name>

  • quit

- 各コマンドは4096文字に制限されています。

ignore_script_failure

ファイル内のdbedit内部コマンドの実行を継続し、エラーを無視します。

"-f <File_Name>"パラメータを指定した場合に使用できます。

-continue_updating

一部のオブジェクトで操作が失敗しても、変更されたオブジェクトの更新を継続します(エラーを無視して、スクリプトの最後にupdate_allコマンドを実行します)。

"-f <File_Name>"パラメータを指定した場合に使用できます。

-r "<Open_Reason_Text>"

データベースを読み書き可能なモード(デフォルトモード)で開く理由を指定します。

-d <Database_Name>

dbeditユーティリティが接続するデータベースの名前を指定します(例えばmdsdb)。

-listen

dbeditユーティリティは、変更を「リッスン」します(このモードは、Check Pointサポートの支援を受け高度なトラブルシューティングを行う場合に使用します)。

dbeditユーティリティは、管理データベースに変更が生じたときに、その内部メッセージを表示します。

-readonly

管理データベースを読み取り専用で開くことを指定します。

-session

セッションの接続性。

dbedit内部コマンド

- 利用可能なテーブル、クラス名(オブジェクト・タイプ)、属性、および値を確認するには、データベース・ツール(GuiDBEdit Tool)を使用して管理サーバに接続します(sk13009 を参照)。

コマンド

解説、構文、例文

-h

説明:

一般的なヘルプを表示します。

構文:

dbedit> -h

-q

 

quit

説明:

dbeditを終了します。

構文:

dbedit> -q

dbedit> quit [-update_all | -noupdate]

例:

  • ユーティリティを終了し、残りの修正オブジェクトをコミットします(インタラクティブモード)。

    dbedit> quit

  • ユーティリティを終了し、残りの変更されたオブジェクトをすべて更新します。

    dbedit> quit -update_all

  • ユーティリティを終了し、変更した内容をすべて破棄します。

    dbedit> quit -no_update

update

説明:

指定したオブジェクトを指定したテーブルに保存します (例: "network_objects", "services", "users")。

構文:

dbedit> update <table_name> <object_name>

例:

オブジェクトMy_Serviceを servicesテーブルに保存する:

dbedit> update services My_Service

update_all

説明:

変更したオブジェクトをすべて保存します。

構文:

dbedit> update_all

_print_set

説明:

指定されたテーブル (例えば "network_objects", "services", "users") から、指定されたオブジェクトを$FWDIR/conf/objects_5_0.Cファイル (属性のセット) に表示されるように表示します。

構文:

dbedit> _print_set <table_name> <object_name>

例:

network_objectsテーブルからMy_Objオブジェクトを表示する:

dbedit> print network_objects My_Obj

print

説明:

指定されたオブジェクトの属性の一覧を指定されたテーブルから出力します (例: "network_objects", "properties", "services", "users")。

構文:

dbedit> print <table_name> <object_name>

例:

  • network_objectsテーブルからオブジェクトMy_Obj を表示します("Network Objects" の項を参照):

    dbedit> print network_objects my_obj

  • (「グローバル・プロパティ」の)propertiesテーブルからオブジェクトfirewall_propertiesを印刷する:

    dbedit> print properties firewall_properties

printxml

説明:

指定されたオブジェクトの属性のリストを、指定のテーブルからXML形式で出力します (例: "network_objects"、"properties"、"services"、"users")。

Management Serverの設定をXMLファイルにエクスポートして、後で外部の自動システムで使用することができます。

構文:

dbedit> printxml <table_name> [<object_name>]

例:

  • network_objectsテーブルからMy_Objオブジェクトを表示する:

    dbedit> printxml network_objects my_obj

  • (「グローバル・プロパティ」の)propertiesテーブルからオブジェクトfirewall_propertiesを印刷する:

    dbedit> printxml properties firewall_properties

printbyuid

説明:

UIDで指定されたオブジェクトの属性を表示します($FWDIR/conf/objects_5_0.Cファイルでは、オブジェクトの先頭に "chkpf_uid ({...})"として表示されます)。

構文:

dbedit> printbyuid {object_id}

例:

指定されたUIDを持つオブジェクトの属性を表示します。

dbedit> printbyuid {D3833F1D-0A58-AA42-865F-39BFE3C126F1}

query

説明:

指定されたテーブル内のすべてのオブジェクトを表示します。

オプションとして、特定の属性と値を持つオブジェクトを検索することができます。検索は "query <table_name>"の後にカンマで区切って行います (<attribute>'<value>'の間にスペースは使用できません)。

構文:

dbedit> query <table_name> [ , <attribute>='<value>' ]

例:

  • テーブルユーザ内のすべてのオブジェクトを印刷:

    dbedit> query users

  • network_objectsテーブル内の、管理サーバとして定義されているすべてのオブジェクトを表示します:

    dbedit> query network_objects, management='true'

  • sshという名前を持つテーブル・サービス内のすべてのオブジェクトを表示する:

    command_sdbedit> query services, name='ssh'

  • ポート22を持つテーブル・サービス内のすべてのオブジェクトを表示する:

    dbedit> query services, port='22'

  • IPアドレス10.10.10.10を持つすべてのオブジェクトを印刷する:

    dbedit> query network_objects, ipaddr='10.10.10.10'

whereused

説明:

指定されたオブジェクトがデータベース内のどこで使用されているかを確認します。

このオブジェクトが使用されている場所の数とその場所の関連情報を表示します。

構文:

dbedit> whereused <table_name> <object_name>

例:

My_Objオブジェクトが使用されている場所をチェックする:

dbedit> whereused network_objects My_Obj

create

説明:

指定されたタイプ(デフォルト値)のオブジェクトをデータベースに作成します。

オブジェクトの名前には制限が適用されます。

  • オブジェクト名は最大100文字までです。

  • オブジェクト名には、ASCII文字、数字、ダッシュのみ使用できます。

  • 予約語はManagement Serverによってブロックされます(sk40179参照)。

構文:

dbedit> create <object_type> <object_name>

例:

tcp_service型(デフォルト値)のサービス・オブジェクトMy_Serviceを作成する:

dbedit> create tcp_service my_service

delete

説明:

指定されたテーブルからオブジェクトを削除します。

構文:

dbedit> delete <table_name> <object_name>

例:

テーブルservicesからサービスオブジェクトMy_Serviceを削除します:

dbedit> delete services my_service

modify

説明:

管理データベースの指定されたテーブル(例: "network_objects"、"services"、"users")の指定されたオブジェクトの指定された属性の値を変更します。

構文:

dbedit> modify <table_name> <object_name> <field_name> <value>

例:

  • servicesテーブルのMy_Serviceオブジェクトの色を赤に変更する:

    dbedit> modify services My_Service color red

  • オブジェクトMyObjにコメントを追加する:

    dbedit> modify network_objects MyObj comments "Created by fwadmin with dbedit"

  • テーブル・プロパティのグローバル・プロパティike_use_largest_possible_subnetsの値をfalse に設定する:

    dbedit> modify properties firewall_properties ike_use_largest_possible_subnets false

  • セキュリティゲートウェイMy_FW上に新しいインタフェースを作成し、その属性を変更します - IPアドレス/マスクを設定し、"Element Index"=3のインタフェースでアンチスプーフィングを有効にします(データベースツール(GuiDBEditツール)でオブジェクトMy_FWの属性を確認します(sk13009 を参照):

    dbedit> addelement network_objects My_FW interfaces interface

    dbedit> modify network_objects My_FW interfaces:3:officialname NAME_OF_INTERFACE

    dbedit> modify network_objects My_FW interfaces:3:ipaddr IP_ADDRESS

    dbedit> modify network_objects My_FW interfaces:3:netmask NETWORK_MASK

    dbedit> modify network_objects My_FW interfaces:3:security:netaccess:access specific

    dbedit> modify network_objects My_FW interfaces:3:security:netaccess:allowed network_objects:group_name

    dbedit> modify network_objects My_FW interfaces:3:security:netaccess:perform_anti_spoofing true

    dbedit> modify network_objects MyObj FieldA LINKSYS

  • 所有オブジェクトMyObjでフィールドBの値をNewValに変更する:

    dbedit> modify network_objects MyObj FieldA:FieldB NewVal

  • リンクされたオブジェクトMyObjでフィールドAの値をBから Cに変更する:

    dbedit> modify network_objects MyObj FieldA B:C

lock

説明:

指定されたテーブル (例: "network_objects"、"services"、"users") の指定されたオブジェクト (管理者) を、他のユーザが変更できないようにロックします。

例えば、リモートコンピュータからadmin1でこの管理サーバに接続し、オブジェクトをロックした場合、admin2で接続することはできますが、admin1がロックを解除するまで、ロックされたオブジェクトを変更することはできません。

構文:

dbedit> lock <table_name> <object_name>

例:

データベースのservicesテーブルにあるMy_Service_Objオブジェクトをロックします:

dbedit> lock services My_Service_Obj

addelement

説明:

指定されたテーブルの指定されたオブジェクトに、指定された複数のフィールド/コンテナ(指定された値を持つ)を追加します。

構文:

dbedit> addelement <table_name> <object_name> <field_name> <value>

例:

  • テーブルldapのオブジェクトMy_Objの複数フィールドReadに、値Organizationを持つエレメントBranchObjectClassを追加する:

    dbedit> addelement ldap My_Obj Read:BranchObjectClass Organization

  • テーブルservicesのサービスグループMyServicesGroupにサービスMyServiceを追加する:

    dbedit> addelement services MyServicesGroup '' services:MyService

  • テーブルnetwork_objects のネットワーク・グループMyNetworksGroupにネットワークMyNetwork を追加します:

    dbedit> addelement network_objects MyNetworksGroup '' network_objects:MyNetwork

rmelement

説明:

指定されたテーブルの特定のオブジェクトから、特定の複数フィールド/コンテナ(指定された値を持つ)を削除します。

構文:

dbedit> rmelement <table_name> <object_name> <field_name> <value>

例:

  • サービスグループMyServicesGroupからサービスMyServiceをテーブルservicesから削除する:

    dbedit> rmelement services MyServicesGroup '' services:MyService

  • テーブルnetwork_objects からネットワーク・グループMyNetworksGroupからネットワークMyNetworkを削除します:

    dbedit> rmelement network_objects MyNetworksGroup '' network_objects:MyNetwork

  • テーブルldapのオブジェクトMy_Objの複数フィールドReadから、値Organizationを持つエレメントBranchObjectClassを削除します:

    dbedit> rmelement ldap my_obj Read:BranchObjectClass Organization

rename

説明:

指定されたテーブルの特定のオブジェクトの名前を変更します。

構文:

dbedit> rename <table_name> <object_name> <new_object_name>

例:

network_objectsテーブルのネットワーク・オブジェクトlondonの名前をchicagoに変更します:

dbedit> rename network_objects london chicago

rmbyindex

説明:

エレメントのインデックスに基づいてコンテナからエレメントを削除します。

構文:

dbedit> rmbyindex <table_name> <object_name> <field_name> <index_number>

例:

network_objectsテーブルのエレメント・インデックス1のコンテナlog_serversから、エレメントbackup_log_serversを削除する:

dbedit> rmbyindex network_objects g log_servers:backup_log_servers 1

add_owned_remove_name

説明:

指定された所有オブジェクトのフィールド(またはコンテナ)に、所有オブジェクトを追加(およびその名前を削除)します。

構文:

dbedit> add_owned_remove_name <table_name> <object_name> <field_name> <value>

例:

所有オブジェクト・フィールド(またはコンテナ)my_external_productsに所有オブジェクトMy_Gatewayを追加(およびその名前を削除)します:

dbedit> add_owned_remove_name network_objects My_Gateway additional_products owned:my_external_products

is_delete_allowed

説明:

特定のオブジェクトが指定されたテーブルから削除可能かどうか確認します(他のオブジェクトで使用されている場合は削除できません)。

構文:

dbedit> is_delete_allowed <table_name> <object_name>

例:

dbedit> is_delete_allowed network_objects MyObj

オブジェクトMyObj を network_objects テーブルから削除できるかどうかを調べます:

set_pass

説明:

特定のユーザに対して、指定したパスワードを設定します。

注:

  • パスワードは、最低4文字、最大50文字までです。

  • このコマンドでは、管理者のパスワードを変更することはできません。

構文:

dbedit> set_pass <Username> <Password>

例:

ユーザabcdにパスワード1234を設定:

dbedit> set_pass abcd 1234

savedb

説明:

データベースを保存します。このコマンドは、データベースがグローバルにロックされている時("dbedit -globallock"コマンドでdbeditユーティリティを起動した時)だけ実行できます。

構文:

dbedit> savedb

savesession

説明:

セッションを保存します。このコマンドは、dbeditユーティリティをセッションモード("dbedit -session"コマンドで)で起動したときのみ実行できます。

構文:

dbedit> savesession