IDA

Floating Licenseについて

IDA ProのFloating licenseバージョンは、 Flexera FlexNet License Managerを使用して、ライセンスコンプライアンスを確保します。


ガイド

ライセンス管理ガイド

Flexeraの一般的なサーバー使用ガイド。

アップグレードガイド

すでにライセンスサーバーが構成されていて、新しいIDAバージョンにアップグレードする場合。

インストールガイド

サーバーを初めてインストールする場合(このガイドでは、Windowsへのサーバーのインストールについて説明しますが、 その一部は他のプラットフォームにも適用されます)。

トラブルシューティングガイド

ライセンスサーバーでのIDAの使用、またはインストール/構成中に問題が発生した場合。


ライセンスサーバー

Floating licenseバージョンには、ライセンスサーバーが必要です。 IDAを実行するワークステーションからTCP / IP経由でアクセスできるネットワーク内の専用マシンにインストールする必要があります。

ライセンスサーバーは、次の2つの部分で構成されています。

  1. ライセンスサーバーマネージャー
    「lmadmin」と呼ばれ、Flexeraによって提供されます。 FlexNetライセンスサーバーマネージャーをまだインストールしていない場合は、以下のリンクからダウンロードしてインストールしてください。 また、現在は非推奨のコンソール専用の「lmgrd」サーバーも提供しています。
    これは「lmadmin」の前身であり、その機能のサブセットのみを提供します。
  2. ベンダーデーモン
    「hexrays(.exe)」と呼ばれ、Hex-Raysによって提供されます。 このバイナリは、ライセンスサーバーマネージャーの実行可能ファイル「lmadmin(.exe)」(または「lmgrd(.exe)」)の横に配置する必要があります。
    別のパスを使用することもできますが、アクティベーション中に送信されたライセンスファイルのVENDOR行を編集する必要があります。

ダウンロードリンク

Platform lmadmin(推奨)
(WebベースのUIサーバー)
lmgrdバイナリ(コマンドラインベースのサーバー) Hex-Raysデーモン ユーティリティ
インタラクティブ
インストーラー
手動インストール用パッケージ
Microsoft® Windows® x86 インストーラ zipパッケージ lmgrd.exeバイナリ hexrays.exe
バイナリ
lmtools lmutil
Microsoft® Windows® x64 インストーラ zipパッケージ lmgrd.exeバイナリ hexrays.exe
バイナリ
lmtools lmutil FNLS *1
Linux x86 (LSB Certified™) インストーラ tgzパッケージ lmgrdバイナリ hexraysバイナリ lmutil
Linux x64 (LSB Certified™) インストーラ tgzパッケージ lmgrdバイナ hexraysバイナリ lmutil FNLS *1
Mac OS® X Universal (x86, x64) インストーラー(x64のみ) tgzパッケージ lmgrdバイナリ hexraysバイナリ lmutil
全て ライセンス管理ガイド
バージョン 11.17.2.0 11.16.6.0 11.16.2.0 11.16.6.0

*1 FNLSはFlexNetLicensing Serviceであり、VMUUIDにロックするときに必要です。

ライセンスサーバーとHex-Raysデーモンのインストール

lmadmin server

推奨されるサーバーは「lmadmin」です。これは、ライセンスサーバーを構成および管理するためのWebベースのUIを提供します。 まだインストールしていない場合(たとえば、他のFlexNetベースソフトウェアを使用している場合)、 上記のインストーラーをダウンロードして、サーバーマシンで実行してください。

v11.15以降、lmadminインストーラーはインストーラーエンジンに必要なJRE(Javaランタイム環境)をバンドルしなくなったため、 実行する前にJRE 1.6以降(OS Xの場合:JRE 1.7以降)がインストールされていることを確認してください。 詳細については、 ライセンス管理ガイドを参照してください。

'lmadmin'インストーラーは、Javaを使用するInstallAnywhereインストーラーです。 lmadminサーバー自体はJavaを使用または必要としません。lmadminをインストールした後、JREをアンインストールできます。

'lmadmin'サーバーを管理者(Windows)またはルート(Linux / OS X)として実行しないでください。これは推奨されません。 さらに、少なくともLinux / OS Xでは、組み込みHTTPサーバーは、rootとして実行されている場合、起動を拒否します。

