SSH 認証情報

  • リリースバージョン: Zurich
  • 更新日 2025年07月31日
  • 所要時間:16分
  • ディスカバリー、オーケストレーション、統合ハブ では、SSH 認証情報を使用して UNIX デバイスと Linux デバイスを探索し、Secure Shell (SSH) を介してコマンドを実行します。SSH コマンドは、ルート認証情報または sudo を使用してルート権限で実行する必要があります。SSH 秘密鍵認証情報はセキュリティを強化します。

    ルート権限の付与

    ルート権限を付与する前に、組織内のセキュリティチームとともにセキュリティポリシーとオプションを確認してください。

    次のいずれかの方法を使用すると、ユーザーはルート権限で SSH コマンドを実行することができます。
    • ディスカバリー、オーケストレーション、統合ハブ の他の認証情報を指定しますが、これらの認証情報のユーザーには sudo を使用してルート権限で特定のコマンドを実行する権限を付与します。これによって、限られた特権を安全に付与できます。ディスカバリー、オーケストレーション、統合ハブ では、must_sudo パラメーターを [true] (デフォルトは [false]) に設定した任意のプローブで sudo を使用します。ただし、sudo が動作するように各システムを設定する必要があります。これを行うには、visudo コマンドを使用して /etc/sudoers ファイルを編集します。
    • ルート認証情報を指定します。これらは明らかに最も強力な認証情報ですが、セキュリティの観点からは望ましくない場合があります。ディスカバリー、オーケストレーション、統合ハブ に任意の UNIX システムまたは Linux システムに対するルート認証情報がある場合は、それ以上構成する必要はありません。

    特権コマンド

    プラットフォームでは、MID サーバーで使用されるデフォルトの特権コマンドと、システムに他のコマンドを追加する機能が用意されています。sudo およびその他の特権コマンドの使用の詳細については、「MID サーバーの特権コマンド」を参照してください。

    SSH 秘密鍵認証情報タイプ

    注:
    ほとんどの場合、SSH 秘密鍵認証情報を使用する必要があります。これらは、2 者間の通信が傍受される MitM (中間者) 攻撃に対するものを含め、SSH パスワード認証情報よりも優れたセキュリティを提供します。
    フィールド 入力値
    名前 この認証情報にわかりやすい一意の名前。たとえば、SSH Atlanta と入力します。
    アクティブ これらの認証情報の使用を有効または無効にします。
    ユーザー名 UNIX または Linux のユーザー名を入力します。ユーザー名の先頭または末尾にはスペースを使用しないでください。プラットフォームでユーザー名の先頭または末尾のスペースが検出されると、警告が表示されます。
    パスワード UNIX または Linux のパスワードを入力します。[SSH 秘密鍵] タイプの認証情報でユーザー名にパスワードが必要な場合は、sudo パスワードを入力します。
    SSH パスフレーズ セキュアな SSH パスフレーズを入力します。このフィールドは、[SSH 秘密鍵] の認証情報にのみ使用できます。
    SSH 秘密鍵 セキュアな RSA、DSA、ECDSA、または ED25519 秘密キーを入力します。

    秘密鍵は、正しく暗号化されるように、適切な形式で入力する必要があります。秘密鍵は、文字列 -----BEGIN で始める必要があります。

    正しい形式の RSA 秘密鍵の例を次に示します。
    -----BEGIN RSA PRIVATE KEY-----
    MIIEogIBAAKCAQEAsEK65scPssPSobpDFMpR+Btv3MS4Q7NP8ERaStRZsh3IWz+x...
    ...7hrxV2dbSug60FahyupGWBGtPnXm5PaE2X5WPLuUj94ue48i1Fs
    -----END RSA PRIVATE KEY-----
    DSA キーの例を次に示します。
    -----BEGIN DSA PRIVATE KEY-----
    MIIEogIBAAKCAQEAsEK65scPssPSobpDFMpR+Btv3MS4Q7NP8ERaStRZsh3IWz+x...
    ...7hrxV2dbSug60FahyupGWBGtPnXm5PaE2X5WPLuUj94ue48i1Fs
    -----END DSA PRIVATE KEY-----
    ECDSA キーの例を次に示します。
    -----BEGIN EC PRIVATE KEY-----
    MIIEogIBAAKCAQEAsEK65scPssPSobpDFMpR+Btv3MS4Q7NP8ERaStRZsh3IWz+x...
    ...7hrxV2dbSug60FahyupGWBGtPnXm5PaE2X5WPLuUj94ue48i1Fs
    -----END EC PRIVATE KEY-----
    ED25519 秘密鍵の例を次に示します。
    -----BEGIN OPENSSH PRIVATE KEY-----
    b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAAAMwAAAAtzc2gtZW
    QyNTUxOQAAACAlYlqhcdwx8VQzZ5XaIC5ltQpjRr3lIlq/aE66mufmiwAAAKDQUtxZ0FLc
    WQAAAAtzc2gtZWQyNTUxOQAAACAlYlqhcdwx8VQzZ5XaIC5ltQpjRr3lIlq/aE66mufmiw
    AAAECuvsTkFUPdpTh0kw23i8TYx19qsFOZ3TRgowkkHBh6wSViWqFx3DHxVDNnldogLmW1
    CmNGveUiWr9oTrqa5+aLAAAAGmFiaGluYXYuc3V0YXJATVJFTUE3OTAzMkI3AQID
    -----END OPENSSH PRIVATE KEY-----
    注:
    ED25519 秘密鍵の場合は、OpenSSH SSH-keygen ユーティリティを使用して生成される OpenSSH キー形式のみがサポートされます。

    ServiceNow AI Platform では、OpenSSH ssh-keygen ユーティリティで生成された PEM 形式の秘密鍵をサポートしています。PuTTY によって生成された PPK キーを変換するには、次の手順に従います。

    • PuTTYGen で秘密鍵を開きます。
    • メニューから OpenSSH 形式でエクスポートします 変換 > OpenSSH キーをエクスポート.
    • 新しい OpenSSH キーを保存します。
    SSH 証明書

    RSA または ED25519 ベースの OpenSSH 証明書を入力します。証明書を入力すると、証明書ベースの認証に秘密キーが使用されます。この認証は OpenSSH 7.8 以降でサポートされています。

    認証情報エイリアス
    • フローデザイナーが別名を使用して接続と資格情報を管理できるようにします。エイリアスを使用することで、複数の環境を使用する場合に、複数の認証情報と接続情報プロファイルを構成する必要がなくなります。接続または認証情報が変更された場合、接続を使用するどのアクションも更新する必要はありません。詳細については、「接続と資格情報」を参照してください。
    • ワークフロー作成者は、個々の認証情報をオーケストレーションワークフロー内の任意のアクティビティに割り当てたり、オーケストレーションワークフロー内で同じアクティビティタイプが発生するたびに異なる認証情報を割り当てたりすることができます。
    外部の認証情報ストア 外部認証情報ストレージシステムを使用するには、このチェックボックスをオンにします。このオプションを選択すると、[ユーザー名] フィールドと [パスワード] フィールドが [認証情報 ID] フィールドに置き換えられます。現在サポートされている外部ストレージ システムは CyberArk だけです。
    MID サーバーを使用 使用可能な MID サーバーのリストから 1 つ以上の MID サーバーを選択します。このレコードで設定された認証情報は、このリストの MID サーバーで使用できます。このフィールドは、[適用先] フィールドで [特定の MID サーバー] を選択した場合のみ使用できます。
    適用先 これらの認証情報をネットワーク内の [すべての MID サーバー] または 1 つ以上の [特定の MID サーバー] に適用するかどうかを選択します。[MID サーバー] フィールドでこれらの認証情報を使用する MID サーバーを指定します。
    順序 プラットフォームがデバイスにログオンしようとするときにこの認証情報を試行する順序 (シーケンス)。番号が小さいほど、この認証情報がリストの上位に表示されます。多くの認証情報を使用する場合、またはログイン試行が 3 回失敗してセキュリティによってユーザーがロックアウトされた場合、認証情報の順序を確立します。すべての認証情報に同じ順序番号を設定した場合、または何も設定しない場合、ディスカバリーまたはオーケストレーションでは、認証情報をランダムな順序で試行します。

    SSH 認証情報タイプ

    次のフィールドは、SSH 認証情報フォームで使用できます。
    フィールド 説明
    名前 この認証情報のわかりやすい一意の名前を入力します。
    アクティブ これらの認証情報の使用を有効または無効にします。
    ユーザー名 [認証情報] テーブルに、作成するユーザー名を入力します。ユーザー名の先頭または末尾にはスペースを使用しないでください。プラットフォームでユーザー名の先頭または末尾のスペースが検出されると、警告が表示されます。CIM ディスカバリーの場合、ユーザーには admin ロールが必要です。
    パスワード パスワードを入力します。
    認証情報 ID 外部認証情報システム用に MID サーバーにアップロードされた JAR ファイルに外部認証情報用に設定された一意のキーを入力します。[認証情報 ID] フィールドには 40 文字の制限があります。

    このフィールドは、[外部の認証情報ストア] チェックボックスがオンになっている場合にのみ表示されます。

    認証情報エイリアス
    • フローデザイナーが別名を使用して接続と資格情報を管理できるようにします。エイリアスを使用することで、複数の環境を使用する場合に、複数の認証情報と接続情報プロファイルを構成する必要がなくなります。接続または認証情報が変更された場合、接続を使用するどのアクションも更新する必要はありません。詳細については、「接続と資格情報」を参照してください。
    • ワークフロー作成者は、個々の認証情報をオーケストレーションワークフロー内の任意のアクティビティに割り当てたり、オーケストレーションワークフロー内で同じアクティビティタイプが発生するたびに異なる認証情報を割り当てたりすることができます。サービスマッピングおよびディスカバリーパターンを使用してこの CI タイプに属していない CI を検出するために認証情報を使用するには、CI が属する CI タイプのテーブル名 (cmdb_ci_apache_web_server など) を入力します。
    外部の認証情報ストア 外部認証情報ストレージシステムを使用するには、このチェックボックスをオンにします。このオプションを選択すると、[ユーザー名] フィールドと [パスワード] フィールドが [認証情報 ID] フィールドに置き換えられます。外部の認証情報ストレージは、外部認証情報ストレージ プラグインをアクティブ化した場合にのみ使用できます。
    注:
    現在サポートされている外部ストレージ システムは CyberArk だけです。
    適用先

    これらの認証情報をネットワーク内の [すべての MID サーバー] または 1 つ以上の [特定の MID サーバー] に適用するかどうかを選択します。[MID サーバー] フィールドでこれらの認証情報を使用する MID サーバー を指定します。

    MID サーバーを使用 使用可能な MID サーバーのリストから 1 つ以上の MID サーバーを選択します。このレコードで設定された認証情報は、このリストの MID サーバーで使用できます。このフィールドは、[適用先] フィールドで [特定の MID サーバー] を選択した場合のみ使用できます。
    順序

    ディスカバリー がデバイスにログオンしようとするときに、この認証情報を試行する順序 (シーケンス)。番号が小さいほど、この認証情報がリストの上位に表示されます。多くの認証情報を使用する場合、またはログイン試行が 3 回失敗してセキュリティによってユーザーがロックアウトされた場合、認証情報の順序を確立します。すべての認証情報の順序番号が同じ (または順序番号がない) 場合、インスタンスは認証情報をランダムな順序で試行します。

    ディスカバリー、オーケストレーション、統合ハブ のルート権限が必要なコマンド

    次の例では、ユーザー名が Disco であることを前提とします。実際のユーザー名に置き換えて、コマンドのパスがシステム上のパスと一致することを確認してください。
    注:
    sudo コマンドに入力するパスワードがないため、sudo コマンドは秘密鍵認証情報と連携しません。解決策は、NOPASSWD オプションを sudo 構成に追加することです。たとえば、disco ALL=(root) NOPASSWD:/usr/sbin/dmidecode,/usr/sbin/lsof,/sbin/ifconfig と入力します。
    表 : 1. ルート権限が必要な UNIX コマンドおよび Linux コマンド
    コマンド 目的
    HP-UX
    adb CPU の速度とメモリーを収集します。
    • [/etc/sudoers 行の例]:Disco ALL=(root) /usr/bin/adb
    • [使用者]:ディスカバリー
    Linux および UNIX のすべてのバージョン
    chage 前回のパスワード変更日からパスワードを変更するまでの日数を変更します。
    • [/etc/sudoers 行の例]:Disco ALL=(root) /usr/bin/chage
    • [使用者]:オーケストレーションと 統合ハブ
    chpasswd ユーザーパスワードを変更します。
    • [/etc/sudoers 行の例]:Disco ALL=(root) /etc/chpasswd
    • [使用者]:オーケストレーションと 統合ハブ
    すべての Linux
    dmidecode マザーボード内に埋め込まれたシリアル番号など、ハードウェアに関するいくつかの情報を収集します。
    • [/etc/sudoers 行の例]:Disco ALL=(root) /sbin/dmidecode
    • [使用者]:ディスカバリー
    fdisk システム上のディスクおよびサイズ情報を収集します。
    • [/etc/sudoers 行の例]:Disco ALL=(root) /usr/bin/fdisk -l
    • [使用者]:ディスカバリー
    multipath MPIO のデバイス マッピングを収集します。
    • [/etc/sudoers 行の例]:Disco ALL=(root) /usr/bin/multipath -ll
    • [使用者]:ディスカバリー
    ls ディレクトリーの内容を収集します。
    • /etc/sudoers 行の例:Disco ALL=(root) /usr/bin/ls, /bin/ls
    • [使用者]:ディスカバリー
    Linux および Solaris
    dmsetup 低レベルのボリュームを調べます。
    • [/etc/sudoers 行の例]:
      • Disco ALL=(root) /usr/bin/dmsetup table *
      • Disco ALL=(root) /usr/bin/dmsetup ls
    • [使用者]:ディスカバリー
    UNIX のすべてのバージョン
    lsof プロセスとシステムへの接続との関係を決定します。
    • [/etc/sudoers 行の例]:Disco ALL=(root) /sbin/lsof
    • [使用者]:ディスカバリー
    oratab Oracle ホームおよび pfile を検索するために oratab ファイルへの読み取りアクセス権を付与します。
    • [/etc/sudoers 行の例]:N/A
    • [使用者]:ディスカバリー
    Solaris
    iscsiadm iSCSI IQNs を取得
    • [/etc/sudoers 行の例]:${sudo:iscsiadm list target -S}
    • [使用者]:ディスカバリー
    fcinfo ポートの WWPN を取得します。
    • [/etc/sudoers 行の例]:${sudo:fcinfo remote-port -sl -p $port}
    • [使用者]:ディスカバリー
    prtvtoc ディスク パーティションに関する情報をレポートします。
    • [/etc/sudoers 行の例]:Disco ALL=(root) /usr/bin/prtvtoc
    • [使用者]:ディスカバリー
    pfiles

    TCP 接続情報を収集する目的で使用されます。

    • /etc/sudoers 行の例:Disco ALL=(root) /usr/bin/pfiles

    • [使用者]:ディスカバリー

    pgrep

    pfiles を実行する特定の領域のプロセス ID をリスト化する目的で使用されます。

    • /etc/sudoers 行の例:Disco ALL=(root) /usr/bin/pgrep

    • [使用者]:ディスカバリー

    /usr/bin/ps 実行中のプロセスを一覧表示します。ルート アクセスで実行する代わりに、proc_owner ロールを追加します。
    • [/etc/sudoers 行の例]:Disco ALL=(root) /usr/bin/ps
    • [使用者]:ディスカバリー
    /usr/ucb/ps 実行中のプロセスを一覧表示します。ルート アクセスで実行する代わりに、proc_owner ロールを追加します。
    /usr/ucb/ps コマンドの使用は、Solaris 11 の時点で廃止となっています。ディスカバリーオーケストレーション統合ハブ では、Solaris のすべてのバージョンに対してこのコマンドを使用しなければならないため、Solaris 11 システムに ucb ユーティリティを手動でインストールする必要があります。手順については、「KB0564262」を参照してください。
    • [/etc/sudoers 行の例]:Disco ALL=(root) /usr/ucb/ps
    • [使用者]:ディスカバリー

    ディスカバリーとサービスマッピングに必要な特権コマンドのリストについては、「 Service Mapping commands requiring a privileged user」を参照してください。このリストには、組織内の Unix ベースのホストを検出およびマッピングするために昇格された権限が必要なコマンドが含まれています。

    ルート以外の認証情報のアクセス要件

    ディスカバリー にルート アクセスの認証情報を指定しない場合は、次のアクセス要件で認証情報を指定する必要があります。
    アプリケーション ファイルまたはディレクトリー 必要なアクセス権
    Apache httpd.conf 読み取り
    Hbase hbase-site.xml 読み取り
    JBoss jboss-service.xml 読み取り
    JBoss ホーム ディレクトリー 読み取り
    web.xml 読み取り
    MySQL my.cnf 読み取り
    NGINX nginx.conf 読み取り
    Oracle oratab 読み取り
    関連する pfile 読み取り
    Oracle リスナー lsnrctl 実行
    listener.ora 読み取り
    Tomcat catalina.jar 読み取り
    server.xml 読み取り
    web.xml 読み取り
    Unix /etc/*release 読み取り
    /etc/bashrc 読み取り
    /etc/profile 読み取り
    /proc/cpuinfo 読み取り
    /proc/vmware/sched/ncpus 読み取り
    /var/log/dmesg 読み取り
    APD ディレクトリー 読み取り
    WebSphere cell.xml 読み取り
    server.xml 読み取り
    serverindex.xml 読み取り