pkg set-publisher:1つ以上のクライアントキーと証明書ファイルが期限切れです。

pkg set-publisher:1つ以上のクライアントキーと証明書ファイルが期限切れです。

私は古いSolaris 11.3システムを持っています。ボックスには古いキーと証明書がありますが、期限切れです。これにより、pkg の更新が失敗します。

pkg update: One or more client key and certificate files have expired. Please
update the configuration for the publishers or origins listed below:

Publisher: solarisstudio
  Origin URI:
    https://pkg.oracle.com/solarisstudio/release/
  Certificate:
    /var/pkg/ssl/58e4e6a85dc87a50e56563042baedfba0d3622fc
  Key:
    /var/pkg/ssl/f348576808455b0fc8cda24323f97c79e1d96a9c

新しいキーと証明書があるのでインストールしようとしています。鍵と証明書をインストールするためにコマンドを再実行しました。

$ sudo pkg set-publisher \
   -k ~/pkg.oracle.com.key.pem \
   -c ~/pkg.oracle.com.certificate.pem \
   -G "*" -g https://pkg.oracle.com/solarisstudio/release solarisstudio

pkg set-publisher: One or more client key and certificate files have expired. Please
update the configuration for the publishers or origins listed below:

Publisher: solarisstudio
  Origin URI:
    https://pkg.oracle.com/solarisstudio/release/
  Certificate:
    /export/home/jwalton/pkg.oracle.com.certificate.pem
  Key:
    /export/home/jwalton/pkg.oracle.com.key.pem

これはOracleの一種の汚い冗談であるに違いありません。期限切れの鍵と証明書を提供しようとしましたが、期限切れの鍵と証明書が拒否されました。ため息をつく...

Oracleページですパッケージのインストールとアップデートのトラブルシューティングただし、鍵と証明書の更新に関する指示は提供していません。 (言い換えれば、私は地球上でこの問題を抱えている唯一の人であるに違いありません。)

ソースを手動で削除しようとしましたが、-G問題は解決しません。

$ pkg set-publisher -G https://pkg.oracle.com/solarisstudio/release/
pkg set-publisher: requires a publisher name
Usage:
        pkg set-publisher [-Ped] [-k ssl_key] [-c ssl_cert]
            [-g origin_to_add|--add-origin=origin_to_add ...]
            [-G origin_to_remove|--remove-origin=origin_to_remove ...]
            [-m mirror_to_add|--add-mirror=mirror_to_add ...]
            [-M mirror_to_remove|--remove-mirror=mirror_to_remove ...]
            [-p repo_uri] [--enable] [--disable] [--no-refresh]
            [--reset-uuid] [--non-sticky] [--sticky]
            [--search-after=publisher]
            [--search-before=publisher]
            [--search-first]
            [--approve-ca-cert=path_to_CA]
            [--revoke-ca-cert=hash_of_CA_to_revoke]
            [--unset-ca-cert=hash_of_CA_to_unset]
            [--set-property name_of_property=value]
            [--add-property-value name_of_property=value_to_add]
            [--remove-property-value name_of_property=value_to_remove]
            [--unset-property name_of_property_to_delete]
            [--proxy proxy to use]
            [publisher]

そして適切な属性を更新します。

$ sudo pkg set-publisher \
    --add-property-value key=~/pkg.oracle.com.key.pem solarisstudio \
    --add-property-value certificate=~/certificate=~/pkg.oracle.com.certificate.pem \
    solarisstudio

pkg set-publisher: One or more client key and certificate files have expired. Please ...

そして:

$ sudo pkg set-publisher --set-property key=~/pkg.oracle.com.key.pem solarisstudio \
    --set-property certificate=~/pkg.oracle.com.certificate.pem solarisstudio
pkg set-publisher: only one publisher name may be specified ...

鍵と証明書を更新する方法は?

ベストアンサー1

キー/証明書のペアは他のシステムで動作するので幸いです。

既存のサイト運営者を削除するには、次の手順に従ってください。

  pkg unset-publisher solarisstudio

またはサイト運営者固有のソース:

  pkg set-publisher -G https://pkg.oracle.com/solarisstudio/release solarisstudio

ただし、とにかく証明書は次のように確認できます。

  openssl x509 -in path_to_certificate_file -text

したがって、出力を見て、日付が正しいことを確認してください。出力が次のようになっていることを確認して、「古い」システムの証明書ファイルが「新しい」システムの証明書ファイルと同じであることを確認するのは興味深い場合があります。同じ)。

おすすめ記事