インストール後の手順(共通)

  1. 上記の表からhexraysデーモンをダウンロードし、lmadmin実行可能ファイルの横に配置します。 Linux / OS Xで実行可能ファイル(「chmod + xhexrays」)としてマークします。
  2. 実行されていない場合はlmadminを起動します。
  3. Webブラウザーを開き、http://:8090/にアクセスします。
  4. 「管理」をクリックし、ユーザー「admin」とパスワード「admin」でログインします。 パスワードを変更要求された場合は、変更するか、次の手順を参照してください。
  5. 「ユーザー設定」をクリックし、「管理者」の横にある「編集」をクリックして、パスワードを安全な値に変更します (ユーザー名も変更できます)

ホストIDの取得

ライセンスサーバーとそのコンパニオン「hexrays(.exe)」がインストールされたので、 所有しているIDAライセンスに対応するFlexLMフローティングライセンスを要求します。

そのフローティングライセンスは、ライセンスサーバーが実行されるマシンにロックする必要があります (IDAが実行されるマシンではありません)。 初めてライセンスファイルをリクエストするには、ホストID(イーサネットMACアドレス)が必要です。

以下の方法でホストIDを取得できます。

  • lmadminの使用(推奨)
    1.lmadmin UIを開きます(ブラウザーでhttp:// servername:8090にアクセスします)
    2.[ Administration]タブ→[System Information]に移動します。
    3.[Ethernet Address]エントリから右側の文字列をコピーします(複数ある場合は最初の文字列を取得します)
  • lmutilの使用
    1. lmutilツールをダウンロードする
    2.コンソール/コマンドプロンプトから、「lmutillmhostid」を実行します。
    3.リストから最初のエントリをコピーします(引用符なし)
  • システムユーティリティの使用
    ・Windowsの場合:コマンドプロンプトから、「ipconfig / all | more」をクリックし、 物理イーサネットカードの「PhysicalAddress」値を取得します。
    ・Linux / OS Xの場合:コマンドプロンプトから、「ifconfig | more」を選択し、物理イーサネットカードの「ether」値を取得します。

*常に存在する物理カードのMACを選択してください。

VM UUIDへのロックを使用する場合は、 FNLSパッケージを ダウンロードし、 readme.txtの指示に従ってください。


ライセンスのアクティブ化とインストール

ホストIDを取得したら、IDAインストールからida.keyと一緒にアクティベーションページに送信します。

https://hex-rays.com/activate

.licファイル(プレーンテキストファイル)を電子メールで受け取ります。ディスクに保存し、次のように使用します。

  • lmadminを使用する場合:
    1.[管理]タブの[ベンダーデーモンの構成]に移動します。
    2.「ライセンスのインポート」をクリックして、保存された.licファイルを参照します。
    「hexrays」デーモンバイナリが適切な場所にインストールされていることを確認します (例:lmadminのディレクトリの「hexrays.exe」)。 別のパスを使用している場合は、送信する前に.licファイルのVENDOR行を編集してください。

    VENDOR hexrays <path_to_daemon>
  • lmgrdを使用する場合:
    -cスイッチを使用して、コマンドラインで.licファイルにファイル名を移動する必要があります。 詳細については、 ライセンス管理ガイドを参照してください。

注:複数の.keyファイルがあり、同じホストIDでそれらをアクティブ化する場合は、アクティブ化のためにそれぞれを送信します。 IDAのサーバーは、同じホストIDに対してアクティブ化されたすべてのライセンスを追跡し、それらのために結合された.licファイルを用意します。 つまり、サーバーから受け取った最新の.licファイルを使用するだけです。複数の.licファイルをインストールする必要はありません。

注:ホストIDが送信されると、データベースで修正され、support @ hex-rays.comへの手動リクエストによってのみ変更できます。 同じホストIDを入力して、.licファイルを再度要求することは可能です。


クライアントの構成

Windows

Windowsでは、IDAを実行してファイルを開くだけです。 最初の実行時に、ライセンスサーバーの名前を入力できるインタラクティブなダイアログが表示されます。 LinuxやOSXのように環境変数を設定することもできます。

Linux / OS X

IDAにライセンスサーバーの場所を通知するには、環境変数を使用できます。

  • export HEXRAYS_LICENSE_FILE=@servername

または設定ファイル:

  • echo "HEXRAYS_LICENSE_FILE=@servername" > ~/.flexlmrc

ファイアウォールの問題

ライセンスをチェックアウトするには、2つのTCP接続が必要です。1つはライセンスサーバーへ、もう1つはベンダーデーモンへの接続です。 ファイアウォールを使用している場合は、サーバーとクライアント(IDAワークステーション) の両方で両方の接続がブロックされていないことを確認する必要があります。

ライセンスサーバーが使用するデフォルトのポート範囲は27000〜27009です。 ベンダーデーモンはデフォルトで動的ポートを使用するため、実行するたびに変更されます。 ポートを変更または修正するには、Web UIを使用するか、.licファイルを編集します。

Web UI(lmadmin)

ライセンスサーバーのポートは、「サーバー構成」タブの「ライセンスサーバー構成」セクションで変更できます。 ベンダーデーモンのポートは、「ベンダーデーモンの構成」タブの「hexrays」デーモンの設定で変更できます。 変更を有効にするには、ベンダーデーモンやライセンスサーバーを再起動する必要がある場合があります。

.licファイル

ライセンスサーバーのポートは、SERVER行で指定できます。
例:SERVER this_host 001122334455 29000

ベンダーデーモンポートは、VENDOR行で指定できます。
例:VENDOR hexrays PORT = 30000

.licファイル(lmadminの場合)を再インポートするか、編集後にサーバーを再起動する(lmgrdの場合)必要があります。 ライセンスサーバーのポートをデフォルトから変更する場合は、IDAのサーバーパスで指定する必要があります(例:29000@servername)。


ライセンスのレンタル

オフライン使用の条件で、最大4320時間のライセンスのレンタルを許可します (これはサーバー管理者によって無効化または制限できます)。

IDA 7.2以降、レンタルはIDA(メニューヘルプ、フローティングライセンス)で直接実行できますが、 以下の手順を使用することもできます。

ライセンスをレンタルするには、 IDAを実行する前に、クライアントでlmborrowユーティリティを実行します。

  • lmutil lmborrow hexrays <enddate> [time]

enddateは、ライセンスがdd-mmm-yyyy形式で返される日付です。 時間はオプションであり、現地時間で24時間形式(hh:mm)で指定されます。 時間が指定されていない場合、借り入れ期間はその日の終わりまで続きます。

  • lmutil lmborrow hexrays 20-may-2014 13:00

注:ネットワークから切断する前に、必要なライセンスを確認してください。 たとえば、IDAでファイルを開き(IDAのライセンスをチェックアウトするため)、関数を逆コンパイルします( 逆コンパイラーのライセンスをチェックアウトするため)。 借用したライセンスのステータスを確認するには、次のコマンドを実行します。

  • lmutil lmborrow -status

オフライン作業の最後に借用したライセンスの早期返却を実行するには、システムをネットワークに再接続して、以下を実行します。

  • lmutil lmborrow -return [-c @servername] <feature>

ここで、featureは、「lmborrow-status」出力にリストされている借用した機能の名前です。

  • lmutil lmborrow -return -c @myserver IDASTAFW

lmutilを使用する代わりに、LM_BORROW環境変数を手動で設定することもできます。 詳細については、ライセンス管理ガイドを参照してください。

仮想マシンまたはクラウドでのライセンスサーバーの実行

ライセンスサーバーは仮想マシンで実行できます。 VMの移動またはクローン作成時にVMネットワークアダプタのMACアドレスが変更されることが多いため、お勧めしません。 ただし、一部のクラウドプロバイダーは、より永続的な識別子を提供しています。

Amazon EC2

ライセンスサーバーをAmazonEC2インスタンスにロックすることができます。 Elastic Network Interface(ENI)をインスタンスに接続し、そのMACアドレスをホストIDとして指定してください。 現時点では、EIPへのロックはサポートされていません。

他のプロバイダー

クラウドプロバイダーが永続的なMACアドレスまたはパブリックIPv4アドレスを提供している場合は、それをホストIDとして使用できます。 IPはゲストOSに直接公開され(NAT / VPNまたは同様の変換なし)、アダプターリストの最初である必要があります。

アクティベーションに使用する前に、グローバルIPがゲストに公開されていることを確認するために使用します。

  • lmutil lmhostid -internet

詳細については、ライセンス管理ガイド(第16章:クラウドコンピューティング環境でのライセンス)も参照してください。

オンプレミスVM(VMWare ESXi、Microsoft Hyper-Vなど)

FNLSパッケージを使用して、VMUUIDロックを有効にします。下記の出力をロックに使用してください。

  • lmutil lmhostid -uuid

コンテナ(Docker)

Dockerでのサーバーの実行はサポートされていません。

SSL GMOグローバルサインのサイトシール